Fix guides · check schema.required

Make "required" match "properties" in tool schemas

Every name in "required" must be declared in "properties", and "required" must be an array of strings.

7 of 15,537 reachable MCP servers (0%) have this issue today.

Why it matters

A required argument the schema never describes is one the model cannot fill in correctly. Strict validators (OpenAI-style function calling, several gateways) reject the whole tool definition.

Before

{ "type": "object", "properties": { "q": { "type": "string" } }, "required": ["query"] }

After

{ "type": "object", "properties": { "query": { "type": "string" } }, "required": ["query"] }

Check your server

Paste your endpoint at /check, or run it in CI:

pipx run glimind check https://your-server.example.com/mcp --min-grade B

Related

Feedback
Help us improve