
AIに任せる仕事を増やすために外部ツールをつなぐと、ツールの説明を読み込むだけで大量のトークンを消費してしまいます。AIと外部システムをつなぐ共通規格「MCP」を使った連携では、この説明にかかるトークン消費が問題になっています。GitHubの同じ情報を確認する検証では、MCP経由の操作と従来のコマンドを直接使う方法とで、トークン消費に約32倍の差が出ました。モデルが操作手順やコードを自分で組み立てられるようになると、外部ツールの接続方法も変わります。MCPをどの処理に使うかによって、自社のAI導入にかかる手間や費用も変わります。
【関連記事】xAIとGrokの今後の見通しは?鍵は「Tesla」と「SpaceX」

MCPとは何をする仕組みだったのか
AIに質問して回答を受け取るだけであれば、外部システムを操作する仕組みは意識せずに済みます。ところが、社内の議事録を探し、その内容を営業システムへ登録する仕事では、資料を取得する機能と記録を更新する機能が求められます。MCPは、こうした外部のデータや機能をAIアプリから利用するための共通規格です。
AIと外部システムをつなぐ共通規格
MCPの正式名称はModel Context Protocolです。Anthropicが2024年11月に発表し、AIアプリとデータの保管先や業務ツールを共通の方法で接続できるようにしました。基本構成は、AIアプリ側で接続を受け持つ「MCPクライアント」と、外部のデータや機能を提供する「MCPサーバー」です。サーバー側が利用できる機能を公開し、クライアント側がそれを呼び出します。
それぞれの操作の名前、用途、実行時に指定する情報を、モデルに説明します。この説明が「ツール定義」です。例えば、資料を取得する操作では対象の資料を指定し、記録を更新する操作では対象の記録と変更内容を指定します。モデルは依頼を読み、どの操作を使うか、何を指定するかを選びます。その指定に従ってAIアプリがツールを呼び出し、処理結果をモデルへ返します。モデルが処理を選び、プログラムが実際にデータを取得・更新する仕組みです。
Anthropicは、Google Driveに保存した議事録を取得し、Salesforceの記録へ反映する例を紹介しています。資料を読む操作と営業システムを更新する操作をつなぐことで、会話での依頼に応じて業務処理を実行できます。実行する際には、接続先への認証と操作を許可する設定が求められます。どの資料を読めるか、どの記録を変更できるかは、接続先とAIアプリ側で管理します。MCPによって接続方法を共通化し、認証と権限の設定に従って外部機能を利用します。
なぜMCPが重要だったのか
AIアプリと外部システムを個別に接続すると、接続先が増えるたびに連携方法を調べ、専用の処理を用意する負担が生じます。さらに、別のAIアプリから同じシステムを使う場合には、そのアプリに合わせて接続用の処理を用意する必要があります。MCPを使えば、外部機能を提供する側とAIアプリ側が同じ規格に従って接続できます。接続先ごとの連携を共通化できることが、MCPの重要な価値でした。Anthropicも、データの取得先ごとに接続用の処理を実装しなければならない問題を、発表時に説明しています。
操作を個別のツールとして提供する方法には、モデルが実行すべき処理を選びやすくする利点もあります。資料の取得や記録の更新をあらかじめプログラムとして用意しておけば、モデルは用途と指定項目を理解して呼び出せます。複数の処理を一からコードで組み立てる力が十分でなくても、用意された操作を順に使って仕事を進められます。モデルの能力に合わせて操作を分けて用意する方法は、モデルが外部システムを操作する際の助けになってきたと考えられます。
モデルのコード作成能力が高まるほど、操作ごとにツールを用意する必要は減っていきます。Cloudflareは、モデルに個々のツールを直接呼び出させるよりも、プログラムから利用できる機能を示してコードを書かせるほうが、複雑な操作を扱いやすかったと報告しています。モデルが既存の機能の使い方を理解し、自分で処理を組み立てられれば、人が細かく分けた操作だけに頼る必要は減ります。MCPによる接続の共通化には価値が残る一方、モデルの能力に応じて、どこまでを個別のツールとして用意するかを見直せます。
接続するツールが増えると何が起きるのか
使えるツールを増やし、その定義をすべてモデルに渡すと、モデルが読む操作説明も増えます。LLMは文章などを「トークン」という単位に分けて処理し、一度に扱える情報量には上限があります。使わないツールの定義まで読み込ませると、依頼の内容や業務資料を扱うために使えるトークンが減ります。説明を読み込むにも処理時間がかかるため、入力トークンが増えると応答時間や費用にも影響します。仕事に必要な機能を増やした場合でも、その定義をすべて渡す方式では、実際の作業に入る前の負担が大きくなります。
使えるツールが増えると、モデルが操作を間違える問題も生じます。Anthropicは、似た名前のツールを取り違えたり、引数を誤ったりする失敗を挙げています。引数は、操作対象のIDや更新内容など、ツールに渡す値です。用途が似たツールでも、指定する値が異なれば、モデルはその違いを理解して使い分けなければなりません。使えるツールの数を増やすだけでは、依頼に合う操作を正しく選べるとは限らず、必要な定義を見つける方法や、使い方の説明が重要になります。
ツール間でデータを受け渡す際にも、モデルを介する方法ではトークンを消費します。議事録を取得して別のシステムへ登録する方式では、取得した全文をモデルが読み、次の操作の入力として再び出力する場合があります。内容をそのまま移す仕事でも、長い文章の読み書きが繰り返され、転記ミスの余地が生じます。必要なツールの説明だけを読み、データの受け渡しをプログラムへ任せることで、こうした負担を減らせます。接続するツールの数に加え、モデルへどの情報を渡し、どの処理をプログラムに任せるかも検討する必要があります。

CLIで選択肢が広がった

開発者が日常的に使っているCLIなどのツールは、AIにも使わせることができます。モデルがその使い方を理解し、処理の順序を組み立てられるのであれば、既存のツールを使って外部システムを操作できます。CLIを直接実行したり、コードを生成して実行したりすることで、AI向けに操作ごとのツールを新しく用意する負担を減らせます。
既存のCLIを直接使う
CLIは、コマンドを文字で入力してソフトウェアを操作する仕組みです。例えばGitHubには、リポジトリの情報や開発作業に関する情報を扱える「gh」というCLIがあります。AIアプリがコマンドを実行できる環境を備えていれば、モデルがghのコマンドを生成し、その実行結果を確認できます。MCP経由でGitHubの操作を呼び出す方法と、既存のCLIで同じ情報を取得する方法を選べます。開発者向けに整備されてきた操作方法が、AIにも使えるようになります。
Scalekitは、モデルが学習済みの知識からghのコマンドを組み立てられるため、個々の操作についてツール定義を読み込ませる負担を省けると説明しています。モデルがすでに知っているコマンドであれば、操作のたびに用途や指定項目を詳しく説明する必要は減ります。モデルが必要な情報の取得方法を判断できれば、一つのコマンド実行機能でさまざまな操作を実行できます。使える操作を増やす際にも、それぞれを別のツールとして定義する作業を減らせます。
CLIのヘルプや短い操作資料は、使い方の確認にも利用できます。モデルが知っている基本操作を使い、指定方法や出力の扱いが分からない場合に資料を調べるようにすれば、最初からすべての説明を渡す負担を避けられます。Scalekitの検証には、約800トークンの操作資料を加えたCLIの方式も含まれています。モデルが既存のCLIを使いこなせるようになるほど、人が操作ごとのツールを用意する必要は減り、モデルに任せられる範囲が広がると考えられます。
約32倍のトークン差はどこから生まれたか
Scalekitは2026年3月、Claude Sonnet 4でGitHubの情報を取得する検証を公開しました。同じ依頼を、CLI、操作資料を加えたCLI、MCPの3方式で実行し、5種類の作業について合計75回比較しています。リポジトリの言語とライセンスを確認する作業では、トークン消費の中央値がCLIで1,365、MCPで44,026でした。CLIの消費量は約32分の1です。MCP側では43個のツール定義が毎回モデルへ渡され、使わない操作の説明も読み込んでいました。この説明の読み込みが、トークン消費の差の大部分を占めていました。
調べる対象は、GitHubで公開されている同じリポジトリです。情報を一つ確認するだけでも、レビューやその他の開発操作に関する定義をモデルへ渡すと、取得したい情報よりもツールの説明のほうが長くなります。CLIでは、モデルがghの使い方をすでに知っているため、この説明を省けます。操作資料を加えたCLIでは同じ作業が4,724トークンとなり、資料を与えること自体にもトークンを使います。どれだけの説明を事前に与えるかが、簡単な作業では特に大きな差を生んでいます。
差の大きさは、仕事の内容によって変わります。PRの詳細とレビュー状態を確認する作業では約20倍、最新リリースと依存関係を調べる作業では約4倍でした。処理が増えれば、コマンド、取得結果、追加の確認にもトークンを使います。それでも、簡単な照会のために毎回大量の定義を渡している場合は、AIの導入時にその負担を減らす方法を検討する価値があります。ツールの説明を減らしたり、モデルが使い方を知っているCLIを利用したりすれば、実際の仕事に必要な情報を中心にモデルへ渡せます。
コードで処理をつなぎ、必要な結果だけを返す
CLIを直接使う方法に加え、モデルがその場でコードを生成し、実行環境で動かす方法もあります。APIは、プログラムからサービスの機能を利用するための窓口です。モデルがAPIを呼ぶコードを書けば、複数の操作をつなぎ、繰り返しや条件分岐も一つのプログラムとして実行できます。モデルは処理を考えてコードを生成し、計算や通信は実行環境が受け持ちます。モデルは実行結果を確認し、次の処理を判断できます。こうして、用意された操作を一つずつ呼び出すだけでなく、処理全体を自分で組み立てられます。
議事録を別のシステムへ反映する場合、取得した文章をプログラム内で保持し、そのまま更新処理へ渡せます。モデルが全文を読み直して出力する手順を省けるため、データの転送に使うトークンを節約でき、転記ミスのリスクも減らせます。抽出や集計でも、プログラムでデータを処理してから結果をモデルへ返せます。モデルが途中のすべてのデータを読む方式に比べ、判断に必要な情報を選んで渡せる点が利点です。処理の正確さを保ちながら、モデルが扱う情報量を抑える設計が可能になります。
この方式はMCPとも組み合わせられます。Anthropicは2025年11月、MCPツールをコードから呼べるようにし、必要な定義だけを読む構成を紹介しました。提示例では、読み込む情報を150,000トークンから2,000トークンへ減らし、98.7%の削減としています。この数値は、ツールを利用するために読み込む情報量を比較したものです。CLIで直接操作してMCPを省く方法に加え、MCPによる接続を維持しながら、モデルに与える説明とデータを絞る方法も選べます。
Cloudflareは2026年2月、APIを検索するツールとコードを実行するツールの2つに機能を集約したMCPサーバーを紹介しました。最初にモデルへ渡すツール定義は約1,000トークンです。モデルはコードで必要な機能を検索し、見つけた機能を使うコードを実行させます。検索結果や実行結果は、作業に応じて別途モデルへ返されます。モデルにコードを書かせることで、MCPを使う場合も負担を減らせます。モデルの能力向上は、CLIやAPIを直接利用する選択肢と、MCPの使い方を変える選択肢の両方を広げています。
AI導入で使い分けるべきもの
自社で開発するAIアプリに機能を追加する場合と、外部の業務サービスを複数のAIから利用する場合では、必要な接続の仕組みが異なります。自社アプリでは、内部に実装した処理を直接実行できます。外部サービスを利用する場合は、利用者の認証や操作権限を管理しながら、複数のAIが共通の方法で機能を呼び出せる仕組みが役立ちます。
アプリ内の処理はインプロセス型ツールで実行する
自社のAIアプリで処理を実装・管理するのであれば、アプリ内の関数をツールとして使う方法があります。関数は、入力を受け取り、決められた処理を実行するプログラムです。AIアプリと同じプロセス、つまり実行中のプログラムの内部で関数を動かす方式が「インプロセス型ツール」です。モデルが使う処理を選び、AIアプリが内部の関数を実行します。必要な処理をAIアプリ内で管理し、関数を直接呼び出せる場合は、外部のサーバーと接続する仕組みを省けます。
AIアプリ開発に使われるLangChainでは、通常のPython関数をツールとして登録できます。関数に書いた説明がツールの説明として使われ、入力値の型に基づいて、モデルが指定する項目も定義されます。開発者は、処理を関数として実装し、モデルが使えるツールとして登録することで、AIアプリへ機能を追加できます。この構成であれば、関数を呼ぶために別のMCPサーバーを用意する作業を省けます。AIアプリと、そのアプリが使う処理を同じプログラム内に実装する場合は、内部の関数を直接実行する方法を選べます。
外部サーバーとの接続を省くことと、モデルに渡す説明を減らすことは、別々に検討しましょう。インプロセス型でも、モデルが関数を選ぶための説明や指定項目を与えれば、その分のトークンを使います。機能を増やす際には、モデルに読み込ませるツール定義と、そのタイミングも検討する必要があります。アプリ内で直接使える処理を確認するとともに、モデルへ与える情報を必要な範囲に絞ることで、接続の手間と読み込みの負担を抑えやすくなります。処理の実行場所と、モデルに読ませる情報の両方を確認することが大切です。
既存iPaaSの業務連携を活かす
iPaaSは、複数のシステムを接続して業務処理を自動化するサービスです。接続先の機能を利用する「コネクター」と、複数の処理をつなぐ「ワークフロー」を使って、システム間の業務処理を設定します。すでにこうした連携を運用している企業であれば、既存のワークフローをAIから呼び出す方法を検討できます。AIが利用者の依頼を解釈して実行する処理を選び、決められた手順はワークフローに任せます。導入済みの連携が、AIの選んだ業務処理を実行するための基盤になります。
Workatoは、レシピと呼ばれるワークフロー、コネクター、利用者の役割を組み合わせて、AIが実行できる処理を定義する仕組みを紹介しています。AIは、その処理をMCPインターフェースから呼び出せます。Workatoは、利用者に応じた認証や権限管理、実行記録の確認にも対応すると説明しています。iPaaSが業務処理を実行し、MCPがその処理をAIアプリから利用できるようにする役割を担います。既存の連携基盤をMCPでAIアプリにつなぐことで、業務の手順を維持したまま、会話などで依頼された処理を呼び出せるようになります。
定型処理を既存のワークフローへ任せることで、モデルが毎回一つずつ操作を組み立てる手間を減らせます。依頼に合う処理はAIが選び、その後の操作とシステム間のデータの受け渡しは、ワークフローに定めた順序で実行します。自社のAI導入でも、既存のコネクターやワークフローで実行できる仕事を確認しましょう。利用できる連携を活かせれば、処理を一から作り直す手間を減らせます。依頼を解釈して処理を選ぶ部分にAIを使い、決められた手順の実行に既存の自動化を使うことで、導入の負担を抑えられます。
外部SaaSとの共通接続としてMCPを使う
SaaSは、インターネット経由で利用するソフトウェアサービスです。複数のAIアプリから外部SaaSのデータや機能を使う場合には、接続方法を共通化する価値があります。Cloudflareは、特定の相手との連携を想定せずに開発されたAIアプリとサーバーでも、MCPの共通規格に従って接続できると説明しています。自社アプリ内の関数を直接呼ぶ場合に比べ、外部の機能をさまざまなAIから利用する場合には、共通の規格で接続し、利用できる操作を確認できる仕組みが重要になります。
外部サービスへの接続では、利用者に応じて許可する操作を限定する仕組みも求められます。CloudflareのMCPサーバーでは、接続時に利用者が許可した範囲に権限を限定します。Workatoは、組織が事前に定義した処理を実行させ、その記録を確認する仕組みを説明しています。認証、権限、実行記録は、こうした製品や実装の機能によって管理されます。自社の業務に適用する際には、必要な操作と利用者の範囲に合わせて接続先を設定します。AIアプリは、その設定に従ってMCP経由で外部機能を利用します。
モデルがCLIやAPIを使って一連の処理を組み立てられるようになると、モデルの操作を助けるために個別のツールを用意する必要は減ります。それに伴い、MCPは、外部機能への接続方法を共通化し、管理された操作を複数のAIに提供するための規格として、より重視されると考えられます。自社アプリの内部処理には関数やコード実行、定型的なシステム間連携にはiPaaS、外部機能の共通接続にはMCPという使い分けが可能です。どの仕事をどの仕組みに任せるかに応じて、AI導入に必要な構成を決められます。
まとめ

モデルがCLIやAPIを扱い、コードで処理をつなげるようになるほど、操作ごとにツールを用意する必要は減ります。MCPでは、モデルの操作を助ける役割よりも、外部機能への接続方法を共通化する役割が重要になると考えられます。MCPによる接続を維持する場合にも、必要な定義だけを読み込み、中間データの受け渡しを効率化する選択肢が広がっています。
自社のAI導入でも、処理を新しく開発するか、既存の仕組みに任せるかを判断しやすくなります。自社アプリ内の処理には内部関数やコード実行を使い、すでにiPaaSで動かしている定型処理はそのまま活かせます。外部SaaSを複数のAIから利用する用途では、MCPを使った共通接続を検討できます。
接続方式の選択は、開発と運用の手間だけでなく、モデルへ与える説明の量や、処理の正確さにも関わります。自社の仕事に合う接続方式と実行方法を選ぶことで、AI導入の負担を抑えられます。既存の連携を活かしながら、モデルがCLIやコードで実行できる処理を増やすことで、AIに任せる仕事を広げていけます。
参考文献
Scalekit:MCP is up to 32× more expensive than CLI. Here’s why we still use it.
Anthropic:Code execution with MCP: Building more efficient agents
Cloudflare:Code Mode: give agents an entire API in 1,000 tokens
