mcpField
C
Claude MCP Manager

Claude MCP Manager

ローカル
github.com/BLTGVAI・エージェント179 週間前に更新

Claude MCP Manager について

Claude MCP Managerは、Claude DesktopのMCPサーバー設定を管理するmacOS向けコマンドラインツールです。サーバー定義と名前付きプロファイルを分け、環境変数のシークレットを解決し、直前の設定に戻せます。

主な機能

  1. 01サーバー定義とプロファイルの管理
  2. 02ClaudeのMCPサーバー設定の切り替え
  3. 03既存設定からサーバーを抽出
  4. 04環境変数プレースホルダーによるシークレット解決
  5. 05直前の設定のバックアップと復元

活用シーン

  1. 01仕事用と実験用のサーバー構成を切り替え
  2. 02Claude設定から定義を分離して整理
  3. 03シークレットを含めずプロファイルをバージョン管理

MCP 対応

Claude Desktop設定内のmcpServers項目を管理します。プロファイル適用時にサーバー構成を置き換え、Claudeを再起動します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Claude MCP Manager

Claude Desktop アプリケーション用のさまざまな mcpServers 設定セット(プロファイル)を定義、管理、切り替えるための macOS 向けコマンドラインツールです。

目的

Claude デスクトップアプリは、mcpServers エンドポイントを含む設定を、~/Library/Application Support/Claude/claude_desktop_config.json の JSON ファイルに保存します。このツールを使うと、個々のサーバー設定を定義し、名前を付けたプロファイル(例:「default」、「work」、「experimental」)にまとめることができます。プロファイルを有効にすると、メインの Claude 設定ファイル内の mcpServers ブロックが、そのプロファイルで定義されたサーバーに更新され、変更を適用するために Claude が自動的に再起動します。サーバー定義を分離し、シークレットに環境変数を利用することで(「仕組み」を参照)、機密情報を漏らさずにサーバー設定を簡単に共有したり、プロファイルをバージョン管理にコミットしたりできます。

クイックインストール(推奨)

macOS のターミナルで次のコマンドを実行します。

curl -fsSL https://raw.githubusercontent.com/BLTGV/claude-mcp-manager/main/install.sh | sh

このコマンドはインストーラースクリプトをダウンロードして実行し、依存関係の確認、ファイルのコピー、コマンドラインツールのセットアップを行います。

必要条件

  • macOS: スクリプトは macOS 固有のパスとコマンド(pgrep、kill、open)を使用します。Windows および Linux では動作しません。
  • jq: スクリプトは JSON 処理に jq を使用します。Homebrew からインストールしてください:brew install jq。
  • bash: 正規表現マッチング(=~)などの機能を使うため、ある程度新しいバージョンの bash(>= 3.2)が必要です。macOS 標準の bash で十分です。

インストール

手動インストール
  1. リポジトリをクローンするか、ソースコードをダウンロードします。
  2. ターミナルでプロジェクトディレクトリに移動します。
  3. インストーラーを実行可能にします:chmod +x install.sh
  4. インストーラーを実行します:
    ./install.sh
    
    • スクリプトは /usr/local/lib/claude-mcp-manager へのインストールと、/usr/local/bin へのシンボリックリンクの作成を試みます。書き込み権限がない場合は sudo が必要になることがあります。
    • /usr/local に書き込めない場合は、$HOME/.local/lib と $HOME/.local/bin にフォールバックします。
    • 選択された bin ディレクトリが $PATH に含まれていない場合、インストーラーが通知し、追加方法を案内します。

仕組み

  • 設定ディレクトリ: すべてのデータを ~/.config/claude/ に保存します。
  • サーバーディレクトリ: 個々のサーバー定義を ~/.config/claude/servers/ 内の .json ファイルとして保存します。
  • プロファイルディレクトリ: サーバー名のリストを含むプロファイルを、~/.config/claude/profiles/ 内の .json ファイルとして保存します。
    • 各プロファイルファイルは次のような形式です:{\"servers\": [\"server1_name\", \"server2_name\"]}
  • 対象ファイル: スクリプトは、正式な Claude 設定ファイル ~/Library/Application Support/Claude/claude_desktop_config.json 内の mcpServers キーを変更します。
  • シークレット(.env ファイル): API キーなどの機密値を ~/.config/claude/.env に保存できます。サーバー定義ファイルでは、{{ENV:YOUR_API_KEY}} や {{DOTENV:YOUR_API_KEY}} のようなプレースホルダーを使ってこれらを参照できます。プロファイルを有効にすると、これらの値が解決されます。
  • 追跡(loaded ファイル): スクリプトは、現在有効なプロファイルの名前を ~/.config/claude/loaded に記録します。
  • バックアップ(last.json): 新しいプロファイルを適用する前に、スクリプトは対象ファイルの現在の mcpServers ブロックを ~/.config/claude/last.json に保存します。これにより、last コマンドを使って簡単にロールバックできます。
  • 初回実行: インストーラーは claude-mcp-manager server list を実行し、インストールが正常に完了したときに設定ディレクトリが作成されるようにします。

使用方法

claude-mcp-manager <command | profile_name | option>
主なコマンド
  • <profile_name>: 指定したプロファイルを有効にします。プロファイルに記載されたサーバー定義を読み込み、シークレットを解決し、mcpServers ブロックを構築して、現在のブロックをメイン設定ファイルにバックアップし、新しいブロックを書き込み、Claude を再起動します。
  • last: last.json から、前回のプロファイル有効化前にアクティブだった mcpServers ブロックを復元し、Claude を再起動します。
  • server <subcommand>: サーバー定義を管理します。詳細については、claude-mcp-manager server help を実行してください。
  • profile <subcommand>: プロファイルを管理します。詳細については、claude-mcp-manager profile help を実行してください。
サーバーのサブコマンド(claude-mcp-manager server ...)
  • list: ~/.config/claude/servers/ にある、利用可能なサーバー定義ファイルを一覧表示します。
  • show <name>: 指定したサーバー定義ファイルの JSON 内容を表示します。
  • add <name> --file <path>: <path> の内容をコピーして、新しいサーバー定義を追加します。
  • add <name> --json '{\"key\":\"value\"}': 指定した JSON 文字列を使って、新しいサーバー定義を追加します。
  • edit <name>: 指定したサーバー定義ファイルを $EDITOR(または vim/nano などのデフォルトエディター)で開きます。
  • remove <name>: 指定したサーバー定義ファイルを削除します(確認を求められます)。
  • extract [--profile <name>]: メインの Claude 設定ファイルから mcpServers ブロックを読み込み、各サーバーを ~/.config/claude/servers/ に個別のファイルとして保存します。任意で、抽出したすべてのサーバーを記載した指定のプロファイル <name> を作成または更新できます。
プロファイルのサブコマンド(claude-mcp-manager profile ...)
  • list: ~/.config/claude/profiles/ にある、利用可能なプロファイルファイルを一覧表示します。
  • show <name>: 指定したプロファイルファイルに含まれるサーバー名を一覧表示し、対応するサーバー定義ファイルが存在するかどうかを示します。
  • create <name>: 新しい空のプロファイルファイルを作成します。
  • copy <src> <dest>: 既存のプロファイルファイルを新しい名前でコピーします。
  • edit <name>: 指定したプロファイルファイルを $EDITOR(または vim/nano などのデフォルトエディター)で開き、サーバーリストを手動で編集します。
  • add <profile> <server...>: 指定したプロファイルの "servers" 配列に、1 つ以上のサーバー名を追加します。
  • remove <profile> <server...>: 指定したプロファイルの "servers" 配列から、1 つ以上のサーバー名を削除します。
  • delete <name>: 指定したプロファイルファイルを削除します(確認を求められます)。
オプション
  • help, -h, --help: メインのヘルプメッセージを表示します。
  • version, -v: スクリプトのバージョンを表示します。

謝辞

このプロジェクトでは、Eyal Toledano(@eyaltoledano)と Ralph Ecom(@RalphEcom)による AI 駆動のタスク管理システム、claude-task-master を活用し、上記の機能を定義、管理、実装しました。

シェル補完(任意)

Bash および Zsh シェルではタブ補完を利用できます。

まず、claude-mcp-manager がインストールされ、PATH からアクセスできることを確認してください。

Bash
  1. bash-completion@2をインストールする: まだインストールしていない場合は、Homebrewを使って最新のBash補完システムをインストールします:
    brew install bash-completion@2
    
  2. .bash_profileに追加する: brew info bash-completion@2で表示される手順に従い、必要な行を~/.bash_profile(または~/.bashrc)に追加します。通常は次のようになります:
    # Add the following line (or similar) to ~/.bash_profile
    export BASH_COMPLETION_COMPAT_DIR="$(brew --prefix)/etc/bash_completion.d"
    [[ -r "$(brew --prefix)/etc/profile.d/bash_completion.sh" ]] && . "$(brew --prefix)/etc/profile.d/bash_completion.sh"
    
  3. スクリプトを生成してインストールする: 次のコマンドを実行して補完スクリプトを生成し、適切なディレクトリに配置します:
    # Determine the completion directory
    COMPLETION_DIR="$(brew --prefix)/etc/bash_completion.d"
    # Ensure the directory exists
    mkdir -p "$COMPLETION_DIR"
    # Generate the script
    claude-mcp-manager completion bash > "${COMPLETION_DIR}/claude-mcp-manager"
    
  4. シェルを再読み込みする: 新しいターミナルウィンドウを開くか、source ~/.bash_profileを実行します。
Zsh

Zshは補完機能を標準でサポートしています。

  1. compinitを確認する: ~/.zshrcファイルにautoload -U compinit && compinitが含まれていることを確認します(通常はファイルの先頭または末尾付近にあります)。
  2. 補完ディレクトリを選択する: Zshの補完ファイルは、通常、$fpath変数に登録されているディレクトリに保存されます。ユーザーごとの一般的な保存先は~/.zsh/completionです。存在しない場合は作成します:
    mkdir -p ~/.zsh/completion
    
  3. ディレクトリをfpathに追加する: compinitを呼び出す前に、このディレクトリが~/.zshrcのZsh関数パスに追加されていることを確認します:
    # Add near the top of ~/.zshrc
    fpath=(~/.zsh/completion $fpath)
    
    # ... other zsh config ...
    
    # Ensure compinit is loaded
    autoload -U compinit && compinit
    
  4. スクリプトを生成してインストールする: 次のコマンドを実行して補完スクリプトを生成します。ファイル名がアンダースコア(_)で始まる点に注意してください:
    claude-mcp-manager completion zsh > ~/.zsh/completion/_claude-mcp-manager
    
  5. シェルを再読み込みする: 新しいターミナルウィンドウを開くか、source ~/.zshrcを実行します。

インストール後は、コマンド、サブコマンド、プロファイル名、サーバー名をタブ補完できるようになります。

アンインストール

アンインストールするには、次のコマンドを実行します:

claude-mcp-manager uninstall

これにより、スクリプトとコマンドのシンボリックリンクが削除されます。最初に確認を求められます。

すべてのプロファイル、サーバー定義、ログ、(秘密情報が含まれている可能性がある).envファイルが格納されている設定ディレクトリ(~/.config/claude)も削除するには、次を使用します:

claude-mcp-manager uninstall --remove-config

警告: 設定ディレクトリを削除すると元に戻せず、別途確認が必要です。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。