Repository navigation
Description
Describe the bug
Suppose you have an MCP server that has mcp start as required CLI arguments. Perhaps the MCP server is a CLI tool package with multiple purposes, not just MCP and mcp start invokes the MCP server subroutine.
I believe these would be expressed as positional arguments with a value. But value_hint is required.
registry/docs/server-json/schema.json
Lines 233 to 243 in f6fa98c
| "oneOf": [ | |
| { | |
| "type": "object", | |
| "required": [ | |
| "type", | |
| "value_hint" | |
| ], | |
| "properties": { | |
| "type": { | |
| "const": "positional" | |
| }, |
VS Code appears to prefer value and tolerate a missing value_hint:
https://github.com/microsoft/vscode/blob/1ea38ea6831a8c05cb071e9219f11ad546b1b748/src/vs/platform/mcp/common/mcpManagementService.ts#L275-L281
So perhaps value_hint can become optional? Or maybe we need a ConstantArgument which has a required value and type = constant but no name or runtime_hint?
To Reproduce
Here is a sample server.json that shows the clunkiness.
{
"description": "A sample MCP server using the MCP C# SDK. Generates random numbers and random weather.",
"name": "io.github.joelverhagen/Knapcode.SampleMcpServer",
"packages": [
{
"registry_name": "nuget",
"name": "Knapcode.SampleMcpServer",
"version": "0.4.0-beta",
"package_arguments": [
{
"type": "positional",
"value_hint": "mcp",
"value": "mcp"
},
{
"type": "positional",
"value_hint": "start",
"value": "start"
}
]
}
],
"version_detail": {
"version": "0.4.0-beta"
}
}Expected behavior
There should be clear guidance on fixed (non-input) positional arguments.
Activity
[-]Unclear schema for fixed CLI arguments[/-][+]Unclear schema for fixed (constant) CLI arguments[/+]Make value_hint optional to allow constant positional arguments (#172)
Make value_hint optional to allow constant positional arguments (#172)
Make value_hint optional to allow constant positional arguments (#172)