Skip to content

tools/list is rejected: three outputSchemas declare a bare oneOf with no type #154

Description

@sethfitz

rename_document, archive_document and restore_document declare an outputSchema that is a bare oneOf with no type.

MCP types a tool's outputSchema as an object schema. A client that validates the advertisement rejects it — and rejects the whole tools/list response rather than the offending tool, so every tool goes unavailable, not the three that are malformed. Claude Code reports:

chopin: https://<host>/mcp (HTTP) - ! Connected · tools fetch failed
Invalid input (at tools.3.outputSchema.type)

The health line leads with Connected and buries the reason, so the failure reads as a healthy server.

Both branches of each oneOf are already object schemas. The constraint belongs to the array rather than to those three entries: any tool added later with a oneOf output takes the advertisement dark the same way.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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