-
Notifications
You must be signed in to change notification settings - Fork 87
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Issue Type
Bug Report
Description
Running mcpm ls on Goose's default configuration leads to a Pydantic error due to the way that the default built-in extensions for Goose are configured. MCPM expects a STDIOServerConfig.command or RemoteServerConfig.url, but Goose CLI does not use either of these keys.
Steps to Reproduce
- Run
mcpm lsusing Goose-CLI provider - Observe pydantic error
Additional Information
Error:
➜ ~ mcpm ls
Working on Active Client: goose-cli
MCP servers installed in goose-cli:
Active Servers:
--------------------------------------------------
Traceback (most recent call last):
File "/opt/homebrew/bin/mcpm", line 8, in <module>
sys.exit(main())
~~~~^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/click/core.py", line 1442, in __call__
return self.main(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/click/core.py", line 1363, in main
rv = self.invoke(ctx)
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/click/core.py", line 1830, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/click/core.py", line 1226, in invoke
return ctx.invoke(self.callback, **ctx.params)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/click/core.py", line 794, in invoke
return callback(*args, **kwargs)
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/mcpm/commands/list.py", line 64, in list
print_server_config(client_manager.from_client_format(server_name, server_info))
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/mcpm/clients/managers/goose.py", line 203, in from_client_format
return TypeAdapter(ServerConfig).validate_python(server_data)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "/opt/homebrew/Cellar/mcpm/1.13.5/libexec/lib/python3.13/site-packages/pydantic/type_adapter.py", line 421, in validate_python
return self.validator.validate_python(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
object,
^^^^^^^
...<5 lines>...
by_name=by_name,
^^^^^^^^^^^^^^^^
)
^
pydantic_core._pydantic_core.ValidationError: 2 validation errors for union[STDIOServerConfig,RemoteServerConfig]
STDIOServerConfig.command
Field required [type=missing, input_value={'name': 'computercontrol... 300, 'type': 'builtin'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missing
RemoteServerConfig.url
Field required [type=missing, input_value={'name': 'computercontrol... 300, 'type': 'builtin'}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.11/v/missingThe key that mcpm is failing on:
computercontroller:
bundled: true
display_name: Computer Controller
enabled: false
name: computercontroller
timeout: 300
type: builtinMetadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working