はじめての Model Context Protocol (MCP) - 【第1回】AIがもっと「話せるヤツ」になる？ MCPはじめの一歩

# はじめに
こんにちは！ 「はじめての Model Context Protocol (MCP)」というシリーズで、全く知識がないところからMCPについて学んだことを全20回で共有していこうと思います。

最近、ChatGPTみたいなAIとおしゃべりする機会、増えましたよね？ 
すごく賢くて、人間みたいに会話できることもあって驚きます。
でも、時々「あれ？話が噛み合わないな…」
「さっき言ったこと、もう忘れちゃったの？」
なんて思う瞬間、ありませんか？

まるで、ちょっと前の会話の内容を覚えていない友人や、こちらの好みを全然知らない店員さんと話しているような、もどかしさ。
実はこれ、AIが **「文脈（ぶんみゃく）」** 、つまり話の流れや状況をうまく掴めていないから起こることが多いんです。

でも、もしAIがもっと上手に文脈を理解してくれたら…？ 
まるで気の利く友だちや、あなたのことをよく知っている店員さんのように、もっとスムーズで、もっと「話せるヤツ」になってくれるはず！

その鍵を握るかもしれない新しい考え方が、今回から始まるシリーズのテーマ **「Model Context Protocol (MCP)」** なんです。

「なんだか難しそう…」って思いましたか？ 
大丈夫です！ このシリーズは、専門知識がない方でも「へぇ、そういうことか！」と分かるように解説していきます。

第1回の今回は、まず「MCPって、そもそも何なの？」という疑問に答えていきます。

# MCPって何？ 超入門解説！
MCPをものすごーく簡単に言うと、**「AIと、AIを使うアプリやサービスとの間で、『文脈』に関する情報をやり取りするための『共通ルール』や『お約束事』」** のことです。

例えるなら…

### 外国の人と話すときの「共通言語（英語とか）」
言葉が通じないと会話が始まりませんよね？
MCPは、AIとアプリが「文脈」についてスムーズに意思疎通するための言葉のようなものです。

### スポーツの「ルールブック」
ルールがないと試合になりませんよね？ 
MCPは、情報をどういう形式で、どうやって渡すかのルールを決めて、AIが情報を正しく受け取れるようにします。

つまり、AIが「今、どういう状況で、誰と話していて、これまでにどんな話をしてきたか」といった文脈をちゃんと理解するために、
必要な情報をアプリ側からAIに分かりやすく伝えるための **「情報の渡し方の作法」** みたいなもの、と考えてみてください。

# AIが「文脈を読む」ってどういうこと？
では、AIが「文脈を読む」とか「文脈を理解する」って、具体的にどういうことでしょうか？ 簡単な例をいくつか見てみましょう。

![visual selection2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4058228/dd6787db-754c-4a69-afc8-24b2e365c95f.png)

### 前の会話を覚えている
あなた：「昨日、渋谷で美味しいラーメン屋さん探してるって言ったじゃない？」
AI：「はい、豚骨がお好きだというお話でしたね。いくつか候補を見つけましたよ！」
→ ただ「ラーメン屋さん」を探すだけでなく、「昨日」「渋谷で」「豚骨が好き」という文脈を覚えているから、的確な応答ができます。

### あなたの好みを知っている
あなた：「何か面白い映画ない？」
AI：「お客様はSFがお好きですよね。最近公開された『スペース・アドベンチャーZERO』はいかがですか？」
→ あなたの好みを「文脈」として知っているから、漠然とした質問にもパーソナルな提案ができます。

### 今の状況を分かっている
あなた：「（雨の日に）今日、傘いるかな？」
AI：「はい、現在地は雨が降っていますので、傘をお持ちになることをおすすめします。」
→ 現在地の天気という「文脈」を理解しているから、適切なアドバイスができます。

MCPは、こういった様々な「文脈情報」を、AIがちゃんと受け取って活用できるようにするための仕組みなんです。

## 【体験してみよう】文脈情報ってこんな感じ？
MCPでAIに渡される「文脈情報」って、具体的にどんな形をしているんでしょうか？ 
ここで、Pythonコードを使って、その簡単なイメージを見てみましょう！

例えば、あなたが映画好きで、AIにおすすめの映画を聞いた、というシナリオを考えてみます。
AIに渡されるかもしれないコンテキスト情報は、こんな感じかもしれません。

# AIに渡されるかもしれない文脈情報の例（あくまでイメージ）
```
context_info_example = {
  "user_profile": {
    "user_id": "user_123",
    "preferred_language": "Japanese",
    "favorite_genres": ["Sci-Fi", "Action", "Anime"],
    "location_preference": "Tokyo"
  },
  "conversation_history": [
    {"role": "user", "content": "最近何か面白い映画あった？"},
    {"role": "assistant", "content": "どんなジャンルがお好みですか？"},
    {"role": "user", "content": "うーん、SFかアクションがいいな。"}
  ],
  "current_context": {
    "device": "Smartphone",
    "time_utc": "2024-10-27T12:00:00Z",
    "app_name": "Movie Recommendation App"
  }
}
```

## AIにJSONで何が渡されているか？

上のコードは、AIに渡される可能性のある「文脈情報」の簡単な例を、人間にも分かりやすいJSON形式で表示しました。

### 整理された情報
user_profile (あなたの好みなど)、conversation_history (これまでの会話)、current_context (今の状況) のように、情報がきれいに整理されていますね。

### 具体的な内容
あなたが「日本語」を話し、「SF、アクション、アニメ」が好きで、「東京」の情報を好み、直前の会話で「SFかアクション映画」を探していること、そして今「スマホ」で「映画推薦アプリ」を使っていることなどが分かります。

### AIの賢さの源
AIはこれらの情報をまとめて受け取ることで、「なるほど、この人はSFかアクションが好きで、東京で上映中の新作か、配信で見られる人気作をスマホで探しているんだな」と、より深く状況を理解できます。
その結果、的外れな提案ではなく、あなたの好みにピッタリ合った映画をおすすめしやすくなるわけです。

このように、MCPはAIが「文脈を読む」ために必要な情報を、整理された形で提供する役割を担っているということなんです。

![visual selection2-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4058228/ecf319c4-b476-481f-87ea-c3e710058410.png)



# まとめと次回予告
今回は、AIがもっと「話せるヤツ」になるための鍵、「Model Context Protocol (MCP)」の超基本的な考え方をご紹介しました。
MCPは、AIとアプリの間で「文脈情報」をスムーズにやり取りするための「共通ルール」であり、これによってAIは話の流れや状況をより深く理解できるようになります。

次回、第2回では、**「MCPが私たちの暮らしにどんな嬉しい変化をもたらすのか？」** について、さらに具体的な例を挙げながら、そのメリットを一緒に見ていきましょう！お楽しみに！


---
# このシリーズ記事の全20回のタイトル
- パート1: まずは知ろう！ MCPってどんなもの？ 
  - [第1回: AIがもっと「話せるヤツ」になる？ MCPはじめの一歩](https://qiita.com/QueryPie/items/8603d859d2b85f85072e)
（どのような技術か）MCPって何？ AIが「文脈」を読むってどういうこと？ 超入門解説。
  -  [第2回: いつものアプリが超便利に？ MCPが私たちの暮らしにもたらす嬉しい変化](https://qiita.com/QueryPie/items/01e626b5ea873504fd16)
（何に役に立つか - 例）スマートスピーカー、おすすめ機能など、身近な例でMCPのメリットを実感！
  - [第3回: 専門知識ゼロでも大丈夫？ MCPと一般ユーザーの「ちょうどいい」関係](https://qiita.com/QueryPie/items/94d821877af33bcfbd9c)
    （素人でも利用できるか）あなたがMCPを直接使うことは少ないかも？ でも知っておくと得する理由。

- パート2: MCPの「しくみ」を覗き見！ データはどう動くの？
  -  [第4回: AIの「記憶」の材料？ MCPが扱う「コンテキスト情報」を分解してみよう](https://qiita.com/QueryPie/items/b90714ec7b578566f759)
（どのような技術か、データをどのように扱うか）会話履歴、好み、場所…どんな情報が使われるの？
   -  [第5回: アプリとAIの「情報のバトンタッチ」- MCPの基本的な動き方](https://qiita.com/QueryPie/items/cedded257ac768ac4633)
（どのような技術か）情報がアプリからAIへ、どうやって伝わるかのイメージ図解。
   - [第6回: 【コードで見る】AIに渡される情報ってこんな形？ コンテキストデータの例](https://qiita.com/QueryPie/items/97592aa5fbc5c7e231b3)
（データをどのように扱うか）Code Interpreterで、コンテキスト情報がどんなデータ構造になっているか見てみよう！
Code Interpreter 活用回
  - [第7回: なぜ「みんなのルール」が必要なの？ MCPの「標準化」が目指すこと](https://qiita.com/QueryPie/items/5ba973f194e50c77a8d9)
（どのような技術か、何に役に立つか）共通ルールで開発が楽に、サービスも良くなる理由。

- パート3: MCPで実現する「未来の便利」を体験！
  -  [第8回: まるで専属店員？ ネットショッピングとMCPの賢い連携](https://qiita.com/QueryPie/items/111f5e3f2a4eb36bf886)
（何に役に立つか - 例）あなたの好みを完璧に理解した商品レコメンド。
  - [第9回: あなただけの情報キュレーター！ ニュース・情報アプリとMCP](https://qiita.com/QueryPie/items/25f9c07549a3087dbc72)
（何に役に立つか - 例）本当に読みたい記事だけが届く、パーソナルなニュース体験。
  -  [第10回: 移動がもっとスマートに！ 地図・ナビアプリとMCPの可能性](https://qiita.com/QueryPie/items/8efd781123b7f33a676c)
（何に役に立つか - 例）いつもの道、今の交通状況、好みを全部考慮した最適ルート案内。
  - [第11回: ゲームや学習も進化する？ エンタメ・教育分野でのMCP](https://qiita.com/QueryPie/items/87618e4e0ce0f0b8802f)
（何に役に立つか - 例）あなたのレベルや興味に合わせた、オーダーメイドの体験。

-  パート4: 大切な「データ」どう守る？ MCPと安全な付き合い方
   -  [第12回「便利」と「不安」の境界線 - MCPで使われるデータとプライバシー](https://qiita.com/QueryPie/items/ad69662eaf0073da0331)
（データをどのように扱うか、安全に利用するには）どんな情報が収集・利用される可能性があるかを知ろう。
   - [第13回: 知らないうちに情報が…？ データ収集の仕組みと注意点](https://qiita.com/QueryPie/items/6fcc5587d1ff0b04bdda)
（データをどのように扱うか）アプリやサービスがどうやって情報を集めているかの基本。
   - [第14回: 自分の情報は自分で守る！ データ最小化と「同意」の重要性](https://qiita.com/QueryPie/items/5a74c7bab586e628aaec)
（安全に利用するには何を知り、どのように利用すべきか）必要最低限のデータ利用と、サービス利用規約の確認ポイント。
   - [第15回: アプリの設定を見直そう！ プライバシーを守るための具体的なアクション](https://qiita.com/QueryPie/items/c58b298d2e66fb426068)
（安全に利用するには何を知り、どのように利用すべきか）プライバシー設定の確認方法と、賢い使い方。
   - [第16回: セキュリティの基本の「き」 - MCP時代も変わらない大切なこと](https://qiita.com/QueryPie/items/e60ebcfae3819e166783)
（安全に利用するには何を知り、どのように利用すべきか）パスワード管理など、基本的な自衛策。

-  パート5: MCPと歩む未来 ～AIと賢く付き合うために～
   - [第17回: MCPはこれからどう進化する？ 技術のトレンドと未来予想](https://qiita.com/QueryPie/items/94fd913e61c9bb1b9f46)
（どのような技術か）AIとMCPのこれからの発展について。
   - [第18回: 企業はどう動く？ MCPがビジネスやサービスにもたらす変化](https://qiita.com/QueryPie/items/460c31013b19e033d29c)
（何に役に立つか）新しいサービスやビジネスモデルの可能性。
   - [第19回: 私たちはどう向き合う？ MCP時代のユーザーリテラシー](https://qiita.com/QueryPie/items/42f01daa99d92267f448)
（素人でも利用できるか、安全に利用するには）技術を理解し、メリットとリスクを踏まえて賢く利用する姿勢。
   - [第20回: 【最終回】AIともっと良い関係を！ MCP入門シリーズで学んだこと](https://qiita.com/QueryPie/items/59fb0b1dbb9acb63c090)
（全要素の総括）シリーズ全体の振り返り、MCPを通じて考えるAIとの未来。