githubnext / githubnext/chopin
tools/list is rejected: three outputSchemas declare a bare oneOf with no type
- Lingua principale
- TypeScript
- Stelle
- 351
- Fork
- 19
- Merge medio
- 8h 57m
- PR unite (30g)
- 87
Descrizione
`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:///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.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia individuando le dichiarazioni outputSchema di tools/list per rename_document, archive_document e restore_document, quindi esamina come viene assemblato l'array outputSchema. Assicurati che l'annuncio rimanga valido quando è presente un outputSchema oneOf e verifica che tools/list accetti questi strumenti e le future voci oneOf.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- typescript
- Ambito
- api, backend-api-design
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 72/100