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.
rename_document,archive_documentandrestore_documentdeclare anoutputSchemathat is a bareoneOfwith notype.MCP types a tool's
outputSchemaas an object schema. A client that validates the advertisement rejects it — and rejects the wholetools/listresponse rather than the offending tool, so every tool goes unavailable, not the three that are malformed. Claude Code reports:The health line leads with
Connectedand buries the reason, so the failure reads as a healthy server.Both branches of each
oneOfare already object schemas. The constraint belongs to the array rather than to those three entries: any tool added later with aoneOfoutput takes the advertisement dark the same way.