この計算機の仕組み
の MCP マルチサーバーのコスト帰属計算ツール 接続されている各サーバーの 工具数 それによって ツールあたりの平均スキーマ トークン そのサーバーのターンごとのトークンを取得し、すべてのサーバーの行を合計します。 ターンごとの合計スキーマトークン数 — どのツールが実際に呼び出されたとしても、クライアントが毎ターン再送信する共用体。それに掛ける セッションあたりのターン数 セッションごとのスキーマ トークン数を取得するには、次のようにします。 1日あたりのセッション数 × 30 毎月のスキーマ トークン ボリュームを取得します。そのボリュームの価格は、 キャッシュされていない入力価格 または キャッシュされた入力価格 キャッシュの切り替えに応じて、毎月のスキーマコストのヘッドラインが表示されます。
これが単純なトークン計算機と異なるのは、属性のステップです。つまり、各サーバーの 全体に占める割合 自身のターンあたりのトークンを、接続されているすべてのサーバーのターンあたりのトークンの合計で割った値です。 帰属月額費用 は、単純に月々のスキーマコストにそのシェアを乗じたものです。各サーバーの共有は接続されたスキーマの合計で正確に 100% になるため、帰属コストは常に合計月次コストの合計になります。分割によってコストが作成または破棄されることはなく、再割り当てされるだけです。これは意図的に基づいています ツールが実際に呼び出される頻度ではなく、各サーバーが接続されたスキーマのどれだけを占めるか — サーバーは、そのセッションが完全にアイドル状態にある間、請求書で最も高価な項目になる可能性があります。これは、単にサーバーが多数のツールと冗長なスキーマに接続されたままであるためです。プロンプト キャッシュにより、合計の金額が変わります (同じスキーマ プレフィックスがターンごとに繰り返されると、通常は約 90% の割引になります) が、どのサーバーが最大のシェアを保持するかは変わりません。隣の数値が縮小するだけです。
よくある質問
3 台の MCP サーバーを接続すると、各サーバー単体の費用の合計よりも費用がかかるのはなぜですか?
サーバーあたりのコストは高くありませんが、ほとんどの人が予想するよりもターンあたりのコストが高くなります。クライアントは、使用しようとしているサーバーのツール スキーマのみを送信するのではなく、現在そのセッションに接続されているすべての MCP サーバーのスキーマを、単一のユニオンにバンドルされて、ターンごとに送信するためです。 26 個のツールを備えた GitHub MCP サーバー、11 個のツールを備えた Slack MCP サーバー、6 個のツールを備えた Postgres MCP サーバー、および 8 個のツールを備えたファイルシステム MCP サーバーに接続した場合、クライアントは、そのターンで実際にどのツールが呼び出されるかに関係なく、ターン 1、ターン 2、およびその後の各ターンで、51 ツール相当のスキーマすべてを再送信します。それぞれ個別に実行コストが低い 3 台または 4 台のサーバーでは、会話が始まる前にすべてのリクエストに存在する数万のトークンのスキーマ ペイロードが追加される可能性があります。これは、GitHub のような重い単一サーバーで文書化されている接続ツールの結合メカニズムと同じであり、そのツール定義だけでも数万のトークンに達する可能性があり、同じクライアント セッションにたまたま接続されているサーバーの数に応じて増加するだけです。
サーバーのツールがこのセッションで呼び出されていないのに、なぜ依然としてコストが発生するのでしょうか?
なぜなら、ここで計算されるコストはツールを呼び出すコストではなく、使用されるかどうかに関係なく、すべてのリクエストに存在するスキーマのコストだからです。クライアントは、呼び出すことが予期されるツールのスキーマのみを選択的に含めません。これには、接続されているすべてのサーバー上のすべてのツールの完全なスキーマが毎ターン含まれており、そのトークンのブロックは、モデルが実際にそれを使用して何を行うかに関係なく、通常の入力トークンとして課金されます。この計算ツールは、毎月のスキーマ請求額に占める各サーバーの割合を、接続されているスキーマ全体に占めるそのサーバーの割合 (ツールの数にツールごとの平均トークンを掛け、すべてのサーバーの合計で割った値) に比例して計算します。ツールが呼び出される頻度には比例しません。多数のツールと冗長なスキーマを備えたサーバーは、接続を維持するだけで、実際の呼び出しがゼロであっても、最終的に毎月の請求額のほとんどを負担することになります。一方、常に使用するものの 2 つの小さなツールを公開するサーバーは、比較するとほとんどコストがかかりません。 「接続するのに高い」と「使用するのに高い」の間の不一致こそが、通話量ではなくこの方法で価格の帰属を決定する最大のポイントです。
プロンプト キャッシュを有効にすると、マルチサーバー スキーマのコストの問題は解決しますか?
それはコストの根本的な形状ではなく、金額の大きさを解決します。キャッシュを使用すると、セッションの最初のターンでスキーマ ブロックの入力価格の全額を支払い、セッション中にまったく同じツールのセットが再順序付けまたは変更されずに接続されたままである限り、その後のターンごとに大幅な割引 (通常は約 90% オフ) で同一のブロックをキャッシュから読み戻すことができます。この割引は本物です。典型的なマルチサーバー設定では、月額数千ドルの請求額が数百ドルに変わる可能性があります。ただし、どのサーバーがその請求額の最大のシェアを担当するかは変わりません。キャッシュされているかどうかに関係なく、接続されたスキーマの各サーバーのシェアに比例するためです。接続されているがめったに使用されないサーバーは、数値が小さいだけで、依然として最大の明細項目になります。また、キャッシュはツール リストがターンごとに同一である場合にのみ機能します。セッション中に接続サーバーを追加、削除、または並べ替えると、次のリクエストでキャッシュが失われ、再び全額が支払われます。
これは、このサイトにすでにある MCP サーバー コスト計算ツールや MCP ツール スキーマ トークン オーバーヘッド計算ツールとどう違うのですか?
3 つとも MCP に関連する価格を設定していますが、どれも重複しません。 MCP サーバーのコスト計算ツールでは、インフラストラクチャとして 1 台の MCP サーバーを構築、ホスト、保守するのにかかるコスト (エンジニアリング時間、毎月のホスティング料金、保守費用) の価格が計算されます。この数値は、LLM 会話での使用方法によっても変わりません。 MCP ツール スキーマ トークン オーバーヘッド計算ツールは、セッションの各ターンで再送信される 1 つのサーバーのツール スキーマの反復トークン税 (単一サーバー バージョンのスキーマ税) の価格を計算します。この計算ツールはマルチサーバー バージョンです。複数の MCP サーバーを同じクライアント セッションに同時に接続した場合に何が起こるかをモデル化します。クライアントは、接続されているすべてのサーバーのスキーマの和集合を毎ターンまとめて再送信し、その合計した月々の請求額を、接続されているスキーマ全体に対する各サーバーのシェアで分割して返します。この帰属の問題は、複数のサーバーがルーム内にある場合にのみ発生します。