MCP 문서 관리

메뉴

문서 정보

최종 수정일:
2025-05-13 00:59

링크된 문서

Codacy MCP 서버

Codacy MCP 서버

Codacy Logo

개요

Codacy MCP 서버는 Codacy API와 Model Context Protocol (MCP) 간의 통합을 제공하는 공식 서버입니다. Codacy는 코드 품질, 보안, 테스트 커버리지 및 복잡성을 자동으로 분석하는 도구로, 이 MCP 서버를 통해 AI 어시스턴트가 저장소, 파일, 품질, 커버리지, 보안 등에 접근할 수 있습니다. 이를 통해 코드 품질 문제 분석, 보안 취약점 검토, 코드 중복 식별 등의 작업을 자연어 명령으로 쉽게 수행할 수 있습니다.

특징

  • 조직 및 저장소 관리: 조직 목록 조회, 조직 내 저장소 목록 조회, 분석 정보가 포함된 저장소 정보 조회
  • 코드 품질 및 분석: 저장소의 코드 품질 문제 목록 조회 및 필터링
  • 파일 관리 및 분석: 저장소 내 파일 목록 조회, 파일의 문제 목록 조회, 파일 커버리지 정보 조회
  • 보안 분석: 조직 및 특정 저장소의 보안 항목/문제/취약점/발견 사항 목록 조회
  • 풀 리퀘스트 분석: 저장소의 풀 리퀘스트 목록 조회, 특정 풀 리퀘스트 세부 정보 조회
  • 도구 및 패턴 관리: Codacy에서 사용 가능한 모든 코드 분석 도구 목록 조회, 특정 패턴 정의 조회
  • CLI 분석: Codacy CLI를 사용하여 로컬에서 품질 분석 실행

API

리소스

  • 조직(Organizations)
  • 저장소(Repositories)
  • 코드 품질 문제(Code Quality Issues)
  • 파일(Files)
  • 보안 항목(Security Items)
  • 풀 리퀘스트(Pull Requests)
  • 도구 및 패턴(Tools and Patterns)

도구

조직 및 저장소 관리

  • codacy_list_organizations: 페이지네이션을 지원하는 조직 목록을 조회합니다
  • 입력: 페이지 매개변수(선택적)
  • 출력: 조직 목록
  • codacy_list_organization_repositories: 페이지네이션을 지원하는 조직 내 저장소 목록을 조회합니다
  • 입력: 조직 이름, 페이지 매개변수(선택적)
  • 출력: 저장소 목록
  • codacy_get_repository_with_analysis: 등급, 문제, 중복, 복잡성 및 커버리지에 대한 지표를 포함한 분석 정보가 있는 저장소를 조회합니다
  • 입력: 저장소 이름
  • 출력: 저장소 분석 정보

코드 품질 및 분석

  • codacy_list_repository_issues: 저장소의 코드 품질 문제를 나열하고 필터링합니다. 이 도구는 일반적인 코드 품질 문제(예: 모범 사례, 성능, 복잡성, 스타일)를 조사하는 주요 도구입니다(보안 문제 제외). 보안 관련 문제는 대신 SRM 항목 도구를 사용하세요.
  • 입력: 저장소 이름, 다양한 필터 매개변수(심각도, 카테고리, 언어 등)
  • 출력: 코드 품질 문제 목록
  • 주요 사용 사례:
    • 코드 품질 감사
    • 기술 부채 평가
    • 스타일 가이드 준수 확인
    • 성능 문제 조사
    • 복잡성 분석

파일 관리 및 분석

  • codacy_list_files: 페이지네이션을 지원하는 저장소 내 파일 목록을 조회합니다
  • 입력: 저장소 이름, 페이지 매개변수(선택적)
  • 출력: 파일 목록
  • codacy_get_file_issues: 저장소 내 파일의 문제 목록을 조회합니다
  • 입력: 저장소 이름, 파일 경로
  • 출력: 파일의 문제 목록
  • codacy_get_file_coverage: 저장소 브랜치의 헤드 커밋에 있는 파일의 커버리지 정보를 조회합니다
  • 입력: 저장소 이름, 파일 경로, 브랜치 이름(선택적)
  • 출력: 파일 커버리지 정보
  • codacy_get_file_clones: 저장소 내 파일의 중복 클론(동일하거나 매우 유사한 코드 세그먼트) 목록을 조회합니다
  • 입력: 저장소 이름, 파일 경로
  • 출력: 파일의 중복 클론 목록
  • codacy_get_file_with_analysis: 등급, 문제, 중복, 복잡성 및 커버리지에 대한 지표를 포함한 파일의 상세 분석 정보를 조회합니다
  • 입력: 저장소 이름, 파일 경로
  • 출력: 파일 분석 정보

보안 분석

  • codacy_search_organization_srm_items: 조직 전체에서 보안 항목/문제/취약점/발견 사항을 나열하는 주요 도구입니다. 결과는 Codacy의 보안 및 위험 관리(SRM) 대시보드와 관련이 있습니다.
  • 입력: 조직 이름, 다양한 필터 매개변수
  • 출력: 보안 항목 목록
  • 지원하는 보안 분석 유형:
    • SAST(코드 스캐닝)
    • Secrets(비밀 스캐닝)
    • SCA(종속성 스캐닝)
    • IaC(인프라스트럭처-코드 스캐닝)
    • CICD(CI/CD 스캐닝)
    • DAST(동적 애플리케이션 보안 테스팅)
    • PenTesting(침투 테스팅)
  • codacy_search_repository_srm_items: 특정 저장소의 보안 항목/문제/취약점/발견 사항을 나열합니다
  • 입력: 저장소 이름, 다양한 필터 매개변수
  • 출력: 보안 항목 목록

풀 리퀘스트 분석

  • codacy_list_repository_pull_requests: 사용자가 액세스할 수 있는 저장소의 풀 리퀘스트를 나열합니다
  • 입력: 저장소 이름, 페이지 매개변수(선택적)
  • 출력: 풀 리퀘스트 목록
  • codacy_get_repository_pull_request: 특정 풀 리퀘스트에 대한 상세 정보를 조회합니다
  • 입력: 저장소 이름, 풀 리퀘스트 ID
  • 출력: 풀 리퀘스트 세부 정보
  • codacy_list_pull_request_issues: 풀 리퀘스트에서 발견된 문제 목록(새로운 문제 또는 수정된 문제)을 반환합니다
  • 입력: 저장소 이름, 풀 리퀘스트 ID
  • 출력: 풀 리퀘스트 문제 목록
  • codacy_get_pull_request_files_coverage: 풀 리퀘스트의 모든 파일에 대한 차이 커버리지 정보를 조회합니다
  • 입력: 저장소 이름, 풀 리퀘스트 ID
  • 출력: 풀 리퀘스트 파일 커버리지 정보
  • codacy_get_pull_request_git_diff: 풀 리퀘스트의 사람이 읽을 수 있는 Git 차이를 반환합니다
  • 입력: 저장소 이름, 풀 리퀘스트 ID
  • 출력: Git 차이 정보

도구 및 패턴 관리

  • codacy_list_tools: Codacy에서 사용 가능한 모든 코드 분석 도구를 나열합니다
  • 입력: 없음
  • 출력: 도구 목록
  • codacy_list_repository_tools: 저장소에 대한 분석 도구 설정 및 사용 가능한 도구를 조회합니다
  • 입력: 저장소 이름
  • 출력: 저장소 도구 설정 및 사용 가능한 도구 목록
  • codacy_get_pattern: 특정 패턴의 정의를 조회합니다
  • 입력: 패턴 ID
  • 출력: 패턴 정의
  • codacy_list_repository_tool_patterns: 저장소에 사용 가능한 도구의 패턴을 나열합니다
  • 입력: 저장소 이름, 도구 이름
  • 출력: 도구 패턴 목록
  • codacy_get_issue: 특정 문제에 대한 상세 정보를 조회합니다
  • 입력: 문제 ID
  • 출력: 문제 세부 정보

CLI 분석

  • codacy_cli_analyze: Codacy CLI를 사용하여 로컬에서 품질 분석을 실행합니다
  • 입력: 분석할 파일 또는 디렉터리, 사용할 도구, 기타 설정
  • 출력: 분석 결과
  • 기능:
    • 특정 파일 또는 전체 디렉터리 분석
    • 특정 도구 또는 모든 사용 가능한 도구 사용
    • 예약된 분석을 기다리지 않고 즉시 결과 얻기
    • Codacy 설정을 기반으로 수정 사항 적용

사용 방법

사전 요구사항

  • git
  • Node.js
  • Codacy 계정 API 토큰

설치 및 구성

Codacy 계정 API 토큰 얻기

Cursor, Windsurf 및 기타 환경에 설치

MCP 서버를 연결하는 환경에 따라 다음 방법을 사용할 수 있습니다: - Cursor: .cursor/mcp.json 파일 편집 - Windsurf: .codeium/windsurf/mcp_config.json 파일 편집 - Claude Desktop: claude_desktop_config.json 파일 편집

다음을 해당 파일에 추가하세요:

{
  "mcpServers": {
    "codacy": {
      "command": "npx",
      "args": ["-y", "@codacy/codacy-mcp"],
      "env": {
        "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>",
        "CODACY_CLI_VERSION": "<VERSION>"
      }
    }
  }
}

VS Code와 Copilot에 설치

VS Code에서 Copilot에 MCP 서버를 연결하려면 IDE의 전역 설정에 다음을 추가하세요:

{
  "mcp": {
    "inputs": [],
    "servers": {
      "codacy": {
        "command": "npx",
        "args": ["-y", "@codacy/codacy-mcp"],
        "env": {
          "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>",
          "CODACY_CLI_VERSION": "<VERSION>"
        }
      }
    }
  }
}

사용자 설정 파일은 다음 위치에서 열 수 있습니다: - macOS: ~/Library/Application Support/Code/User/settings.json - Windows: %APPDATA%\Code\User\settings.json - Linux: ~/.config/Code/User/settings.json

CODACY_ACCOUNT_TOKEN 값을 토큰으로 업데이트하는 것을 잊지 마세요. 에이전트 모드를 활성화했는지 확인하세요: vscode://settings/chat.agent.enabled

사용 예시

  • "내 조직의 모든 저장소 목록을 보여줘"
  • "이 저장소의 코드 품질 문제를 분석해줘"
  • "이 파일의 커버리지 정보를 보여줘"
  • "우리 조직의 보안 취약점을 찾아줘"
  • "이 풀 리퀘스트에서 발견된 문제를 나열해줘"
  • "이 저장소에서 사용 가능한 코드 분석 도구를 보여줘"
  • "이 파일의 코드 중복을 검사해줘"

CLI 지원

Codacy CLI를 사용하려면 설치가 필요합니다. CODACY_CLI_VERSION 변수는 선택 사항이며, 특정 버전의 CLI를 사용하려는 경우에만 지정하면 됩니다. Codacy CLI를 통해 로컬에서 분석을 실행하고 즉각적인 결과를 얻을 수 있습니다.

노드 문제 해결

NVM과 Claude Desktop을 함께 사용할 때 NPX가 작동하지 않을 수 있습니다. 이 경우 먼저 MCP 서버를 전역적으로 설치한 다음 Node를 직접 사용하세요:

npm install -g @codacy/codacy-mcp

그런 다음 설정 파일을 다음과 같이 수정하세요:

{
  "mcpServers": {
    "codacy": {
      "command": "/Users/yourusername/.nvm/versions/node/vXX.X.X/bin/node",
      "args": ["/path-to/codacy-mcp/dist/index.js"],
      "env": {
        "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>",
        "CODACY_CLI_VERSION": "<VERSION>"
      }
    }
  }
}

연결된 구성 요소

참조 링크