Skip to content

Documentation: Feature Spec for mcp-config-set Has Incorrect JSON Schema Definition #430

@rrajpuro

Description

@rrajpuro

The current feature specification for mcp-config-set does not match the actual tool implementation in the MCP server code.

### 5. mcp-config-set
**Purpose**: Set configuration values for MCP servers.
**Parameters**:
- `server` (required): Name of the MCP server to configure
- `key` (required): Configuration key to set
- `value` (required): Configuration value to set (can be string, number, boolean, or object)
**Example Usage**:
```json
{
"name": "mcp-config-set",
"arguments": {
"server": "filesystem",
"key": "allowed_paths",
"value": ["/home/user/documents", "/tmp"]
}
}
```

This implies a key/value-style configuration update.
The MCP server implementation expects the following schema:

func (g *Gateway) createMcpConfigSetTool(_ *clientConfig) *ToolRegistration {
tool := &mcp.Tool{
Name: "mcp-config-set",
Description: `Set configuration for an MCP server.
The config object will be validated against the server's config schema. If validation fails, the error message will include the correct schema.`,
InputSchema: &jsonschema.Schema{
Type: "object",
Properties: map[string]*jsonschema.Schema{
"server": {
Type: "string",
Description: "Name of the MCP server to configure",
},
"config": {
Type: "object",
Description: "Configuration object for the server. This will be validated against the server's config schema.",
},
},
Required: []string{"server", "config"},
},
}
return &ToolRegistration{
Tool: tool,
Handler: withToolTelemetry("mcp-config-set", configSetHandler(g)),
}
}

The tool expects:

server (required)
config (required, object validated against the server's config schema)

There is no support for key and value parameters.

Example input:

{
  "server": "filesystem",
  "config": {
     "allowed_paths": ["/home/user/documents", "/tmp"] 
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions