📦
FastMCPStudy
No description available
0 installs
Trust: 30 — Low
Devtools
Ask AI about FastMCPStudy
Powered by Claude · Grounded in docs
I know everything about FastMCPStudy. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
FastMCP Study
FastMCP での MCPサーバ の構築を試す|npaka
FastMCP 入門 (2) - FastMCPサーバ|npaka
setup
> pip install fastmcp
> which fastmcp
$HOME/.pyenv/shims/fastmcp
> fastmcp version
FastMCP version: 2.2.7
MCP version: 1.7.1
Python version: 3.13.2
Platform: macOS-15.4.1-arm64-arm-64bit-Mach-O
FastMCP root path: $HOME/.pyenv/versions/3.13.2/lib/python3.13/site-p…
Tool "letter_counter"
以下のような質問に答えるためのツール
"asfbsfasdaeabaaagsadfaa" の中に a は何個ありますか
- アノテーション
@mcp.tool()をつけて関数を定義する。 - 関数の docstring をツールの説明として使用する (アノテーションの中で明示することもできる)
- 関数のパラメータと型注釈に基づいて入力スキーマを生成する。
- 型は Pydantic が使える。
- 処理中に例外が発生しても MCPクライアント (Claude Desktopなど)は適切に処理して、AIによる処理などに切り替える。
$HOME/Library/Application Support/Claude/claude_desktop_config.json に letter_counter.py を追加
{
"mcpServers": {
...
"letter-counter": {
"command": "<PATH_TO_PYTHON>",
"args": [
"<PATH_TO_THIS_PROJECT>/FastMCPStudy/letter_counter/letter_counter.py"
]
}
}
}
Resource "data_server"
tool以外は Claude Desktopなどでは利用できない? クライアントを実装して検証する
- greeting ... シンプルな挨拶文を提供
- config ... アプリケーション設定を提供
Resource Template
Prompt
prompt_server.py は、いくつかのプロンプト関数を提供するMCPサーバーです。
ask_about_topic- トピックの説明を求めるユーザーメッセージを生成generate_code_request- コード生成を要求するユーザーメッセージを生成roleplay_scenario- ロールプレイングシナリオを設定するメッセージリストを生成ask_for_feedback- フィードバックを求めるユーザーメッセージを生成
LLMを使用するMCPクライアント
llm_mcp_client.py は、LLMを使用してMCPサーバーの関数に自律的にアクセスするクライアントです。
依存関係のインストール
pip install -r requirements.txt
使用方法
OpenAI APIを使用する場合
- OpenAI APIキーを環境変数に設定します(または直接コードに記述します):
export OPENAI_API_KEY=your_api_key_here
- クライアントを実行します:
python llm_mcp_client_openai.py
Anthropic APIを使用する場合
- Anthropic APIキーを環境変数に設定します:
export ANTHROPIC_API_KEY=your_api_key_here
- クライアントを実行します:
python llm_mcp_client_anthropic.py
注意: Anthropicクライアントでは、anthropicライブラリのバージョン0.18.0以上、0.50.0未満が必要です。
動作の仕組み
- クライアントはMCPサーバーに接続し、利用可能なプロンプト関数のリストを取得します。
- ユーザーの入力に基づいて、LLM(この例ではOpenAIのGPT-4)が最適なプロンプト関数とそのパラメータを選択します。
- 選択されたプロンプト関数が実行され、結果が返されます。
カスタマイズ
- 異なるLLMを使用する場合は、
LLMMCPClientクラスのselect_promptメソッドを修正します。 - システムメッセージを調整することで、プロンプト選択の精度を向上させることができます。
- 異なるMCPサーバーを使用する場合は、
main関数のserver_scriptパスを変更します。
