目的
@modelcontextprotocol/sdk のバージョン指定方針を決める。現状は committed lockfile だけが型エラーを押さえており、レンジ指定は守っていない。
前提
#225 / #226 で agents を 0.19.0 に上げた結果、SDK は tree 全体で 1.29.0 の単一コピーになり、src/mcp.ts の @ts-expect-error が不要になって削除された。ただしこの単一化はレンジの一致による保証ではなく、偶然の一致である。
package.json の指定 = "@modelcontextprotocol/sdk": "^1.0.0"
agents@0.19.0 の指定 = "@modelcontextprotocol/sdk": "1.29.0"(厳密指定)
@modelcontextprotocol/sdk@1.30.0 は 2026-07-27 に公開済み
したがって lock を再生成、または npm update を実行した時点で、トップレベルが 1.30.0、agents/ 配下に 1.29.0 がネストされ、二重コピーによる McpServer 型不一致が src/mcp.ts に復活する。
現在踏み止まっている唯一の理由は committed lockfile。
検討する選択肢
- トップレベルを
agents の指定に合わせて厳密 pin する(姉妹リポジトリ github-webhook-mcp の worker が採っている方式。ただし向こうは 1.26.0 で pin 理由も同型)
overrides で単一コピーを強制する(@cloudflare/workers-types と同じ手法。既に overrides ブロックは存在する)
- 現状維持とし、lock の再生成時に tsc が落ちることを検出手段として受け入れる
制約
対象ファイル
package.json — dependencies / overrides
package-lock.json
関連
目的
@modelcontextprotocol/sdkのバージョン指定方針を決める。現状は committed lockfile だけが型エラーを押さえており、レンジ指定は守っていない。前提
#225 / #226 で
agentsを 0.19.0 に上げた結果、SDK は tree 全体で 1.29.0 の単一コピーになり、src/mcp.tsの@ts-expect-errorが不要になって削除された。ただしこの単一化はレンジの一致による保証ではなく、偶然の一致である。package.jsonの指定 ="@modelcontextprotocol/sdk": "^1.0.0"agents@0.19.0の指定 ="@modelcontextprotocol/sdk": "1.29.0"(厳密指定)@modelcontextprotocol/sdk@1.30.0は 2026-07-27 に公開済みしたがって lock を再生成、または
npm updateを実行した時点で、トップレベルが 1.30.0、agents/配下に 1.29.0 がネストされ、二重コピーによるMcpServer型不一致がsrc/mcp.tsに復活する。現在踏み止まっている唯一の理由は committed lockfile。
検討する選択肢
agentsの指定に合わせて厳密 pin する(姉妹リポジトリ github-webhook-mcp の worker が採っている方式。ただし向こうは 1.26.0 で pin 理由も同型)overridesで単一コピーを強制する(@cloudflare/workers-typesと同じ手法。既に overrides ブロックは存在する)制約
src/mcp.tsのコメントには「抑止(suppression)を再追加するのではなくバージョンを整合させて直せ」と記録済み。本 issue はその整合方針を決める場対象ファイル
package.json— dependencies / overridespackage-lock.json関連