-
Notifications
You must be signed in to change notification settings - Fork 330
Description
Issue:
The client.go does not resolve placeholders defined in the run -> command section of server.yaml when launching the MCP server and passes them over as command line arguments as is. As a result, commands like task build -- --tools [server-name]
could fail due to unresolved values , if server relies on the parameters to launch.
I noticed a temporary fix for Anthropic's filesystem server in there, but that very specific and is not helping other servers in a similar scenario
mcp-registry/internal/mcp/client.go
Lines 170 to 173 in 7d815fa
// TODO(dga): Temporary fix | |
if arg == "{{filesystem.paths|volume-target|into}}" { | |
return "." | |
} |
I assume there is a plan for addressing this more properly?
Suggestion:
I believe this issue could be addressed by resolving the placeholders to the default
values defined in the parameters section (or to the example
attribute if no default is provided). This would ensure that MCP servers receive concrete values when launched by client.go and developers could adjust values in the .default section of the parameters in the server.yaml , avoiding errors due to unresolved placeholders.
Creating this ticket to track the issue, in case it's planned to be addressed in a future fix.