はじめての Model Context Protocol (MCP) 【第5回】 アプリとAIの「情報のバトンタッチ」- MCPの基本的な動き方

# はじめに
## AIの「賢さ」を支える情報の流れ
前回の第4回では、AIが私たちの状況や意図を理解するために参照する **文脈** (Context)の具体的な中身を探りました。「直近のやり取り」「ユーザー情報」「利用環境」「アプリの状態」…実に様々な種類の情報が、AIの **賢さ** の源泉となっていることが分かりましたね。

しかし、これらの情報は、ただ存在するだけでは意味がありません。AIが適切な応答を生成するためには、これらの情報が **必要な時に、必要な形で、AIモデルのもとへと届けられる** 必要があります。それはまるで、リレー走者が次の走者へ確実にバトンを渡すような、スムーズで連携の取れたプロセスです。

今回は、この **「情報のバトンタッチ」** 、つまり、あなたがアプリを操作してからAIが応答を返し、それが画面に表示されるまでの **情報の流れ（プロセス）** に焦点を当てます。MCP（Model Context Protocol）のような仕組みが、この流れの中でどのような役割を果たしているのか、具体的なステップを追いながら、その基本的な動き方を詳しく見ていきましょう。

少し技術的な側面にも触れますが、専門知識は不要です。今回も、リレーのバトンパスや荷物の配送といった身近な例えを使いながら、初心者の方にもイメージしやすいように解説していきますので、ご安心ください。AIの「舞台裏」で繰り広げられる、目に見えない情報の連携プレーを覗いてみましょう！

# リレーの主役たち：アプリ、MCP、そしてAIモデル

この「情報のバトンタッチ」劇には、主に3つの役割が登場します。

## 1. アプリケーション（アプリ）：第一走者 兼 情報収集係
- これは、あなたが普段直接触れているスマートフォンのアプリ、ウェブサイト、スマートスピーカーなどのサービスのことです。ユーザーからの指示を受け付け、必要な情報を集める役割を担います。リレーで言えば、スタートを切る第一走者であり、バトン（情報）を用意する係でもあります。
- 例：
 地図アプリ
 ショッピングアプリ
 ニュースアプリ
 チャットボットのインターフェース
 など。

## 2.AIモデル：アンカー走者 兼 頭脳
- 大規模言語モデル（LLM）などに代表される、実際に情報を処理し、応答を生成する「頭脳」部分です。通常は、パワフルなサーバー上で稼働しています。コンテキスト情報という名の「バトン」を受け取り、それを使って最適な応答（ゴールテープを切る走り）を生み出します。
- 例：
GoogleのGemini
OpenAIのGPTシリーズ
など（特定のサービスがどのモデルを使っているかは様々です）。

## 3.Model Context Protocol (MCP)：リレーゾーンのルール 兼 バトン整備係
- MCPは、アプリ（第一走者）が集めたコンテキスト情報を、AIモデル（アンカー走者）が受け取りやすいように **「どのように整理し、どのような形式で渡すか」** という **ルール（プロトコル）** を定めたものです。リレーゾーンでのバトンパスをスムーズかつ確実に行うためのルールブックであり、バトン自体を規格化したり、渡し方を指導したりするコーチのような役割も担います。MCP自体が物理的に存在するわけではなく、アプリとAIが連携するための「取り決め」や「手順」と考えると良いでしょう。

これらのプレイヤーが連携することで、情報のバトンタッチが実現します。

![はじめに - visual selection (8).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4058228/7ccb1ad8-bab9-4ed0-b0a4-36bf5d13d9ea.png)


# 「情報のバトンタッチ」7つのステップ

では、具体的に情報がどのように流れていくのか、ステップを追ってみましょう。ここでは、あなたが
「地図アプリを使って、近くにあるWi-Fiが使えるカフェを探す」
というシナリオを例に進めます。

## 【ステップ1】 ユーザーの操作：リクエストの発信

### 何が起こる？
すべては、あなたの操作から始まります。地図アプリを開き、「カフェ」と検索窓に入力したり、「近くのカフェ」ボタンをタップしたり、「ねぇ、近くでWi-Fiが使えるカフェは？」とスマートスピーカーに話しかけたりします。これが、AIへの「リクエスト」の出発点です。
 #### ポイント
 この操作自体が、AIにとって重要なコンテキスト（「ユーザーはカフェを探している」という **意図** ）となります。

## 【ステップ2】 アプリによるコンテキスト収集：必要な情報を集める

* **何が起こる？:** あなたのリクエストを受け取ったアプリ（第一走者）は、AI（アンカー走者）が最適な応答を生成するために必要となるであろう「コンテキスト情報」を、端末内部や（許可されていれば）サーバーから集め始めます。前回学んだ情報の種類を思い出してください。
* **地図アプリの例:**
    * **ユーザーの明示的なリクエスト:** 「カフェ」「Wi-Fi利用可能」
    * **利用環境:**
        * 現在地情報（GPS）： **「近くの」** を特定するために必須。
        * 現在時刻： **「営業中の」** カフェを絞り込むために必要。
    * **ユーザープロファイル/設定:**
        * 保存された好み：「評価が高い順で表示」「チェーン店はあまり好きではない」「よく利用するカフェブランド」など。
        * アカウント情報：過去の利用履歴（「このユーザーは以前、〇〇カフェによく行っていた」など）。
    * **アプリケーションの状態:**
        * 直前の検索履歴：「さっき『静かな作業スペース』で検索していた」→ カフェの中でも作業向きの場所を優先？
        * 表示中の地図範囲。
* **ポイント:** アプリは、考えられる全ての情報を送るわけではありません。今回の「カフェ探し」という**目的に関連性の高い情報**を選んで集めます。例えば、あなたの好きな音楽ジャンル情報は、カフェ探しには通常不要ですよね。

## 【ステップ3】 MCPに基づく情報の整理・整形：バトンを渡す準備

* **何が起こる？:** 集められた様々な種類のコンテキスト情報は、そのままではAIが扱いにくい場合があります。ここでMCP（または類似のプロトコル）の出番です。MCPが定める **「ルール」に従って、アプリは集めた情報を構造化し、決められた形式（フォーマット）に変換・整理** します。
* **例え:**
    * **荷物の梱包:** 引っ越し荷物を送る時、割れ物、本、衣類などを種類別にまとめ、適切な箱に入れ、送り先の住所や品名をラベルに正確に書きますよね。あれと同じです。コンテキスト情報（荷物）を、AI（配送先）が受け取ってすぐに理解・処理できるように、共通のルール（運送会社の規定＝MCP）に従って整理し、ラベル付け（データの構造化）するのです。
    * **会議の議事録:** 会議での様々な発言（コンテキスト情報）を、「決定事項」「議題」「発言者」「日時」といった項目（構造）に沿って整理し、誰が読んでも内容を把握できるようにします。
* **ポイント:** このステップの目的は、**情報の標準化**と**効率化**です。
    * **標準化:** どのアプリから送られてきても、AIが同じように解釈できる形式に揃えます。これにより、AI開発者はアプリごとの個別対応の手間が省け、アプリ開発者もAI連携がしやすくなります。
    * **効率化:** AIモデルが処理しやすい形式にすることで、応答速度の向上に繋がります。また、不要な情報を削ぎ落とし、**必要な情報だけをコンパクトに**まとめる（データ最小化）ことも意識されます。

## 【ステップ4】 AIモデルへのリクエスト送信：いざ、バトンパス！

* **何が起こる？:** 準備完了！ アプリは、MCPのルールに従って整理・整形されたコンテキスト情報と、ユーザーの元のリクエスト（「Wi-Fiが使えるカフェを探して」）をひとまとめにして、インターネットを通じてAIモデルが稼働しているサーバーへと送信します。この送信される情報の塊全体が、広義の**「プロンプト」**と呼ばれることもあります。
* **ポイント:** この通信は、通常、暗号化されるなどセキュリティに配慮して行われます。ユーザーが気づかないほどの速さで、情報はAIのもとへと届けられます。まさに、リレーゾーンでの電光石火のバトンパスです。

## 【ステップ5】 AIモデルによる処理：アンカー走者の頭脳フル回転

* **何が起こる？:** バトン（整理されたコンテキスト情報付きリクエスト）を受け取ったAIモデル（アンカー走者）は、その情報を解析し、ユーザーの意図を深く理解しようとします。そして、その持てる知識（訓練データ）と受け取ったコンテキスト情報を総動員して、最適と思われる応答を生成します。
* **地図アプリの例:** AIは、「現在地」「時刻」「Wi-Fi希望」「チェーン店以外を好む傾向」「直前の検索履歴」といった全てのコンテキストを考慮し、「現在地から徒歩10分圏内で、現在営業中、Wi-Fiがあり、評価が高く、独立系のカフェ」のリストを生成する、といった処理を行います。
* **ポイント:** ここでコンテキスト情報が活きてきます。もしコンテキストがなければ、「どこのカフェですか？」「Wi-Fiは必要ですか？」といった追加質問が必要になったり、的外れな候補（例：現在地から遠い、Wi-Fiがない、閉店中）を返してしまったりする可能性が高まります。**コンテキストの質と量が、AIの応答の質を大きく左右する**のです。

## 【ステップ6】 AIモデルからの応答受信：ゴールへのラストスパート

* **何が起こる？:** 応答を生成したAIモデルは、その結果をアプリへと送り返します。
* **地図アプリの例:** 生成されたカフェのリスト（店名、住所、距離、評価、Wi-Fiの有無などの情報を含む）が、データとしてアプリに返されます。
* **ポイント:** AIからの応答も、通常はアプリが処理しやすい特定の形式で返されます。

## 【ステップ7】 ユーザーへの結果表示：ゴールイン！

* **何が起こる？:** AIからの応答データを受け取ったアプリは、それを人間が見やすい形に整形し直し、画面上に表示します。
* **地図アプリの例:** カフェのリストが地図上にピンで表示されたり、写真付きのリスト形式で表示されたりします。ユーザーは、提案されたカフェの中から、行きたい場所を選ぶことができます。
* **ポイント:** これで「情報のバトンタッチ」の一連の流れが完了です。ユーザーは、自分の意図や状況が反映された、パーソナルで便利な結果を、あたかもアプリ自身が考えて提示してくれたかのように受け取ることができます。

![はじめに - visual selection (4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4058228/8e5ad1d2-f9d3-46f5-94f7-a232cf8e192c.png)


# この「情報のバトンタッチ」が重要な理由

この一連の流れ、特にMCPのようなルールに基づいた情報の整理と受け渡しが、なぜ重要なのでしょうか？

* **効率性:** 標準化された方法で情報がやり取りされるため、データの送受信やAIによる処理が迅速かつスムーズに行われます。無駄なやり取りが減り、応答速度が向上します。
* **精度と関連性:** AIが必要とする適切なコンテキスト情報が、理解しやすい形で確実に届けられるため、ユーザーの意図をより正確に汲み取り、的外れの少ない、関連性の高い応答を返すことができます。
* **一貫性:** 共通のルール（プロトコル）を用いることで、異なるアプリやサービスであっても、同じAIモデルに対して一貫した方法で情報を渡せるようになり、予測可能で安定した動作が期待できます。
* **開発の促進:** アプリ開発者にとっても、AI連携のための「お作法」が明確になっていれば、コンテキストを考慮した高度な機能をより効率的に開発できるようになります。これが、新しい便利なサービスの登場を後押しします。

# 流れを図でイメージしてみよう

この情報の流れを、頭の中で図に描いてみると、より理解が深まるかもしれません。（実際に想像してみてください）

1.  左端に「ユーザー」がいて、アプリに「リクエスト」を送る矢印。
2.  中央に大きな箱で「アプリケーション」。その中で「コンテキスト収集」「MCPによる整形」が行われるイメージ。
3.  アプリから右の大きな箱「AIモデル」へ、「整理されたコンテキスト＋リクエスト」が矢印（これがバトンパス！）で送られる。MCPはこの矢印のルールを規定。
4.  「AIモデル」の中で「処理・応答生成」が行われる。
5.  「AIモデル」から「アプリケーション」へ「応答」が矢印で返ってくる。
6.  「アプリケーション」が応答を「整形」し、「ユーザー」へ矢印で「結果表示」。

このように、情報が段階的に処理され、受け渡されていく様子をイメージできると、「情報のバトンタッチ」という表現がしっくりくるのではないでしょうか。

# まとめ
## 見えない連携プレーが、賢いAI体験を生む

今回は、アプリとAIの間で「コンテキスト情報」がどのように受け渡され、処理されていくのか、その基本的な流れを7つのステップで解説しました。

あなたがアプリでボタンを一つタップする、その裏側では、
【収集 → 整理・整形（MCP） → 送信 → AI処理 → 受信 → 表示】
という、目に見えない情報の連携プレーが、瞬時に行われているのです。

MCPのようなプロトコルは、この複雑な連携をスムーズかつ効率的に行うための「交通ルール」や「共通言語」として機能し、AIがその能力を最大限に発揮するための土台となっています。

この舞台裏の仕組みを少し知ることで、普段何気なく使っているアプリやサービスの「賢さ」が、どのようにして実現されているのか、その一端を感じ取っていただけたなら幸いです。

![はじめに - visual selection (9).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4058228/ebb47ae3-5b77-41c8-a17f-d2e5a485c2aa.png)

---

# 次回予告
さて、今回は情報の「流れ」を見ました。では、ステップ3で触れた「MCPに基づいて整理・整形された情報」とは、具体的に **どのような「形」** をしているのでしょうか？
次回、第6回「【覗いてみよう】AIが見ている情報ってこんな形？ Code Interpreterでデータ構造を体験！」では、いよいよCode Interpreterというツール（コーディング不要です！）を使って、AIに渡されるコンテキスト情報が実際にどのようなデータ構造になっているのか、その具体例を「見て」体験してみます。抽象的な話から一歩進んで、データの「顔」を覗いてみましょう！


---
# このシリーズ記事の全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との未来。