このガイドで構築するもの: 最小構成ながら完結した FastMCP セットアップです。ツールを公開する Python サーバーと、モデルによるツールの発見・呼び出しを可能にする SambaCloud ベースのクライアントを構築します。
概要
FastMCP は、Model Context Protocol のクライアントおよびサーバーを最小限のボイラープレートで構築できる、ハイレベルな Python フレームワークです。言語モデルと連携するツールの開発でも、外部 API を MCP 経由で統合する場合でも、FastMCP はクリーンな Python 構文と小さく焦点を絞った API により、煩雑な定型処理を削減します。 本ガイドでは、FastMCP と SambaCloud を連携させる手順を解説します。連携により、以下が可能になります。ツール利用の実現
OpenAI 互換の Function calling インターフェースを通じて、SambaCloud のモデルから Python 関数を呼び出せるようにします。
エージェントのオーケストレーション
モデルが適切なタイミングで適切なツールを選択するマルチエージェントシステムを構築します。
外部 API のブリッジ
任意のサードパーティサービスを MCP ツールとしてラップし、モデルから呼び出せるようにします。
カスタムエージェントの提供
フレームワークのオーバーヘッドなしで、デコレーターベースの軽量なハンドラーを提供します。
前提条件
- SambaCloud アカウントと、SambaCloud ポータル で取得した API キー
- Python 3.10 以降がインストール済みであること。
python --versionで確認できます。 - Python の仮想環境およびターミナル操作の基本知識
インストール
1
仮想環境の作成と有効化
2
必要なパッケージのインストール
3
SambaCloud API キーのエクスポート
利用方法
動作する FastMCP + SambaCloud 構成は、次の 2 つの要素からなります。1
MCP サーバー
Python 関数をツールとして公開します。
2
クライアント
SambaCloud を呼び出し、どのツールを実行するかをモデルに判断させ、そのツール呼び出しをサーバーに転送します。
1. MCP サーバーの定義
以下をexample_server.py として保存します。@mcp.tool() デコレーターが各関数を MCP 経由で公開し、mcp.run(transport="stdio") によりサーバーへ stdio 経由でアクセスできるようになります。
example_server.py
@mcp.tool() は、関数を MCP 経由で呼び出せるツールとして公開します。複数のツールを登録したり、標準的な Python の型アノテーションで複雑な入力を扱ったりできます。JSON スキーマは FastMCP が自動生成します。2. SambaCloud の呼び出しとツール呼び出しのサーバーへの転送
クライアントは OpenAI SDK の接続先を SambaCloud のベース URL に設定し、example_server.py を stdio のサブプロセスとして起動して、モデルが返したツール呼び出しをサーバーに転送します。
client.py
MCP から OpenAI 形式へのツールスキーマ変換やレスポンス処理ループを含む、実行可能な完全版のブリッジについては、MCP SambaNova examples ノートブック をご参照ください。
ユースケース
Function calling
SambaCloud でホストされている任意のモデルで、ツール利用と Function calling を実現します。
マルチエージェントオーケストレーション
ツールを組み合わせ、専門エージェントに処理を委譲するエージェントフレームワークを構築します。
外部 API との統合
REST、GraphQL、社内サービスをモデルから呼び出せるツールとして公開します。
軽量なカスタムエージェント
重量級フレームワークへのロックインなしで、デコレーターベースのハンドラーを提供します。
参考情報
MCP SambaNova examples
クライアントブリッジの完全版を含むエンドツーエンドのノートブックです。
FastMCP の公式ドキュメント
FastMCP フレームワークの公式リファレンスです。
MCP Python SDK
低レベルの Model Context Protocol SDK です。
対応モデル
SambaCloud でツール利用に使えるモデルの一覧です。
トラブルシューティング
ModuleNotFoundError: mcp または mcp.server.fastmcp
ModuleNotFoundError: mcp または mcp.server.fastmcp
pip install --upgrade mcpを実行し、新しいバージョンが入っていることを確認します- 仮想環境が有効であることを確認します。
which pythonが.venv内を指しているはずです - FastMCP は公式の
mcpパッケージに統合されました。別パッケージのfastmcpはインストールしないでください
SAMBANOVA_API_KEY が設定されていない
SAMBANOVA_API_KEY が設定されていない
- キーがエクスポートされていることを確認します:
echo $SAMBANOVA_API_KEY export SAMBANOVA_API_KEY="your-key"で再度エクスポートしてから再試行します- クライアントは
os.environ["SAMBANOVA_API_KEY"]でキーを読み取るため、同じシェルセッション内で変数が設定されている必要があります
サーバーは起動するがモデルがツールを呼び出さない
サーバーは起動するがモデルがツールを呼び出さない
- 各ツール関数に docstring があることを確認します。FastMCP は docstring を使って、モデルに提示する JSON スキーマを生成します
- クライアント呼び出しで
provider={"only": ["sambanova"]}または同等のルーティング設定がされていることを確認します - SambaCloud モデルページ で、モデルが Function calling に対応していることを確認します
インストール時の Python バージョンエラー
インストール時の Python バージョンエラー
mcpには Python 3.10 以降が必要です。python --versionで確認してください- 古いバージョンを使用している場合は、Python 3.10 以降で新しい仮想環境を作成してください

