Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

MCP spec conformance: 5 requirements violated (via @hasmcp/mcp-spec-test) — spec 2025-11-25

Aperta
#756 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
python
Ambito
api, backend

Direzione di ricerca

Inizia da examples/qr-server/server.py e riproduci il comando segnalato utilizzando le istruzioni Docker o npx con la spec version 2025-11-25. Verifica se il processo termina prima del MCP handshake e determina se si tratta di un problema effettivo del server o di un artefatto dell’ambiente, della rete o dello script remoto di uv. Il lavoro è completato quando il server completa l’handshake e i fallimenti di conformance sono risolti o confermati come falsi positivi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Running the automated @hasmcp/mcp-spec-test conformance suite against the examples/qr-server/server.py stdio server, this time pinned to spec revision 2025-11-25, found the same underlying issue as with the newer revision: the server process exits before completing the MCP handshake. Under this revision that surfaces as 5 failed requirements (versus 10 under 2026-07-28), since fewer handshake-dependent cases apply at this revision. As with the other report, this may be an environment/dependency artifact of running uv run against a remote script URL inside the test container rather than a genuine server bug — flagging for a maintainer to confirm.

Conformance report

MCP 2025-11-25 conformance report

Verdict: not conformant — 5 requirements violated.

Target uv run https://raw.githubusercontent.com/modelcontextprotocol/ext-apps/HEAD/examples/qr-server/server.py --stdio
Transport stdio
Revision tested 2025-11-25
Revisions supported 2026-07-28, 2025-11-25
Passed 2
Failed 5
Not verified 13
Cases applied 20
Duration 10394ms
Generated 2026-08-24T09:21:52.168Z
Tool @hasmcp/mcp-spec-test 0.1.1

Failed (5)

the server deviates from the spec here

Version negotiation
  • a request with no version at all is served on the default
    a version-less request must be served, got 0: {"_raw":"server exited"}

0 !== 200

  • an unsupported version offered at the handshake is refused or downgraded, not echoed
    expected either an error or a protocolVersion, got {"_raw":"server exited"}
Official SDK interop
  • a stock official-SDK client completes the handshake
    MCP error -32000: Connection closed
  • the handshake settles on a revision inside the supported window
    initialize must return a protocolVersion, got undefined
  • a stock official-SDK client can list tools
    MCP error -32000: Connection closed

Not verified (13)

skipped; a skip is not a pass

Capability methods
  • tools/list returns schema-conformant tools
    cannot determine what the target supports — initialize returned no result (status 0)
  • tools/call on an unknown tool is an error, not a crash
    cannot determine what the target supports — initialize returned no result (status 0)
  • tools/call returns a schema-conformant CallToolResult
    cannot determine what the target supports — initialize returned no result (status 0)
  • prompts/list returns schema-conformant prompts
    cannot determine what the target supports — initialize returned no result (status 0)
  • prompts/get returns messages with a role and content
    cannot determine what the target supports — initialize returned no result (status 0)
  • resources/list returns schema-conformant resources
    cannot determine what the target supports — initialize returned no result (status 0)
  • resources/templates/list returns schema-conformant templates
    cannot determine what the target supports — initialize returned no result (status 0)
  • resources/read returns contents for every sampled resource
    cannot determine what the target supports — initialize returned no result (status 0)
  • resources/read on an unknown uri is an error
    cannot determine what the target supports — initialize returned no result (status 0)
  • following nextCursor terminates and does not repeat a page
    cannot determine what the target supports — initialize returned no result (status 0)
  • an invalid pagination cursor is rejected (SHOULD)
    cannot determine what the target supports — initialize returned no result (status 0)
Version negotiation
  • initialize returns the schema-required fields
    no session — initialize returned no result (status 0)
  • the handshake settles on the revision under test
    no session — initialize returned no result (status 0)

Passed (2)

checked and conformant

server/discover
  • the suite is reading a schema that matches the features it selected
Official SDK interop
  • the official SDK does not yet implement the newest revision

How to reproduce

With Docker:

docker pull hasmcp/mcp-spec-test:latest
docker run --rm hasmcp/mcp-spec-test -c "uv run https://raw.githubusercontent.com/modelcontextprotocol/ext-apps/HEAD/examples/qr-server/server.py --stdio" --spec-version 2025-11-25

Without Docker (npx):

npx @hasmcp/mcp-spec-test@latest -c "uv run https://raw.githubusercontent.com/modelcontextprotocol/ext-apps/HEAD/examples/qr-server/server.py --stdio" --spec-version 2025-11-25

This report was generated as part of an automated conformance sweep across public MCP server repos. The server also supports spec revision 2026-07-28, which showed a different (larger) set of failures and is reported separately. If this turns out to be a false positive specific to the test container's environment (e.g. missing uv/network access to fetch the remote script, or a uv run <url> invocation quirk rather than a real handshake bug), feel free to close this — happy to help re-verify with more detail if useful.

Lingua principale
TypeScript
Stelle
2.9k
Fork
387
Merge medio
2h 54m
PR unite (30g)
7

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di modelcontextprotocol/ext-apps

Tutte le issue di modelcontextprotocol/ext-apps

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.