MCP Server Manager について
Python 製の MCP サーバー管理ツールで、stdio サーバーを SSE エンドポイントに変換し、ブラウザベースのインスペクターを備えています。複数のサーバーを運用し、自動更新や障害復旧、テストを必要とするユーザー向けです。
主な機能
- 01stdio サーバーを SSE エンドポイント化
- 02更新の自動確認
- 03プロセス監視とクラッシュ時の再起動
- 04ウェブインスペクターでのサーバーテスト
- 05サーバー設定とポートの管理
活用シーン
- 01stdio サーバーを SSE クライアントに公開
- 02ブラウザーで MCP サーバーを確認・テスト
- 03クラッシュしたサーバーを自動再起動
- 04設定済みサーバーの追加や再起動
MCP 対応
`mcp_config.json` に記載された MCP サーバーを管理し、stdio サーバーを HTTP/SSE エンドポイントに変換して Cursor や Claude Desktop などのクライアントに接続します。サーバーのテスト用にブラウザーベースのインスペクターも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP SSE Launcher
MCP サーバーを管理する Python ベースのシステムです。Supergateway で stdio ベースのサーバーを自動的にラップし、SSE エンドポイントとして公開します。また、テスト用のウェブベースのインスペクターも提供します。
主な機能
- 自動更新 - MCP サーバーを常に最新の状態に自動更新します
- バックグラウンド監視 - クラッシュしたサーバーを自動的に再起動します
- ウェブインスペクター - ブラウザーから MCP サーバーをデバッグ、テストできます
- SSE 変換 - stdio サーバーをラップして HTTP/SSE でアクセスできるようにします
- AI アシスタントとの連携 - Cursor、Claude Desktop などで動作します
クイックスタート
# 1. Install dependencies
pip install -r requirements.txt
# 2. Set up environment (copy .env.example to .env and add API keys)
cp .env.example .env
# 3. Start all MCP servers (with auto-restart)
make run-servers
# 4. Start web inspector for debugging
make run-inspector
# 5. View inspector at the URL shown in the output
よくある使用例
特定の MCP サーバーをデバッグする
# Start inspector (will show URL with auth token)
make run-inspector
# Visit the URL shown in output to test MCP servers
新しい MCP サーバーを追加する
# Add GitHub MCP server
python mcp_servers.py add \
--name github \
--cmd npx \
--args "-y @modelcontextprotocol/server-github" \
--env GITHUB_TOKEN=your_token_here \
--port 8094
Cursor AI で使用する
~/.cursor/mcp.json に追加します:
{
"mcpServers": {
"filesystem": { "url": "http://localhost:8090/sse" },
"github": { "url": "http://localhost:8094/sse" },
"brave-search": { "url": "http://localhost:8096/sse" }
}
}
問題のあるサーバーを再起動する
# Kill conflicts and restart specific server
make restart-server SERVER=github
自動再起動なしで実行する(開発用)
make run-servers KEEP_ALIVE=0
自動で行われる処理
- 更新:起動前に npm パッケージと git リポジトリを確認、更新します
- ポートの競合:競合するプロセスを検出し、終了できます
- プロセスの監視:クラッシュしたサーバーを最大 3 回再起動します
- ログ:各サーバーのログを
/tmp/<server_name>.logに記録します - クリーンアップ:終了時にすべてのプロセスを適切に終了します
利用可能な MCP サーバー
デフォルト設定には、次のような人気のサーバーが含まれています:
- filesystem(8090)- ローカルファイルへのアクセス
- github(8094)- GitHub リポジトリとのやり取り
- brave-search(8096)- ウェブ検索
- fetch(8093)- HTTP リクエスト
- youtube(8092)- YouTube の検索/情報取得
- memory(8100)- 永続的なメモリ
- puppeteer(8101)- ウェブ自動化
トラブルシューティング
# Check what's using server ports
make check-server-ports
# Kill conflicting processes on server ports
make kill-server-conflicts
# Stop servers (inspector stops with Ctrl+C)
make stop-servers
# View server logs
tail -f /tmp/filesystem.log
設定
サーバーは mcp_config.json で定義します。環境変数には ${VAR} 構文を使用し、.env から読み込みます。
サーバー設定の例:
{
"name": "github",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {"GITHUB_TOKEN": "${GITHUB_TOKEN}"},
"port": 8094,
"server_type": "stdio"
}
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。