第1章 「コネクタ」の正体 — MCPは道具の共通規格

📖 MCPサーバーを作って学ぶ AIに道具を持たせる入門 — はじめに・目次 ← 目次に戻る この章にコードは出てきません。「何を作ろうとしているのか」の地図を先に配ります。手を動かすのは第2章からです。


📱 Claude ではこう見える 🟢

Claude に GitHub や Google ドライブを繋いだことはありますか。設定から「コネクタ」を追加すると、それまで「私はファイルにアクセスできません」と言っていた Claude が、急にあなたのファイルを読めるようになります

不思議なのは、Claude 自体は何もアップデートされていないことです。あなたが設定を1つ足しただけ。それなのに、できることが増えた。

つまり——AIの能力は、後から外付けできる。その外付けの規格が MCP(Model Context Protocol) です。

そして今回の主役はここです。

あなたが今から作るのは、その「外付けする側」です。


🤔 なぜ「規格」が要るのか 🟢

道具を持たせるだけなら、前作でやった

第3弾(CLIエージェント)の第3章を思い出してください。あそこでは、AIに「道具メニュー」を渡しました。ファイルを読む道具、コマンドを走らせる道具。AIに道具を持たせる方法は、もう知っているわけです。

では、なぜわざわざ MCP という規格が必要なのでしょう。

規格がないと、掛け算で増える

あなたが「メモを検索する道具」を作ったとします。素晴らしい。ではそれを——

  • Claude Desktop で使いたい → Claude 用に書く
  • ChatGPT でも使いたい → ChatGPT 用に書き直す
  • Cursor でも使いたい → Cursor 用に書き直す
  • 自作アプリでも使いたい → また書き直す

道具が5個、繋ぎたいAIが4つあったら、5 × 4 = 20回書くことになります。これを N×M問題 と言います。

規格があると、こうなります。

  • 道具を作る人は「MCPの形」で1回作る
  • AIを作る人は「MCPの形」を読めるように1回作る
  • あとは、どれとどれでも繋がる

コンセントと同じです

日本の家電は、どのメーカーのものでも、同じ形のプラグが付いています。だから炊飯器メーカーは「ソニーの家用の炊飯器」を別に作らなくていい。形さえ合わせれば、どの家でも動く

MCPはこれです。AIと道具のあいだの、プラグの形を決めたもの。それ以上でもそれ以下でもありません。

💡 だから覚えておいてください。MCPは賢くありません。 AIを賢くする魔法ではなく、「こういう順番で、こういう形の文字列をやりとりしましょうね」という約束事です。約束事だからこそ、誰でも作れます。


🛠 登場人物は3人 🟢

ここが初心者の最大の混乱ポイントなので、丁寧にいきます。MCPの話には3つの役が出てきます。

┌─────────────────────────────────────────────┐
│  ホスト(Claude Desktop)                    │
│  =あなたが実際にさわるアプリ                  │
│                                             │
│   ┌──────────────────┐                      │
│   │ クライアント       │ ←─ サーバー1つにつき1人 │
│   └────────┬─────────┘                      │
└────────────┼────────────────────────────────┘
             │  ← ここでMCPの会話が行われる
             ↓
   ┌────────────────────┐
   │ サーバー            │  =あなたが作るプログラム
   │ (メモを検索する等) │
   └────────────────────┘
正体 誰が作る?
ホスト Claude Desktop そのもの。人間と話す側 Anthropic
クライアント ホストの中にいる「サーバーとの通訳係」 Anthropic(第2部ではあなたが作ります)
サーバー 道具の実体。メモを検索したりする小さなプログラム あなた ←★今回の主役

第1部(第2章〜第9章)では、いちばん下のサーバーだけを作ります。第2部(第10章〜)で、真ん中のクライアントを自分で作って、自作アプリに繋ぎます。

サーバーが提供できるものは3種類

あなたが作るサーバーは、ホストに対して3種類のものを差し出せます。

種類 ひとことで
ツール(tools) AIが実行するもの メモを検索する、メモを書く
リソース(resources) AIが読むもの メモそのものの中身
プロンプト(prompts) 人間が選ぶ定型の頼み方 「今週のメモを要約して」

この教材では、まずツールだけを扱います(第2章〜第6章)。3種類の使い分けは第7章でまとめます。最初から全部やろうとしないでください。 ツールだけで、じゅうぶん実用的なものが作れます。


🔧 で、どうやって話しているのか 🔧

背骨②に関わる、この教材でいちばん大事な話です。軽く聞いておくだけでOKですが、第3章でここに戻ってきます。

Claude Desktop があなたのサーバーと話すとき、いちばん普通のやり方は stdio(標準入出力) といいます。乱暴に言うとこうです。

  1. Claude Desktop が、あなたのプログラムを起動する(裏でこっそり)
  2. Claude Desktop が、そのプログラムのキーボード入力の口(標準入力)に文字を流し込む
  3. あなたのプログラムは、画面出力の口(標準出力)に返事を書く
  4. 用が済んだら、Claude Desktop がプログラムを終了させる

つまり——あなたのサーバーの「画面」は、Claude との会話チャンネルそのものなのです。

ここから、この教材で一番有名な罠が生まれます。

⚠️ 画面に文字を出すつもりで console.log("started") と書くと、Claude との会話が壊れます。 その文字が、Claude との会話に混ざるからです。人間で言えば、通訳の会話に第三者が割り込んで叫んでいる状態。会話が乱れます。

これは初心者がほぼ全員ハマります。公式ドキュメントにも「stdioサーバーでは絶対に console.log() を使うな」と明記されているほどです。

そしてこの罠のいちばん厄介なところは、いつも派手に壊れてくれるわけではない、という点です。書き方によっては「なんとなく動いてしまう」ことがあります。動いてしまうと、あなたは原因に気づけません。数日後、まったく別の場所で不可解な不具合として現れます。第3章で、実際に自分の手で壊して、2通りの壊れ方を見てもらいます。壊れ方を知っていれば、怖くありません。

💡 話し方はもう1つ、HTTP というやり方もあります(第8章)。手元で動かすなら stdio、インターネットの向こうに置くなら HTTP、とざっくり覚えておいてください。


⚠️ ハマりどころ 🟢

①「サーバー」という言葉に惑わされない

MCPの「サーバー」は、Webサーバーではありません。

「サーバー」と聞くと、24時間動いていて、URLがあって、たくさんの人がアクセスするもの——を想像しますよね。違います。

MCPサーバーの正体は、あなたのパソコンの中で、Claudeに呼ばれたときだけ起動する、画面のない小さなプログラムです。URLもありません。公開もされていません。あなた専用です。

この誤解を持ったまま進むと、第2章で「サーバーを立てたのにブラウザで開けない」と混乱します。開けなくて正解です。

②「常駐している」と思わない

サーバーはあなたが起動するのではありません。Claude Desktop が必要なときに起動し、終わったら終了させます。だから——

設定ファイルを書き換えたら、Claude Desktop を再起動する必要があります。

これも全員が一度は忘れます。第2章で必ずやります。

③「MCPを入れればAIが賢くなる」と思わない

MCPは能力の配管であって、能力そのものではありません。ダメな道具をMCPで繋いでも、ダメな道具のままです。道具の良し悪しを決めるのは、あなたの設計です。


💡 いちばん大事なこと:AIが読むのは「説明文」だけ 🟢

先に種を撒いておきます。

あなたがサーバーに道具を1つ足すとき、こう書きます(イメージです。本物は第2章から)。

名前:      search_notes
説明:      メモを検索する
受け取るもの: キーワード(文字列)

そしてAIは——この3行しか見ていません。 中身のコードは1文字も読みません。

つまり、AIが道具を使ってくれるかどうかも、正しく使えるかどうかも、あなたが書いた説明文しだいということです。

  • 説明が雑だと、AIは道具の存在に気づきません
  • 説明が曖昧だと、AIは変な使い方をします
  • 説明が正確だと、AIは驚くほど的確に使ってくれます

プログラミングの上手さより、説明の上手さが効く。 これがMCPの意外な特徴です。第2章でいきなりこれを体感してもらい、第5章・第6章でじっくり扱います。


🤖 AIに頼むなら 🟢

この教材を読みながら、AIコーディングツール(Claude / Cursor など)に手伝ってもらう人へ。

MCPは比較的新しい規格で、まだ動きが速い分野です。そのためAIは、古い書き方を自信満々に出してくることがあります。とくに——

  • 少し前の書き方(古いAPIの名前)を出してくる
  • 廃止された繋ぎ方(古いHTTPのやり方)を勧めてくる

なので、頼むときはこう言ってください。

「MCPの公式ドキュメント(modelcontextprotocol.io)の最新の書き方で」 「TypeScript の公式SDK(@modelcontextprotocol/sdk)を使って」

そして——動かなかったら、AIに聞く前に第4章(デバッグ)に戻ってください。 AIは、あなたのパソコンで何が起きているかを見られません。「どこで壊れているか」を掴んでから聞くほうが、何倍も速く解決します。


📗 ことばメモ

ことば よみ 意味
MCP エムシーピー Model Context Protocol。AIと道具をつなぐ共通規格
ホスト 人間がさわるアプリ本体(例:Claude Desktop)
クライアント ホストの中にいる、サーバーとの通訳係
サーバー 道具の実体。あなたが作るもの。Webサーバーではない
ツール AIが実行できる機能
リソース AIが読めるデータ
プロンプト 人間が選ぶ、定型の頼み方
stdio エスティーディーアイオー/標準入出力 プログラムの入力の口と出力の口。手元のサーバーとの会話に使う
N×M問題 規格がないと「AIの数 × 道具の数」だけ実装が要る、という困りごと

➡️ 次へ

地図は配りました。次は実際に動かします

第2章 まず公式のサンプルを動かす — 天気サーバーをClaudeに繋ぐ では、MCPの公式チュートリアルにある「天気サーバー」を、そのまま Claude Desktop に繋ぎます。自分で書く前に、まず他人の完成品が動くところを見る——これがいちばん近道です。

そして第2章の最後に、あなたはきっとこう思います。「あれ、東京の天気が出ない」。その理由こそが、第5章から自分のサーバーを作りはじめる動機になります。

関連ページ

  • MCPサーバーを作って学ぶ AIに道具を持たせる入門 — はじめに・目次 — 目次
  • 自作CLIエージェントで学ぶ AIエージェント開発入門 — はじめに・目次 — 第3弾。「道具を持たせる」基礎はこちら