MCP マルチサーバ設定(5 プリセット全部入り)

filesystem、github、postgres、brave-search、fetch を 1 つの mcpServers に統合します。各エントリは独立しており、クライアントはサーバごとに 1 プロセスを起動します。

Composition

詳細な説明

複数サーバの組み合わせ

mcpServers 配下のエントリはそれぞれ別の子プロセスです。サーバを追加しても他のサーバの動作には影響しません — stdio で完全に分離されています。

フル設定

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/me/projects"
      ]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxx" }
    },
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-postgres",
        "postgresql://readonly:pw@localhost/dev"
      ]
    },
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-brave-search"],
      "env": { "BRAVE_API_KEY": "BSA_xxx" }
    },
    "fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    }
  }
}

起動コスト

クライアント起動時に 5 プロセス全部を立ち上げます。-y 付きで npm キャッシュが空だと初回 30〜60 秒の待ちが発生します。2 回目以降は npm/uvx キャッシュにより 1〜3 秒/サーバで起動します。

ツール名の衝突

各サーバはサーバ名をプレフィックスとしてツールを公開します(filesystem.readgithub.search_issuespostgres.query など)。同名ツールを 2 サーバが公開しても衝突しません。モデルが文脈から適切な方を選びます。

リソース面

各サーバは Node.js または Python のプロセスで RAM を 50〜150MB 占有します。5 サーバで合計約 500MB です。アクティブに使わないものは外して、起動を速くしバッテリーを守ります。

何がロードされたかの確認

Claude Desktop では入力欄の右下にあるプラグアイコンをクリックすると、接続成功・失敗したサーバが見えます。失敗の多くは env 変数不足かパス間違いです — トラブルシューティング を参照してください。

ユースケース

Claude Desktop を日常的なワークスペースとして使い、「Issue #123 が言及しているバグをコードベースから探し、postgres の orders テーブルに該当行があるか確認し、関連 CVE を Web 検索する」を 1 つの会話で完結させる用途です。

試してみる — MCP Server Config Generator

フルツールを開く