Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

GitHub MCP 서버 사용

GitHub MCP(모델 컨텍스트 프로토콜) 서버를 사용하여 Copilot 채팅을 확장하는 방법을 알아봅니다.

참고 항목

GitHub MCP 서버는 현재 공개 미리 보기 버전이며 변경될 수 있습니다.

GitHub MCP 서버 정보

GitHub MCP 서버는 GitHub에서 제공 및 유지 관리하는 MCP(모델 컨텍스트 프로토콜) 서버입니다. MCP를 사용하면 AI 기능을 다른 도구 및 서비스와 통합하여 컨텍스트에 맞는 AI 지원을 제공하여 개발 환경을 향상시킬 수 있습니다.

MCP에 대한 자세한 내용은 공식 MCP 설명서를 참조하세요.

Visual Studio Code 또는 원격 MCP를 지원하는 다른 편집기를 통해 원격으로 GitHub MCP 서버에 액세스할 수 있으며, 또한 MCP와 호환되는 편집기에서 로컬로 실행할 수 있습니다. 이를 통해, 호스팅된 솔루션의 편리함과 자체 호스팅 설정의 사용자 지정 기능 중에서 선택하면 됩니다.

원격 GitHub MCP 서버를 활용하려면 몇 가지 단계를 통해 로컬 설정 없이 수행할 수 있습니다. 이는 로컬 MCP 서버를 관리하는 번거로움 없이 GitHub의 AI 기능을 빠르게 활용하려는 사용자에게 특히 유용합니다.

GitHub MCP 서버를 로컬에서 실행하려면 설정을 좀 더 추가해야 하지만 AI 상호 작용에 대한 사용자 지정 및 제어를 강화할 수 있는 장점이 있습니다.

GitHub MCP 서버를 사용하여 다음을 수행할 수 있습니다.

  • 코드 관련 작업을 자동화하고 간소화합니다.
  • GitHub의 컨텍스트 및 AI 기능을 활용하려면 타사 도구(예: Cursor, Windsurf 또는 향후 통합)를 연결합니다.
  • 로컬 설정 없이도 모든 디바이스에서 작동하는 클라우드 기반 워크플로를 활성화하세요.

가용성

현재 Visual Studio Code, JetBrains IDEs, XCode 등의 클라이언트에서 로컬 MCP 서버에 대한 광범위한 지원이 제공됩니다.

원격 MCP 서버에 대한 지원이 확대되고 있으며, Visual Studio Code(OAuth 또는 PAT 포함), Visual Studio(PAT만 해당), Windsurf(PAT만 해당), Cursor(PAT만 해당)와 같은 편집기에서 이미 이 기능을 제공하고 있습니다.

기본 설정 편집기가 원격 MCP 서버를 지원하는지 확인하려면 해당 편집기의 설명서를 확인하세요.

필수 조건

  • GitHub 계정
  • Visual Studio Code 또는 다른 MCP 호환 편집기

Visual Studio Code에서 GitHub MCP 서버 설정

아래 지침은 Visual Studio Code에서 GitHub MCP 서버를 설정하는 방법에 대해 설명합니다. 다른 MCP 호환 편집기도 비슷한 단계를 거치지만 정확한 프로세스는 다를 수 있습니다.

사용자의 필요 사항 및 기본 설정에 따라 GitHub MCP 서버를 원격 또는 로컬로 설정할 수 있습니다. GitHub MCP 서버를 구성할 수도 있습니다.

  • 특정 리포지토리입니다. 이를 통해 Visual Studio Code에서 프로젝트를 여는 모든 사용자와 MCP 서버를 공유할 수 있습니다. 이렇게 하려면 리포지토리의 루트에 .vscode/mcp.json 파일을 만듭니다.
  • Visual Studio Code의 개인 인스턴스입니다. 구성된 MCP 서버에 액세스 권한이 있는 유일한 사용자가 됩니다. 이렇게 하려면 Visual Studio Code에서 settings.json 파일에 구성을 추가합니다. 이러한 방식으로 구성된 MCP 서버는 모든 작업 영역에서 사용할 수 있습니다.

원격 GitHub MCP 서버는 기본적으로 원클릭 OAuth 인증을 사용하지만, 인증을 위해 PAT(personal access token)를 사용하도록 수동으로 구성할 수도 있습니다. OAuth를 사용하면 MCP 서버는 개인 계정과 동일한 액세스 권한을 갖게 됩니다. PAT를 사용하면 MCP 서버는 PAT에서 부여한 범위에 액세스할 수 있습니다.

참고 항목

PAT 제한이 있는 Enterprise Managed User인 경우 PAT 인증을 사용할 수 없습니다. OAuth 액세스 정책 제한이 있는 경우 각 클라이언트에 대한 OAuth 앱을 활성화해야 합니다(Visual Studio Code 및 Visual Studio 제외).

OAuth를 사용하는 원격 MCP 서버 구성

참고 항목

원격 GitHub MCP 서버는 GitHub Enterprise Server 사용자가 사용할 수 없습니다. GitHub Enterprise Server를 사용하면 GitHub MCP 서버를 로컬로 설치할 수 있습니다. 로컬 MCP 서버 설정을 참조하세요.

OAuth를 이용하여 원격 GitHub MCP 서버를 사용하려면 PAT를 만들거나 추가 소프트웨어를 설치할 필요가 없습니다. Visual Studio Code에서 직접 설정할 수 있습니다. 읽기 전용 모드 또는 전체 읽기/쓰기 액세스 권한으로 개별 도구 집합을 설치하여 서버의 기능을 사용자의 특정 요구 사항에 맞게 조정할 수도 있습니다. 자세한 내용은 도구 구성을 참조하세요.

  1. Visual Studio Code에서 Ctrl+Shift+P(Windows/Linux) / Command+Shift+P(Mac)를 눌러 명령 팔레트를 엽니다.

  2. mcp: add server를 입력한 다음, Enter 키를 누릅니다.

  3. 목록에서 HTTP (HTTP or Server-Sent Events) 를 선택합니다.

  4. Server URL 필드에 https://api.githubcopilot.com/mcp/를 입력하고 Enter 키를 누릅니다.

  5. Enter Server ID에서 Enter 키를 눌러 기본 서버 ID 또는 사용자 지정 서버 ID를 사용할 수 있습니다.

  6. Choose where to save the configuration에서 MCP 서버 구성을 저장할 위치를 선택합니다.

    • Visual Studio Code는 편집기에서 선택된 파일에 구성을 열어 추가하거나, 해당 파일이 없는 경우 새 파일을 만듭니다.
  7. Visual Studio Code 팝업에서 OAuth로 MCP 서버에 권한을 부여하려면 Allow를 클릭하고 목록에서 개인 계정을 선택합니다.

PAT를 사용하는 원격 MCP 서버 구성

PAT를 사용하여 원격 GitHub MCP 서버를 구성하려면 MCP 서버에 부여하려는 액세스에 필요한 범위가 포함된 PAT를 만들어야 합니다. 자세한 내용은 개인용 액세스 토큰 관리을(를) 참조하세요.

PAT를 사용하여 인증을 받으려면 Visual Studio Code에서 MCP 서버를 수동으로 구성해야 합니다.

  1. Visual Studio Code에서 Ctrl+Shift+P(Windows/Linux) / Command+Shift+P(Mac)를 눌러 명령 팔레트를 엽니다.

  2. mcp: add server를 입력한 다음, Enter 키를 누릅니다.

  3. 목록에서 HTTP (HTTP or Server-Sent Events) 를 선택합니다.

  4. Server URL 필드에 https://api.githubcopilot.com/mcp/를 입력하고 Enter 키를 누릅니다.

  5. Enter Server ID에서 Enter 키를 눌러 기본 서버 ID 또는 사용자 지정 서버 ID를 사용할 수 있습니다.

  6. Choose where to save the configuration에서 MCP 서버 구성을 저장할 위치를 선택합니다.

    • Visual Studio Code는 편집기에서 선택된 파일에 구성을 열어 추가하거나, 해당 파일이 없는 경우 새 파일을 만듭니다.
  7. Visual Studio Code 팝업에서 OAuth 인증을 거부하려면 Cancel을 클릭합니다.

  8. PAT를 사용하려면 구성 파일을 수동으로 편집해야 합니다. 구성 파일에서 url 줄의 끝에 다음을 추가합니다.

    JSON
        ,
          "headers": {
            "Authorization": "Bearer ${input:github_token}"
          }
        },
      },
      "inputs": [
        {
          "id": "github_token",
          "type": "promptString",
          "description": "GitHub Personal Access Token",
          "password": true
        }
      ]
    }
    
  9. 파일에 "Restart" 단추가 나타납니다. "Restart"를 클릭하여 새 구성으로 MCP 서버를 다시 시작합니다.

    구성 파일의 MCP 서버 다시 시작 단추 스크린샷 "Restart" 단추가 진한 주황색 윤곽선으로 표시되어 있습니다.

  10. 명령 팔레트에 GitHub 토큰을 입력하라는 메시지가 표시됩니다. 이전에 만든 PAT를 입력하고 Enter를 누릅니다.

    • 이제 MCP 서버는 PAT를 사용하여 인증을 받기 위해 구성됩니다.

로컬 MCP 서버 설정

참고 항목

GitHub Enterprise Server 사용자이고 엔터프라이즈에서 PAT 제한을 활성화한 경우, 엔터프라이즈의 PAT 정책에서 허용하는 범위에 대해서만 API 엔드포인트를 사용할 수 있습니다. 모든 API 엔드포인트가 제한되면 MCP 서버를 사용할 수 없습니다. 엔터프라이즈의 PAT 정책에 대해 잘 모르고 있다면, 엔터프라이즈 관리자에게 자세한 내용을 문의하세요.

GitHub MCP 서버를 로컬로 사용하려면 해당 컴퓨터에 Docker를 설치하고 실행해야 합니다. 또한 로컬 MCP 서버에서는 OAuth가 지원되지 않으므로 PAT로만 인증할 수 있습니다.

  1. 컴퓨터에 Docker가 설치되어 실행 중인지 확인합니다. Docker 설치 지침을 참조하세요.

  2. (최소한) read:packagesrepo 범위가 포함된 PAT를 만듭니다. 자세한 내용은 개인용 액세스 토큰 관리을(를) 참조하세요.

  3. Visual Studio Code의 특정 리포지토리 또는 개인 인스턴스에 대해 MCP 서버를 구성할지 여부를 결정합니다.

    • 특정 리포지토리를 사용하는 경우, Visual Studio Code에서 .vscode/mcp.json 파일을 열고 다음 구성을 추가합니다.
    JSON
       {
        "inputs": [
          {
            "type": "promptString",
            "id": "github_token",
            "description": "GitHub Personal Access Token",
            "password": true
          }
        ],
        "servers": {
          "github": {
            "command": "docker",
            "args": [
              "run",
              "-i",
              "--rm",
              "-e",
              "GITHUB_PERSONAL_ACCESS_TOKEN",
              "ghcr.io/github/github-mcp-server"
            ],
            "env": {
              "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
            }
          }
        }
      }
    
    • Visual Studio Code의 개인 인스턴스를 사용하는 경우, Visual Studio Code에서 settings.json 파일을 엽니다.
      • Ctrl+Shift+P(Windows/Linux) 또는 Cmd+Shift+P(macOS)를 누릅니다.
      • Preferences: Open Settings (JSON) 를 입력하고 선택합니다.
      • 다음 구성을 추가합니다.
    JSON
    {
      "mcp": {
        "inputs": [
          {
            "type": "promptString",
            "id": "github_token",
            "description": "GitHub Personal Access Token",
            "password": true
          }
        ],
        "servers": {
          "github": {
            "command": "docker",
            "args": [
              "run",
              "-i",
              "--rm",
              "-e",
              "GITHUB_PERSONAL_ACCESS_TOKEN",
              "ghcr.io/github/github-mcp-server"
            ],
            "env": {
              "GITHUB_PERSONAL_ACCESS_TOKEN": "${input:github_token}"
            }
          }
        }
      }
    }
    
  4. 파일을 저장합니다.

  5. 명령 팔레트에 GitHub 토큰을 입력하라는 메시지가 표시됩니다. 이전에 만든 PAT를 입력하고 Enter를 누릅니다.

    • 이제 MCP 서버는 PAT를 사용하여 인증을 받기 위해 로컬로 실행되도록 구성됩니다.

도구 구성

GitHub MCP 서버는 읽기 전용 모드 또는 전체 읽기/쓰기 액세스 권한으로 개별 도구 집합을 설치하는 것을 지원하므로 서버의 기능을 사용자의 특정 요구 사항에 맞게 조정할 수도 있습니다. 각 도구 집합의 원클릭 설치 옵션은 GitHub MCP 서버 리포지토리를 참조하세요.

Visual Studio Code에서 GitHub MCP 서버 사용

GitHub MCP 서버를 사용하면 Visual Studio Code의 Copilot 채팅을 통해 GitHub에서 다양한 작업을 수행할 수 있습니다.

  1. Visual Studio Code의 제목 표시줄에 있는 아이콘을 클릭하여 Copilot 채팅을 엽니다.
  2. Copilot 채팅 상자의 팝업 메뉴에서 Agent를 선택하세요.
  3. 사용 가능한 작업을 보려면 Copilot 채팅 상자에서 Select tools 아이콘을 클릭하세요.
    • Tools 드롭다운의 MCP Server:GitHub 아래에 사용 가능한 작업 목록이 표시됩니다.
  4. Copilot 채팅 상자에 수행하려는 작업과 관련된 명령이나 질문을 입력하고 Enter 키를 누릅니다.
    • 예를 들어, GitHub MCP 서버에 새 이슈를 생성하거나, 끌어오기 요청을 나열하거나, 리포지토리 정보를 검색하도록 요청할 수 있습니다.
  5. GitHub MCP 서버는 사용자의 요청을 처리하고 채팅 인터페이스에서 응답을 제공합니다.
    • Copilot 채팅 상자에서 작업을 완료하기 위해 추가 권한을 부여하거나 추가 정보를 제공하라는 메시지가 표시될 수 있습니다.
  6. 프롬프트를 따라 작업을 완료하세요.

문제 해결

GitHub MCP 서버를 사용하는 동안 문제가 발생하는 경우, 이를 해결하기 위해 몇 가지 일반적인 문제 해결 단계를 수행하세요.

권한 부여 문제

MCP 서버 인증에 문제가 있는 경우, 다음을 확인합니다.

  • 선택한 IDE에서 GitHub에 로그인했습니다.

PAT(personal access token)를 사용하여 인증하는 경우라면 다음 사항을 확인하세요.

  • GitHub PAT는 유효하며 수행하려는 작업에 필요한 범위를 갖추고 있습니다.
  • Visual Studio Code에서 메시지가 표시될 때, 올바른 PAT를 입력했습니다.

Copilot 에이전트 모드 문제

Copilot 채팅 에이전트 모드에 문제가 있는 경우 다음을 확인하세요.

  • Copilot 채팅 상자에서 올바른 에이전트를 선택했습니다.
  • Visual Studio Code에서 MCP 서버를 올바르게 구성했습니다.
  • 실행하려는 작업을 수행하는 데 필요한 권한이 있습니다.

일반 팁

GitHub MCP 서버에서 이와 또 다른 문제가 발생하는 경우, 문제 해결에 도움이 되는 몇 가지 일반적인 팁이 있습니다.

  • MCP 서버의 출력 로그에서 오류 메시지를 확인하세요.
  • 로컬에서 MCP 서버를 실행하는 경우 Docker 컨테이너를 실행하기 위해 로컬 환경이 올바르게 설정되었는지 확인하세요.
  • MCP 서버 또는 IDE를 다시 시작해 보세요.

추가 참고 자료