Simple MCP Server について
Simple MCP Serverは、SSE経由でAIクライアントにカスタムツールを公開する軽量サーバーです。天気情報のサンプルツールを備え、Docker Composeでのデプロイに対応し、ホストとポートを設定できます。
主な機能
- 01SSE経由でMCPツールを公開
- 02Docker Composeでデプロイ
- 03ホストとポートの設定
- 04天気ツールのサンプルを収録
活用シーン
- 01SSE対応のMCPクライアントに接続
- 02天気ツールのサンプルを実行
- 03コンテナでサーバーをデプロイ
MCP 対応
SSE経由でカスタムツールをMCPクライアントに公開し、`/sse`エンドポイントでイベントストリームとJSON-RPCリクエストを扱います。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
シンプルな MCP サーバー
AI クライアントと連携するため、カスタムツールを SSE 経由で公開する軽量な MCP(Model Context Protocol)サーバーの実装です。
目次
概要
このリポジトリは、カスタムツール(例:天気情報の検索)を実装し、Server-Sent Events(SSE)経由で公開するシンプルな MCP サーバーを提供します。Docker コンテナーで実行できるため、すばやくデプロイでき、MCP プロトコルに対応したクライアントとシームレスに連携します。
機能
- SSE 経由でツールを MCP エンドポイントとして公開
- Docker Compose を利用して簡単にデプロイできるコンテナー化
- ポートとホストを設定可能
- サンプルツールを同梱(例:気象警報と天気予報)
前提条件
- Docker ≥ 20.10
- Docker Compose ≥ 1.29
はじめに
リポジトリをクローンし、プロジェクトディレクトリに移動します。
git clone [email protected]:kongo97/simple-mcp-server.git
cd simple-mcp-server
Docker イメージのビルド
docker compose build
これにより、付属の Dockerfile を使用して MCP サーバーのイメージがビルドされます。
コンテナーの起動
docker compose up -d
このコマンドは、以下を実行します。
- イメージをプル/ビルドする
- コンテナーをデタッチモードで起動する
- ホストのポート
8100をコンテナー内のポート8100にマッピングする
コンテナーを停止して削除するには、次を実行します。
docker compose down
使い方
MCP クライアントの接続
MCP 対応クライアント(例:Claude Desktop)が次の SSE エンドポイントに接続するよう設定します。
http://localhost:8100/sse
docs フォルダーには、Claude Desktop に対応したシンプルな設定ファイル(claude_desktop_config.json)があります。
利用可能なエンドポイント
| メソッド | パス | 説明 |
|---|---|---|
| GET | /sse | MCP 通信用の SSE ストリームを開く |
| POST | /sse | SSE 経由で JSON-RPC リクエストを送信する |
設定
docker-compose.yml 内で環境変数を設定するか、コンテナー内で直接設定することで、サーバーのポートとホストを変更できます。
services:
mcp-server:
environment:
- MCP_PORT=8100 # default port
- MCP_HOST=0.0.0.0 # bind address
開発
src/server.py(または任意のファイル)で MCP ツールを編集または追加します。- コンテナーを再ビルドして再起動します。
docker compose build docker compose up -d - ログを確認してエラーがないか調べます。
docker compose logs -f
トラブルシューティング
/sseで 404 が発生する場合:サーバーが正しいポートとパスにバインドされていることを確認してください。- 接続が拒否される場合:Docker が実行中で、コンテナーが正常な状態であることを確認してください。
docker ps docker logs simple-mcp-server - クライアントエラーが発生する場合:SSE URL とプロトコルバージョンが正しいか、クライアント設定を確認してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。