Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

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

オープン
#756 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
52/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
python
領域
api, backend

調査の方向性

examples/qr-server/server.py から始め、spec version 2025-11-25 を使用して Docker または npx の手順で報告されたコマンドを再現します。MCP handshake の前にプロセスが終了するかを確認し、これが実際のサーバーの問題なのか、環境、ネットワーク、または uv のリモートスクリプトに起因するアーティファクトなのかを判断します。サーバーが handshake を完了し、conformance の失敗が解決されるか、false positive であることが確認されれば完了です。

索引モデルが issue の本文から書いたものです。

説明

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.

主要言語
TypeScript
スター
2.9k
フォーク
387
平均マージ
2時間 54分
マージ済み PR(30日)
7

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

modelcontextprotocol/ext-apps のほかの issue

modelcontextprotocol/ext-apps の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。