MCP Servers について
MCP Servers は、Docker Compose で複数の MCP サーバーを構成し、ライフサイクル管理用スクリプトとローカルの MCP Inspector を備えます。Git、ファイルシステム、PostgreSQL、Memory の各サービスをまとめて運用する用途に向いています。
主な機能
- 01Docker Compose によるサーバー構成
- 02Git リポジトリ操作
- 03アクセス制御付きファイルシステム
- 04PostgreSQL のスキーマ確認
- 05永続的なナレッジグラフメモリ
- 06ローカル MCP Inspector
活用シーン
- 01複数の MCP サーバーの一括起動
- 02PostgreSQL によるデータベーススキーマ確認
- 03Inspector でのサーバー管理とデバッグ
- 04スクリプトテンプレートによるローカルサーバー追加
MCP 対応
Docker Compose を使って Git、Filesystem、PostgreSQL、Memory の MCP サーバーを実行し、ローカル管理とデバッグ用に MCP Inspector を提供します。スクリプトテンプレートでローカル実行のサーバーを追加できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー
このプロジェクトでは、Docker Compose を使用して Model Context Protocol(MCP)サーバーをセットアップします。
含まれるサーバー
- Git - Git リポジトリの読み取り、検索、操作
- Filesystem - アクセス制御を設定できる、安全なファイル操作
- PostgreSQL - スキーマの検査ができるデータベースアクセス
- Memory - ナレッジグラフベースの永続メモリシステム
- Inspector - MCP サーバーを管理、デバッグするための GUI ツール(npx を使用してローカルで実行)
セットアップ
- リポジトリを初期化します。
./scripts/init-repo.sh
これにより、以下が実行されます。
- nvm を使用して正しい Node.js バージョンを設定します
- MCP Inspector をグローバルにインストールします
- コンテナ化されたサーバーを起動します。
docker compose up -d
- MCP Inspector をローカルで起動します。
./scripts/start-inspector.sh
- MCP Inspector を停止します。
./scripts/stop-inspector.sh
- コンテナ化されたサーバーを停止します。
docker compose down
ディレクトリ構造
docker-data/- 各 MCP サーバーのデータディレクトリdocker-files/- Dockerfile のリソースscripts/- サービス管理用ユーティリティスクリプトinit-repo.sh- 正しい Node.js バージョンとパッケージでリポジトリを初期化start-inspector.sh- MCP Inspector をバックグラウンドで起動stop-inspector.sh- MCP Inspector を停止- テンプレート:
template-start-mcp-server.sh- MCP サーバーの起動スクリプトを作成するためのテンプレートtemplate-stop-mcp-server.sh- MCP サーバーの停止スクリプトを作成するためのテンプレート
設定
各サーバーは、docker-compose.yml ファイル内の環境変数で設定できます。
Inspector へのアクセス
スクリプトを使用して MCP Inspector を起動すると、http://localhost:5173 で利用できます。
ログ
- Inspector のログは
./docker-data/inspector/inspector.logに保存されます
新しい MCP サーバーの追加
ローカルで実行する(Docker 化しない)新しい MCP サーバーを追加するには、次の手順に従います。
- テンプレートスクリプトをコピーします。
cp scripts/template-start-mcp-server.sh scripts/start-newserver.sh
cp scripts/template-stop-mcp-server.sh scripts/stop-newserver.sh
chmod +x scripts/start-newserver.sh scripts/stop-newserver.sh
- 両方のスクリプトを編集し、以下を設定します。
SERVER_NAME- サーバーの名前NPX_COMMAND- サーバーを実行する NPX コマンドPORT- サーバーが実行されるポート
- サーバーパッケージをグローバルにインストールするか、NPX コマンドで指定してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。