MCP

Claude Code MCP 설정: 글로벌 vs 프로젝트별 설정

blogger903 2025. 8. 7. 14:14
728x90

개요

Claude Code에서 MCP(Model Context Protocol) 설정 시 글로벌 설정과 프로젝트별 설정의 우선순위와 동작 방식에 대한 가이드입니다.

MCP 설정 방법

  1. Claude Desktop에서 MCP 설정
  2. 먼저 Claude Desktop에서 MCP 서버를 설정합니다.
  3. Claude Code에서 설정 가져오기설정 우선순위
  4. 우선순위 규칙
  5. claude mcp add-from-claude-desktop
    이 명령어를 사용하여 Claude Desktop의 MCP 설정을 Claude Code로 가져올 수 있습니다.
  6. 프로젝트별 설정 (높은 우선순위)
  7. 글로벌/사용자 설정 (낮은 우선순위)
  8. 중요한 발견사항
  • 글로벌 설정과 프로젝트별 설정에 같은 이름의 MCP 서버가 있으면 글로벌 설정이 우선됩니다
  • 프로젝트별 설정을 제대로 적용하려면 글로벌 설정에서 해당 MCP 서버를 제거해야 합니다테스트 시나리오
  • 실제 테스트 결과
  1. Claude Desktop(글로벌)에 MySQL MCP 설정
  2. 프로젝트 루트에 .mcp.json에 MySQL MCP 설정
  3. 결과: 글로벌 설정의 MySQL MCP가 사용됨글로벌 설정에서 MySQL MCP 서버를 제거한 후 → 프로젝트별 MCP 설정으로 동작
  4. 프로젝트별 MCP 설정 방법
  5. 해결방법
  6. 프로젝트 루트에 .mcp.json 파일 생성
  {
    "mcpServers": {
      "mcp_server_mysql": {
        "command": "/Users/username/.nvm/versions/node/v20.19.3/bin/node",
        "args": [
          "/path/to/mcp-server-mysql/dist/index.js"
        ],
        "env": {
          "MYSQL_HOST": "your-host",
          "MYSQL_PORT": "3306",
          "MYSQL_USER": "username",
          "MYSQL_PASS": "password",
          "MYSQL_DB": "database_name",
          "ALLOW_INSERT_OPERATION": "false",
          "ALLOW_UPDATE_OPERATION": "false",
          "ALLOW_DELETE_OPERATION": "false"
        }
      }
    }
  }
  1. 설정 형식
  • Claude Desktop의 MCP 설정과 동일한 JSON 형식 사용
  • mcpServers 객체 내에 서버 설정을 추가서버 이름 충돌 방지
  • 주의사항
  • 글로벌과 프로젝트별 설정에서 다른 서버 이름 사용 권장
  • 예: 글로벌 mysql_global, 프로젝트별 mysql_project
  • 설정 적용 확인
  • 설정 변경 후 Claude 재시작 필요
  • MCP 연결 상태 확인으로 올바른 설정이 적용되었는지 검증프로젝트별 MCP 설정을 사용하려면 글로벌 설정에서 동일한 이름의 MCP 서버를 제거하는 것이 핵심입니다. 이를 통해 프로젝트마다 다른 데이터베이스나 서비스에 연결할 수 있어 개발 환경을 유연하게 구성할 수
    있습니다.
  • 참고:
    https://rudaks.tistory.com/entry/claude-code-%EB%B2%88%EC%97%AD-Claude-Code%EC%9A%A9-MCP-%EC%84%A4%EC%A0%95-Set-up-MCP-for-Claude-Code
  • 결론