Your first MCP server
One server, six steps. Each step adds one thing and is a complete program you can run on its own.
基礎6 レッスン30 分
- 1サーバーを立てる — そして stdout に何も書かないMCP サーバー講座の一編目。道具もリソースも無く、サーバーだけを立てる。ここで確かめるのはひとつ — クライアントが繋がって initialize に答えを受け取るか。そしてこの段階で打っておかないと最後まで壊れ続ける規則ひとつ。5 分
- 2道具ひとつ — 説明文がコードより重要だMCP サーバー講座 2 編目。道具をひとつ登録する。名前・説明・入力スキーマ・ハンドラの四つだが、そのうち三つは我々ではなく呼ぶ側が読む。だから説明文をうまく書くことがハンドラをうまく書くことより値が大きい。5 分
- 3拒む道具 — スキーマは約束であって保証ではないMCP サーバー講座 3 編目。入力スキーマを付け、そのスキーマを信じないハンドラを書く。0 人を入れよという要求と 99 人を入れよという要求が、それぞれ違う理由で拒まれるところまで。5 分
- 4画面をリソースに — コードではなくサーバーが差し出す文書MCP サーバー講座 4 編目。画面をサーバーがファイルとして持ち、差し出す。ファイルを直せば再ビルドも再インストールも無しに次の接続で変わる — ただし毎リクエスト読んでこそ、その言葉が真になる。5 分
- 5プロセスが死んでも残る — いちばん賢くない方法でMCP サーバー講座 5 編目。待ち人数が変数にあればプロセスと一緒に消える。ファイルに書くのだが、毎回すべてを書き直す。部分更新より遅い代わりに、書きかけの記録が残らない。5 分
- 6変わったとだけ知らせる — 値を載せてはいけない理由MCP サーバー講座の最終編。画面が一秒ごとに問うのをやめさせる。サーバーが知らせるのだが、通知には uri だけを載せて値は載せない。そして購読していないクライアントには何も行かない。5 分