Note: While the text below is AI generated, it was done so at my direction due to a bug I am personally experiencing; it is not an automated detector or reporter.
Summary
Every tool call against the Todoist MCP server fails before it runs, with a client-side schema validation error. The tool's outputSchema declares "$schema": "http://json-schema.org/draft-07/schema#", but the connecting client's default validator only supports JSON Schema 2020-12 and rejects the draft-07 dialect tag outright. The server is unreachable through this client until the schema is fixed.
Environment
- MCP client: Claude (Cowork mode, desktop app), MCP tool-loading layer
- Server: Todoist MCP (
mcp__todoist__* tools, connected via the Claude Connectors Directory / official Todoist connector)
- Date observed: 2026-08-17
Steps to reproduce
- Connect the Todoist MCP server to a client that validates
outputSchema against JSON Schema 2020-12 by default.
- Call any Todoist tool, e.g.
find-tasks, find-sections, get-overview, search, or user-info.
- The call fails immediately, without reaching the server logic.
Expected behavior
The tool call executes normally and returns task/project/label data.
Actual behavior
Every tool called returns the same class of error before any request is sent, e.g.:
Error: Tool 'find-tasks' has an invalid outputSchema: JSON Schema declares an unsupported dialect ("$schema": "http://json-schema.org/draft-07/schema#"). The default validator supports JSON Schema 2020-12 only; pass a pre-configured Ajv instance to AjvJs
The same error, with the tool name substituted, was reproduced on at least: find-tasks, find-sections, get-overview, search, user-info. This suggests every tool in the server shares the same (or a similarly generated) outputSchema header and is equally affected — the server is unusable through this client, not just one tool.
Suspected cause
The server's tool outputSchema objects include an explicit "$schema": "http://json-schema.org/draft-07/schema#" field. MCP has been moving toward standardizing on JSON Schema 2020-12 as the default/expected dialect for embedded schemas (tool inputSchema/outputSchema, elicitation requestedSchema) — see modelcontextprotocol/modelcontextprotocol SEP-1613. Clients built against that expectation validate the dialect tag strictly and reject draft-07, even though the actual schema shape may be otherwise compatible.
Suggested fix
Either:
- Remove the explicit
"$schema": "http://json-schema.org/draft-07/schema#" field from tool outputSchema definitions (letting it default), or
- Update the schemas to declare/target JSON Schema 2020-12 (
"$schema": "https://json-schema.org/draft/2020-12/schema"), or
- Regenerate the schemas with a 2020-12-compliant schema generator/version.
Impact
Total: no Todoist tool is callable through an affected client until this is fixed. There is no workaround on the client side — retrying does not help, since the failure happens during schema validation before the request is dispatched.
Note: While the text below is AI generated, it was done so at my direction due to a bug I am personally experiencing; it is not an automated detector or reporter.
Summary
Every tool call against the Todoist MCP server fails before it runs, with a client-side schema validation error. The tool's
outputSchemadeclares"$schema": "http://json-schema.org/draft-07/schema#", but the connecting client's default validator only supports JSON Schema 2020-12 and rejects the draft-07 dialect tag outright. The server is unreachable through this client until the schema is fixed.Environment
mcp__todoist__*tools, connected via the Claude Connectors Directory / official Todoist connector)Steps to reproduce
outputSchemaagainst JSON Schema 2020-12 by default.find-tasks,find-sections,get-overview,search, oruser-info.Expected behavior
The tool call executes normally and returns task/project/label data.
Actual behavior
Every tool called returns the same class of error before any request is sent, e.g.:
The same error, with the tool name substituted, was reproduced on at least:
find-tasks,find-sections,get-overview,search,user-info. This suggests every tool in the server shares the same (or a similarly generated)outputSchemaheader and is equally affected — the server is unusable through this client, not just one tool.Suspected cause
The server's tool
outputSchemaobjects include an explicit"$schema": "http://json-schema.org/draft-07/schema#"field. MCP has been moving toward standardizing on JSON Schema 2020-12 as the default/expected dialect for embedded schemas (toolinputSchema/outputSchema, elicitationrequestedSchema) — seemodelcontextprotocol/modelcontextprotocolSEP-1613. Clients built against that expectation validate the dialect tag strictly and reject draft-07, even though the actual schema shape may be otherwise compatible.Suggested fix
Either:
"$schema": "http://json-schema.org/draft-07/schema#"field from tooloutputSchemadefinitions (letting it default), or"$schema": "https://json-schema.org/draft/2020-12/schema"), orImpact
Total: no Todoist tool is callable through an affected client until this is fixed. There is no workaround on the client side — retrying does not help, since the failure happens during schema validation before the request is dispatched.