Skip to content

原文(日本語に翻訳)

ローカルとclaude.aiコネクター経由の両方で設定されたMCPサーバーが重複排除されるようになりました。ローカル設定が優先されます。

原文(英語)

MCP servers configured both locally and via claude.ai connectors are now deduplicated — the local config wins

概要

同じMCPサーバーがローカルの設定ファイル(settings.json)とclaude.aiのコネクター設定の両方に存在する場合、自動的に重複が排除されるようになりました。この際、ローカルの設定が優先されます。これにより、意図しない二重接続やコンフリクトが防止されます。

基本的な使い方

特別な操作は不要です。ローカル設定とclaude.aiコネクター設定に同じサーバーがある場合、自動的にローカル設定が使用されます。

json
// settings.json(ローカル設定)
{
  "mcpServers": {
    "my-database": {
      "command": "npx",
      "args": ["@company/mcp-database"],
      "env": {
        "DB_URL": "postgresql://localhost:5432/devdb"  // ← こちらが優先される
      }
    }
  }
}
json
// claude.ai コネクター設定(クラウド側)
{
  "mcpServers": {
    "my-database": {
      "command": "npx",
      "args": ["@company/mcp-database"],
      "env": {
        "DB_URL": "postgresql://prod.example.com:5432/proddb"  // ← 排除される
      }
    }
  }
}

実践例

開発環境と本番環境の使い分け

json
// ローカル settings.json
// 開発環境の設定でローカルDBに接続
{
  "mcpServers": {
    "database": {
      "command": "mcp-pg",
      "env": {
        "POSTGRES_URL": "postgresql://localhost:5432/dev"
      }
    }
  }
}
// claude.ai コネクターに本番DBの設定があっても、
// ローカル開発時はこちらの設定が使われる

チーム共有設定とローカルオーバーライド

json
// claude.ai コネクター(チーム共有設定)
{
  "mcpServers": {
    "github": {
      "command": "mcp-github",
      "env": { "GITHUB_TOKEN": "team-token-xxx" }
    }
  }
}

// ローカル settings.json(個人トークンでオーバーライド)
{
  "mcpServers": {
    "github": {
      "command": "mcp-github",
      "env": { "GITHUB_TOKEN": "my-personal-token-yyy" }
    }
  }
}
// 重複排除によりローカル(個人トークン)が優先される

重複を避けるためのベストプラクティス

json
// 意図的に分けたい場合はサーバー名を変える
{
  "mcpServers": {
    "github-local": {    // ← ローカル専用
      "command": "mcp-github",
      "env": { "GITHUB_TOKEN": "${LOCAL_GITHUB_TOKEN}" }
    }
    // github(コネクター設定)はそのまま有効
  }
}

注意点

  • 重複判定はMCPサーバーの名前(キー) で行われます
  • ローカル設定が必ずコネクター設定より優先されます(マージではなく置換)
  • コネクター設定にしかないサーバーはそのまま有効です
  • この動作により、開発環境でローカル設定をテストしながら、本番設定はコネクター側に保持するという運用が自然にできます

関連情報