MCP Server Management Scripts について
開発時に設定済みの MCP サーバーを起動・管理するシェルスクリプト集です。フォアグラウンドとバックグラウンドの実行、状態確認や制御、ログ表示に対応します。
主な機能
- 01設定済み MCP サーバーの起動
- 02フォアグラウンドまたはバックグラウンド実行
- 03実行中サーバーの一覧表示と停止
- 04ログ表示とフォアグラウンドへの切り替え
- 05利用可能なターミナル環境の検出
活用シーン
- 01開発用に複数の MCP サーバーを起動
- 02状態確認や指定サーバーの停止
- 03バックグラウンド実行中のサーバーログ確認
MCP 対応
MCP サーバーの起動と管理を行うスクリプトです。クライアント向けの MCP サーバーインターフェースは説明されていません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー管理スクリプト
このリポジトリには、開発用の MCP(Model Context Protocol)サーバーを簡単に起動、管理するためのスクリプトが含まれています。
スクリプトの概要
- start-mcp-servers.sh:すべての MCP サーバーを起動します
- manage-mcp-servers.sh:実行中の MCP サーバーの管理(一覧表示、停止、ログの表示など)に使用します
はじめに
両方のスクリプトが実行可能であることを確認してください。
chmod +x start-mcp-servers.sh manage-mcp-servers.sh
MCP サーバーの起動
すべての MCP サーバーを起動するには、次のコマンドを実行します。
./start-mcp-servers.sh
デフォルトでは、次の処理が行われます。
- 既存のログファイルをすべてクリアします
- すべてのサーバーをフォアグラウンドで実行し、現在のターミナルに出力を表示します
- 識別しやすいように、各行の先頭にサーバー名を付けます
バックグラウンドモードでの実行
サーバーをバックグラウンドで実行する場合は、次のコマンドを実行します。
./start-mcp-servers.sh --background
バックグラウンドモードでは、スクリプトは次のいずれかの方法でサーバーを起動します(優先順位順)。
- iTerm2 のタブ(iTerm2 を使用している場合)
- Terminal.app のウィンドウ(Terminal.app を使用している場合)
- tmux セッション(tmux が利用可能な場合)
- ログファイルを使ったバックグラウンドプロセス(代替方法)
コマンドラインオプション
./start-mcp-servers.sh --help
使用できるオプション:
--background、-b:サーバーをバックグラウンドモードで実行します--help、-h:ヘルプメッセージを表示します
MCP サーバーの管理
管理スクリプトには、実行中の MCP サーバーを管理するためのコマンドがいくつか用意されています。
ヘルプの表示
./manage-mcp-servers.sh help
実行中のサーバーの一覧表示
./manage-mcp-servers.sh list
設定されているすべてのサーバーと、それぞれが実行中かどうかが表示されます。
サーバーの停止
すべてのサーバーを停止します。
./manage-mcp-servers.sh stop
特定のサーバーを停止します(番号で指定)。
./manage-mcp-servers.sh stop 1 # Stop the first server
ログの表示
すべてのログファイルを一覧表示します。
./manage-mcp-servers.sh logs
特定のサーバーのログを表示します(番号で指定)。
./manage-mcp-servers.sh logs 1 # View logs for the first server
サーバーをフォアグラウンドに切り替える
./manage-mcp-servers.sh fg 1 # Bring the first server to foreground
フォアグラウンドに切り替えられない場合は、ログファイルがリアルタイムで表示されます。
MCP サーバーの追加
新しい MCP サーバーを追加するには、start-mcp-servers.sh ファイルを編集するだけです。
start-mcp-servers.shを開きます- ファイルの先頭にある
MCP_SERVERS配列を探します - 配列に新しいサーバーコマンドを新しい行として追加します
MCP_SERVERS=(
"npx @agentdeskai/browser-tools-server"
"npx -y @modelcontextprotocol/server-sequential-thinking"
"npx your-new-server-command" # Add your new server here
)
管理スクリプトは、起動スクリプトから新しいサーバーを自動的に読み込みます。
ログの管理
スクリプトは次の方法でログを処理します。
-
自動クリーンアップ:サーバーの起動時に既存のログファイルを自動的にクリアし、ファイルが大きくなりすぎないようにします。
-
フォアグラウンドモード:デフォルトのフォアグラウンドモードでは、サーバー名を先頭に付けて、ログをターミナルに直接表示します。
-
バックグラウンドモード:バックグラウンドモードでは、各サーバー名を付けたファイル(例:
browser-tools-server.log)にログを保存します。 -
ログの表示:
./manage-mcp-servers.sh logsを使用して、バックグラウンドプロセスのログを表示します。
仕組み
- 起動スクリプトの先頭にある配列で、すべての MCP サーバーを定義します
- 環境を検出し、最適な方法でサーバーを起動します
- 管理スクリプトは、起動スクリプトからサーバーの設定を抽出します
pgrepを使って実行中のプロセスを検索し、pkillを使って停止します- ログの表示には
tail -fを使い、リアルタイムの更新を表示します
トラブルシューティング
問題が発生した場合は、次の点を確認してください。
- 両方のスクリプトが実行可能であることを確認します(
chmod +x *.sh) - 配列内のサーバーコマンドが正しいことを確認します
- 現在のディレクトリにあるログファイルを確認し、エラーメッセージを探します
- サーバーコマンドを手動で実行し、正常に動作するか確認します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。