MCP Tool Server Template について
MCP Tool Server Templateは、PythonでMCPツールサーバーを作る開発者向けのCookiecutterテンプレートです。FastAPIを基盤とするプロジェクトに、サンプルツールとデプロイ設定が含まれます。
主な機能
- 01Cookiecutterによるプロジェクト生成
- 02FastAPI RESTサーバーの基盤
- 03天気ツールのサンプル
- 04uv、ruff、mypy対応
- 05DockerとKubernetesの設定
活用シーン
- 01新しいPython MCPサーバーのひな型作成
- 02天気ツールのサンプルを使った開発開始
- 03コンテナまたはKubernetesへのデプロイ準備
MCP 対応
このテンプレートは、天気ツールのサンプルを含む、MCPクライアントにツールを提供するMCPサーバーを生成します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP ツールサーバーテンプレート
FastAPI、uv、Docker に対応した Model Context Protocol(MCP)ツールサーバーを作成するための Cookiecutter テンプレートです。
特長
- FastAPI ベースの REST サーバー
- Model Context Protocol(MCP)ツールに対応
- サンプルの天気ツールを実装
- 最新の Python ツール(uv、ruff、mypy)
- 型ヒントと包括的なテスト
- コンテナ化に対応した Docker サポート
- Kubernetes デプロイ設定
要件
- Python 3.12 以降
- uv パッケージマネージャー
- cookiecutter 2.5.0 以降
使い方
新しいプロジェクトの作成
cookiecutter gh:mibexx/mbxai-mcp-server-template
プロンプトに従って、プロジェクトを設定してください。
project_name:プロジェクト名project_slug:プロジェクトのスラッグ(パスやインポートで使用)package_name:Python パッケージ名description:プロジェクトの簡単な説明author_name:名前author_email:メールアドレスopen_source_license:プロジェクトのライセンスpython_version:使用する Python のバージョンuse_pytest:テストに pytest を含めるかどうかuse_mypy:型チェックに mypy を含めるかどうかuse_ruff:リンティングに ruff を含めるかどうか
プロジェクト構成
このテンプレートでは、整理されたプロジェクト構成が作成されます。
your-project/
├── src/
│ └── your_package/
│ ├── api/ # Core API functionality
│ ├── clients/ # Client libraries
│ ├── project/ # Project-specific code
│ │ └── weather.py # Sample weather tool
│ ├── config.py # Configuration management
│ └── __init__.py # Package initialization
├── tests/ # Test suite
├── data/ # Data storage
├── logs/ # Log files
├── kubernetes/ # Kubernetes deployment files
├── Dockerfile # Docker configuration
├── docker-compose.yml # Docker Compose configuration
├── pyproject.toml # Project metadata and dependencies
└── README.md # Project documentation
開発
ローカルでの実行
cd your-project
uv venv
source .venv/bin/activate # On Unix/macOS
# or
.venv\Scripts\activate # On Windows
uv pip install -e .
uv run service
Docker での実行
cd your-project
docker-compose up -d
Kubernetes へのデプロイ
cd your-project
kubectl apply -f kubernetes/mbxai_resource.yaml
新しいツールの追加
MCP サーバーに新しいツールを追加する詳しい手順については、プロジェクトの README.md を参照してください。
ライセンス
このテンプレートは MIT ライセンスの下で提供されています。詳細については LICENSE ファイルを参照してください。
概要
Mibexx が作成しました。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。