InfoGrab Docs

GitLab MCP 클라이언트

요약

Model Context Protocol(MCP)은 GitLab Duo 기능이 다양한 외부 데이터 소스 및 도구에 안전하게 연결하는 표준화된 방법을 제공합니다. 동일한 MCP 구성 파일이 지원되는 모든 IDE 및 GitLab Duo CLI에서 작동합니다.

모델 정보
  • 자체 호스팅 모델을 사용하는 GitLab Duo에서는 사용할 수 없음
히스토리

Model Context Protocol(MCP)은 GitLab Duo 기능이 다양한 외부 데이터 소스 및 도구에 안전하게 연결하는 표준화된 방법을 제공합니다.

MCP는 다음 환경에서 지원됩니다:

  • Visual Studio Code(VS Code) 및 VSCodium
  • JetBrains IDE
  • 명령 줄(GitLab Duo CLI를 통해)

동일한 MCP 구성 파일이 지원되는 모든 IDE 및 GitLab Duo CLI에서 작동합니다.

다음 기능은 MCP 클라이언트로 작동하여 MCP 서버의 외부 도구에 연결할 수 있습니다:

그런 다음 이 기능들은 외부 컨텍스트 및 정보에 액세스하여 더 강력한 답변을 생성할 수 있습니다.

MCP와 함께 기능을 사용하려면:

  1. 그룹에 MCP를 켭니다.
  2. 기능이 연결할 MCP 서버를 구성합니다.

개요를 보려면 GitLab Duo Chat (에이전틱) - MCP 도구 호출 승인을 참조합니다.

클릭 데모를 보려면 GitLab Duo Agent Platform - MCP 클라이언트를 참조합니다.

전제 조건#

확장 지원에 대한 자세한 내용은 버전 호환성을 참조합니다.

외부 MCP 도구 허용#

GitLab Duo가 구성된 최상위 그룹에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용합니다.

GitLab.com에서#

GitLab.com에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용하려면:

  1. 상단 표시줄에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > GitLab Duo를 선택합니다.
  3. 구성 변경을 선택합니다.
  4. 외부 MCP 도구 아래에서 외부 MCP 도구 허용 체크박스를 선택합니다.
  5. 변경 사항 저장을 선택합니다.

GitLab Self-Managed에서#

GitLab Self-Managed에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용하려면:

  1. 상단 표시줄에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
  3. GitLab Duo 기능을 확장합니다.
  4. 외부 MCP 도구 아래에서 외부 MCP 도구 허용 체크박스를 선택합니다.
  5. 변경 사항 저장을 선택합니다.

MCP 서버 구성#

Language Server와 MCP를 통합하려면 작업 공간 구성, 사용자 구성 또는 둘 다 설정합니다. GitLab Language Server가 구성 파일을 로드하고 병합합니다.

버전 호환성#

MCP 지원 GitLab for VS Code JetBrains IDE용 GitLab Duo 플러그인 GitLab Duo CLI
기본 (작업 공간 또는 사용자 구성 없음) 6.28.2 이상 3.10.0 이상
전체 (작업 공간 및 사용자 구성 포함) 6.35.6 이상 3.14.0 이상 8.81.0 이상

작업 공간 구성 만들기#

작업 공간 구성은 이 프로젝트에만 적용되며 동일한 서버에 대한 사용자 구성을 재정의합니다.

작업 공간 구성을 설정하려면:

  1. 프로젝트 작업 공간에서 <workspace>/.gitlab/duo/mcp.json 파일을 만듭니다.
  2. 구성 형식을 사용하여 기능이 연결하는 MCP 서버에 대한 정보를 추가합니다.
  3. 파일을 저장합니다.
  4. IDE 또는 GitLab Duo CLI를 재시작합니다.

사용자 구성 만들기#

사용자 구성 설정은 개인 도구 및 자주 사용하는 서버에 적합합니다. 모든 작업 공간에 적용되지만 동일한 서버에 대한 작업 공간 설정이 사용자 구성을 재정의합니다.

사용자 구성을 설정하려면 구성 파일을 만듭니다:

IDE에서 명령 팔레트를 엽니다:

  • macOS: Command+Shift+P를 누릅니다.
  • Windows 또는 Linux: Control+Shift+P를 누릅니다.

GitLab MCP: Open User Settings (JSON) 명령을 실행합니다.

홈 디렉토리에 mcp.json 파일을 만듭니다:

  • Linux 또는 macOS: ~/.gitlab/duo/mcp.json
  • Windows: %APPDATA%\GitLab\duo\mcp.json (예: C:\Users\<username>\AppData\Roaming\GitLab\duo\mcp.json)

다음 환경 변수 중 하나를 설정한 경우 다른 위치에 파일을 만듭니다:

  • GLAB_CONFIG_DIR: $GLAB_CONFIG_DIR/duo/mcp.json
  • XDG_CONFIG_HOME: $XDG_CONFIG_HOME/gitlab/duo/mcp.json

홈 디렉토리에 mcp.json 파일을 만듭니다:

  • Linux 또는 macOS: ~/.gitlab/duo/mcp.json
  • Windows: %APPDATA%\GitLab\duo\mcp.json (예: C:\Users\<username>\AppData\Roaming\GitLab\duo\mcp.json)

다음 환경 변수 중 하나를 설정한 경우 다른 위치에 파일을 만듭니다:

  • GLAB_CONFIG_DIR: $GLAB_CONFIG_DIR/duo/mcp.json
  • XDG_CONFIG_HOME: $XDG_CONFIG_HOME/gitlab/duo/mcp.json
  1. 구성 형식을 사용하여 기능이 연결하는 MCP 서버에 대한 정보를 추가합니다.
  2. 파일을 저장합니다.
  3. IDE 또는 GitLab Duo CLI를 재시작합니다.

구성 형식#

두 구성 파일 모두 동일한 JSON 형식을 사용하며 세부 정보는 mcpServers 키에 있습니다:

{
  "mcpServers": {
    "server-name": {
      "type": "stdio",
      "command": "path/to/server",
      "args": ["--arg1", "value1"],
      "env": {
        "ENV_VAR": "value"
      },
      "approvedTools": true
    },
    "http-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "search"]
    },
    "sse-server": {
      "type": "sse",
      "url": "http://localhost:3000/mcp/sse"
    }
  }
}
Note

다른 MCP 클라이언트의 경우 Atlassian 문서에서 샘플 구성 파일에 mcp.servers를 사용합니다. GitLab의 경우 대신 mcpServers를 사용합니다.

도구 승인 구성#

기본적으로 각 세션에서 서버의 모든 MCP 도구를 수동으로 승인해야 합니다.

대신 구성 파일에서 MCP 도구를 사전 승인하여 수동 승인 프롬프트를 건너뛸 수 있습니다.

이를 위해 서버 구성에 approvedTools 필드를 추가합니다:

  • "approvedTools": true - 이 서버의 현재 및 미래의 모든 도구를 자동으로 승인합니다.
  • "approvedTools": ["tool1", "tool2"] - 지정한 도구만 승인합니다.

이 필드를 포함하지 않으면 세션의 모든 도구를 수동으로 승인해야 합니다(기본 동작).

Warning

완전히 신뢰하는 서버에만 "approvedTools": true를 사용합니다.

예를 들어:

{
  "mcpServers": {
    "trusted-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["my-trusted-mcp-server"],
      "approvedTools": true
    },
    "selective-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "search"]
    },
    "untrusted-server": {
      "type": "sse",
      "url": "http://example.com/mcp/sse"
    }
  }
}

도구 승인 작동 방식#

GitLab은 MCP 도구에 대한 2계층 승인 시스템을 사용합니다:

  • 구성 기반 승인(영구): approvedTools 필드를 사용하여 mcp.json에서 승인된 도구. 이 승인은 모든 세션에 걸쳐 유지됩니다.
  • 세션 기반 승인(임시): 현재 워크플로 세션에 대해 런타임 중에 승인된 도구. IDE를 닫거나 워크플로를 종료하면 이 승인이 지워집니다.

두 조건 중 하나가 충족되면 도구가 승인됩니다.

예제 MCP 서버 구성#

다음 코드 예제를 사용하여 MCP 서버 구성 파일을 만드는 데 도움을 받습니다.

자세한 내용 및 예제는 MCP 예제 서버 문서를 참조합니다. 다른 예제 서버는 Smithery.aiAwesome MCP Servers입니다.

로컬 서버#

{
  "mcpServers": {
    "enterprise-data-v2": {
      "type": "stdio",
      "command": "node",
      "args": ["src/server.js"],
      "cwd": "</path/to/your-mcp-server>",
      "approvedTools": ["query_database", "fetch_metrics"]
    }
  }
}

GitLab Knowledge Graph 서버#

GitLab Knowledge Graph는 MCP를 통한 코드 인텔리전스를 제공합니다. 모든 도구 또는 특정 도구를 승인할 수 있습니다:

{
  "mcpServers": {
    "knowledge-graph": {
      "type": "sse",
      "url": "http://localhost:27495/mcp/sse",
      "approvedTools": true
    }
  }
}

또는 특정 도구만 승인합니다:

{
  "mcpServers": {
    "knowledge-graph": {
      "type": "sse",
      "url": "http://localhost:27495/mcp/sse",
      "approvedTools": ["list_projects", "search_codebase_definitions", "get_references", "get_definition"]
    }
  }
}

사용 가능한 도구에 대한 자세한 내용은 Knowledge Graph MCP 도구 문서를 참조합니다.

HTTP 서버#

{
  "mcpServers": {
    "local-http-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "write_file"]
    }
  }
}

MCP 서버 상태 보기#

히스토리
  • GitLab for VS Code 확장 6.55.0에서 도입.

전제 조건:

  • GitLab for VS Code 확장 6.55.0 이상이 설치되어 있어야 합니다.
  • 사용자 또는 작업 공간 구성에 MCP 서버가 하나 이상 구성되어 있어야 합니다.

구성된 MCP 서버의 상태를 보려면:

  1. VS Code 또는 VSCodium에서 명령 팔레트를 엽니다:
    • macOS에서 Command+Shift+P를 누릅니다.
    • Windows 또는 Linux에서 Control+Shift+P를 누릅니다.
  2. GitLab: Show MCP Dashboard를 입력하고 Enter를 누릅니다.

MCP 대시보드가 새 에디터 탭에서 열립니다. 대시보드를 사용하여:

  • MCP 서버가 올바르게 구성되어 실행 중인지 확인합니다.
  • GitLab Duo 기능을 사용하기 전에 연결 문제를 파악합니다.
  • 각 서버에서 사용 가능한 도구를 확인합니다.
  • 서버 구성 문제를 해결합니다.

MCP 구성 파일 열기#

MCP 구성 파일을 열려면:

  1. VS Code 또는 VSCodium에서 명령 팔레트를 엽니다:
    • macOS에서 Command+Shift+P를 누릅니다.
    • Windows 또는 Linux에서 Control+Shift+P를 누릅니다.
  2. 구성 파일을 엽니다:
    • 사용자 구성의 경우 GitLab MCP: Open User Settings (JSON)을 입력하고 Enter를 누릅니다.
    • 작업 공간 구성의 경우 GitLab MCP: Open Workspace Settings (JSON)을 입력하고 Enter를 누릅니다.

MCP 서버로 재인증#

MCP 구성 파일에서 인증 세부 정보를 업데이트한 후 관련 MCP 서버로 재인증해야 합니다.

재인증을 트리거하려면:

  • GitLab Duo에 해당 MCP 서버의 데이터가 필요한 질문을 합니다 (예: Atlassian의 경우 What are the issues in my Jira project?). 인증 흐름이 자동으로 시작됩니다.

MCP와 함께 GitLab Duo 기능 사용#

히스토리
  • 전체 세션에 대한 외부 도구 승인이 GitLab 18.4에서 추가.

GitLab Duo 기능이 질문에 답변하기 위해 외부 도구를 호출할 때, 전체 세션에 대해 승인하지 않은 경우 해당 도구를 검토해야 합니다:

  1. VS Code를 엽니다.

  2. 왼쪽 사이드바에서 GitLab Duo Agent Platform ([duo-agentic-chat])을 선택합니다.

  3. Chat 또는 Flows 탭을 선택합니다.

  4. 텍스트 상자에 질문을 입력하거나 코드 작업을 지정합니다.

  5. 질문 또는 코드 작업을 제출합니다.

  6. 다음과 같은 경우 도구 승인 필요 대화 상자가 나타납니다:

    • GitLab Duo가 세션에서 처음으로 해당 도구를 호출하는 경우.
    • 전체 세션에 대해 해당 도구를 승인하지 않은 경우.
  7. 도구를 승인하거나 거부합니다:

    • 도구를 승인하면 기능이 도구에 연결하고 답변을 생성합니다.

      • 선택 사항. 전체 세션에 대해 도구를 승인하려면 승인 드롭다운 목록에서 세션에 대해 승인을 선택합니다.

        세션에 대해서는 MCP 서버에서 제공하는 도구만 승인할 수 있습니다. 터미널 또는 CLI 명령은 승인할 수 없습니다.

    • Chat의 경우 도구를 거부하면 거부 이유 제공 대화 상자가 나타납니다. 거부 이유를 입력한 다음 거부 제출을 선택합니다.

      Chat은 제공한 이유를 기반으로 새로운 접근 방식을 제안하거나 이슈를 생성하는 등의 조치를 취할 수 있습니다.

문제 해결#

MCP 인증 캐시 삭제#

GitLab은 MCP 인증을 ~/.mcp-auth/ 아래에 로컬로 캐시합니다. 문제 해결 중 오탐을 방지하려면 캐시 디렉토리를 삭제합니다:

rm -rf ~/.mcp-auth/

Error starting server filesystem: Error: spawn ... ENOENT#

이 오류는 상대 경로(예: /usr/bin/node 대신 node)를 사용하여 명령을 지정하고 해당 명령이 GitLab Language Server에 전달된 PATH 환경 변수에서 찾을 수 없을 때 발생합니다.

PATH 해석 개선은 이슈 1345에서 추적됩니다.

VS Code에서 MCP 문제 해결#

문제 해결 정보는 GitLab for VS Code 확장 문제 해결을 참조합니다.

GitLab MCP 클라이언트

Tier: [Free](../../../subscriptions/gitlab_credits.md#for-the-free-tier), Premium, Ultimate
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
원문 보기
요약

Model Context Protocol(MCP)은 GitLab Duo 기능이 다양한 외부 데이터 소스 및 도구에 안전하게 연결하는 표준화된 방법을 제공합니다. 동일한 MCP 구성 파일이 지원되는 모든 IDE 및 GitLab Duo CLI에서 작동합니다.

모델 정보
  • 자체 호스팅 모델을 사용하는 GitLab Duo에서는 사용할 수 없음
히스토리

Model Context Protocol(MCP)은 GitLab Duo 기능이 다양한 외부 데이터 소스 및 도구에 안전하게 연결하는 표준화된 방법을 제공합니다.

MCP는 다음 환경에서 지원됩니다:

  • Visual Studio Code(VS Code) 및 VSCodium
  • JetBrains IDE
  • 명령 줄(GitLab Duo CLI를 통해)

동일한 MCP 구성 파일이 지원되는 모든 IDE 및 GitLab Duo CLI에서 작동합니다.

다음 기능은 MCP 클라이언트로 작동하여 MCP 서버의 외부 도구에 연결할 수 있습니다:

그런 다음 이 기능들은 외부 컨텍스트 및 정보에 액세스하여 더 강력한 답변을 생성할 수 있습니다.

MCP와 함께 기능을 사용하려면:

  1. 그룹에 MCP를 켭니다.
  2. 기능이 연결할 MCP 서버를 구성합니다.

개요를 보려면 GitLab Duo Chat (에이전틱) - MCP 도구 호출 승인을 참조합니다.

클릭 데모를 보려면 GitLab Duo Agent Platform - MCP 클라이언트를 참조합니다.

전제 조건#

확장 지원에 대한 자세한 내용은 버전 호환성을 참조합니다.

외부 MCP 도구 허용#

GitLab Duo가 구성된 최상위 그룹에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용합니다.

GitLab.com에서#

GitLab.com에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용하려면:

  1. 상단 표시줄에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > GitLab Duo를 선택합니다.
  3. 구성 변경을 선택합니다.
  4. 외부 MCP 도구 아래에서 외부 MCP 도구 허용 체크박스를 선택합니다.
  5. 변경 사항 저장을 선택합니다.

GitLab Self-Managed에서#

GitLab Self-Managed에서 로컬 환경이 외부 MCP 도구에 액세스할 수 있도록 허용하려면:

  1. 상단 표시줄에서 검색 또는 이동을 선택하고 그룹을 찾습니다.
  2. 왼쪽 사이드바에서 설정 > 일반을 선택합니다.
  3. GitLab Duo 기능을 확장합니다.
  4. 외부 MCP 도구 아래에서 외부 MCP 도구 허용 체크박스를 선택합니다.
  5. 변경 사항 저장을 선택합니다.

MCP 서버 구성#

Language Server와 MCP를 통합하려면 작업 공간 구성, 사용자 구성 또는 둘 다 설정합니다. GitLab Language Server가 구성 파일을 로드하고 병합합니다.

버전 호환성#

MCP 지원 GitLab for VS Code JetBrains IDE용 GitLab Duo 플러그인 GitLab Duo CLI
기본 (작업 공간 또는 사용자 구성 없음) 6.28.2 이상 3.10.0 이상
전체 (작업 공간 및 사용자 구성 포함) 6.35.6 이상 3.14.0 이상 8.81.0 이상

작업 공간 구성 만들기#

작업 공간 구성은 이 프로젝트에만 적용되며 동일한 서버에 대한 사용자 구성을 재정의합니다.

작업 공간 구성을 설정하려면:

  1. 프로젝트 작업 공간에서 <workspace>/.gitlab/duo/mcp.json 파일을 만듭니다.
  2. 구성 형식을 사용하여 기능이 연결하는 MCP 서버에 대한 정보를 추가합니다.
  3. 파일을 저장합니다.
  4. IDE 또는 GitLab Duo CLI를 재시작합니다.

사용자 구성 만들기#

사용자 구성 설정은 개인 도구 및 자주 사용하는 서버에 적합합니다. 모든 작업 공간에 적용되지만 동일한 서버에 대한 작업 공간 설정이 사용자 구성을 재정의합니다.

사용자 구성을 설정하려면 구성 파일을 만듭니다:

IDE에서 명령 팔레트를 엽니다:

  • macOS: Command+Shift+P를 누릅니다.
  • Windows 또는 Linux: Control+Shift+P를 누릅니다.

GitLab MCP: Open User Settings (JSON) 명령을 실행합니다.

홈 디렉토리에 mcp.json 파일을 만듭니다:

  • Linux 또는 macOS: ~/.gitlab/duo/mcp.json
  • Windows: %APPDATA%\GitLab\duo\mcp.json (예: C:\Users\<username>\AppData\Roaming\GitLab\duo\mcp.json)

다음 환경 변수 중 하나를 설정한 경우 다른 위치에 파일을 만듭니다:

  • GLAB_CONFIG_DIR: $GLAB_CONFIG_DIR/duo/mcp.json
  • XDG_CONFIG_HOME: $XDG_CONFIG_HOME/gitlab/duo/mcp.json

홈 디렉토리에 mcp.json 파일을 만듭니다:

  • Linux 또는 macOS: ~/.gitlab/duo/mcp.json
  • Windows: %APPDATA%\GitLab\duo\mcp.json (예: C:\Users\<username>\AppData\Roaming\GitLab\duo\mcp.json)

다음 환경 변수 중 하나를 설정한 경우 다른 위치에 파일을 만듭니다:

  • GLAB_CONFIG_DIR: $GLAB_CONFIG_DIR/duo/mcp.json
  • XDG_CONFIG_HOME: $XDG_CONFIG_HOME/gitlab/duo/mcp.json
  1. 구성 형식을 사용하여 기능이 연결하는 MCP 서버에 대한 정보를 추가합니다.
  2. 파일을 저장합니다.
  3. IDE 또는 GitLab Duo CLI를 재시작합니다.

구성 형식#

두 구성 파일 모두 동일한 JSON 형식을 사용하며 세부 정보는 mcpServers 키에 있습니다:

{
  "mcpServers": {
    "server-name": {
      "type": "stdio",
      "command": "path/to/server",
      "args": ["--arg1", "value1"],
      "env": {
        "ENV_VAR": "value"
      },
      "approvedTools": true
    },
    "http-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "search"]
    },
    "sse-server": {
      "type": "sse",
      "url": "http://localhost:3000/mcp/sse"
    }
  }
}
Note

다른 MCP 클라이언트의 경우 Atlassian 문서에서 샘플 구성 파일에 mcp.servers를 사용합니다. GitLab의 경우 대신 mcpServers를 사용합니다.

도구 승인 구성#

기본적으로 각 세션에서 서버의 모든 MCP 도구를 수동으로 승인해야 합니다.

대신 구성 파일에서 MCP 도구를 사전 승인하여 수동 승인 프롬프트를 건너뛸 수 있습니다.

이를 위해 서버 구성에 approvedTools 필드를 추가합니다:

  • "approvedTools": true - 이 서버의 현재 및 미래의 모든 도구를 자동으로 승인합니다.
  • "approvedTools": ["tool1", "tool2"] - 지정한 도구만 승인합니다.

이 필드를 포함하지 않으면 세션의 모든 도구를 수동으로 승인해야 합니다(기본 동작).

Warning

완전히 신뢰하는 서버에만 "approvedTools": true를 사용합니다.

예를 들어:

{
  "mcpServers": {
    "trusted-server": {
      "type": "stdio",
      "command": "npx",
      "args": ["my-trusted-mcp-server"],
      "approvedTools": true
    },
    "selective-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "search"]
    },
    "untrusted-server": {
      "type": "sse",
      "url": "http://example.com/mcp/sse"
    }
  }
}

도구 승인 작동 방식#

GitLab은 MCP 도구에 대한 2계층 승인 시스템을 사용합니다:

  • 구성 기반 승인(영구): approvedTools 필드를 사용하여 mcp.json에서 승인된 도구. 이 승인은 모든 세션에 걸쳐 유지됩니다.
  • 세션 기반 승인(임시): 현재 워크플로 세션에 대해 런타임 중에 승인된 도구. IDE를 닫거나 워크플로를 종료하면 이 승인이 지워집니다.

두 조건 중 하나가 충족되면 도구가 승인됩니다.

예제 MCP 서버 구성#

다음 코드 예제를 사용하여 MCP 서버 구성 파일을 만드는 데 도움을 받습니다.

자세한 내용 및 예제는 MCP 예제 서버 문서를 참조합니다. 다른 예제 서버는 Smithery.aiAwesome MCP Servers입니다.

로컬 서버#

{
  "mcpServers": {
    "enterprise-data-v2": {
      "type": "stdio",
      "command": "node",
      "args": ["src/server.js"],
      "cwd": "</path/to/your-mcp-server>",
      "approvedTools": ["query_database", "fetch_metrics"]
    }
  }
}

GitLab Knowledge Graph 서버#

GitLab Knowledge Graph는 MCP를 통한 코드 인텔리전스를 제공합니다. 모든 도구 또는 특정 도구를 승인할 수 있습니다:

{
  "mcpServers": {
    "knowledge-graph": {
      "type": "sse",
      "url": "http://localhost:27495/mcp/sse",
      "approvedTools": true
    }
  }
}

또는 특정 도구만 승인합니다:

{
  "mcpServers": {
    "knowledge-graph": {
      "type": "sse",
      "url": "http://localhost:27495/mcp/sse",
      "approvedTools": ["list_projects", "search_codebase_definitions", "get_references", "get_definition"]
    }
  }
}

사용 가능한 도구에 대한 자세한 내용은 Knowledge Graph MCP 도구 문서를 참조합니다.

HTTP 서버#

{
  "mcpServers": {
    "local-http-server": {
      "type": "http",
      "url": "http://localhost:3000/mcp",
      "approvedTools": ["read_file", "write_file"]
    }
  }
}

MCP 서버 상태 보기#

히스토리
  • GitLab for VS Code 확장 6.55.0에서 도입.

전제 조건:

  • GitLab for VS Code 확장 6.55.0 이상이 설치되어 있어야 합니다.
  • 사용자 또는 작업 공간 구성에 MCP 서버가 하나 이상 구성되어 있어야 합니다.

구성된 MCP 서버의 상태를 보려면:

  1. VS Code 또는 VSCodium에서 명령 팔레트를 엽니다:
    • macOS에서 Command+Shift+P를 누릅니다.
    • Windows 또는 Linux에서 Control+Shift+P를 누릅니다.
  2. GitLab: Show MCP Dashboard를 입력하고 Enter를 누릅니다.

MCP 대시보드가 새 에디터 탭에서 열립니다. 대시보드를 사용하여:

  • MCP 서버가 올바르게 구성되어 실행 중인지 확인합니다.
  • GitLab Duo 기능을 사용하기 전에 연결 문제를 파악합니다.
  • 각 서버에서 사용 가능한 도구를 확인합니다.
  • 서버 구성 문제를 해결합니다.

MCP 구성 파일 열기#

MCP 구성 파일을 열려면:

  1. VS Code 또는 VSCodium에서 명령 팔레트를 엽니다:
    • macOS에서 Command+Shift+P를 누릅니다.
    • Windows 또는 Linux에서 Control+Shift+P를 누릅니다.
  2. 구성 파일을 엽니다:
    • 사용자 구성의 경우 GitLab MCP: Open User Settings (JSON)을 입력하고 Enter를 누릅니다.
    • 작업 공간 구성의 경우 GitLab MCP: Open Workspace Settings (JSON)을 입력하고 Enter를 누릅니다.

MCP 서버로 재인증#

MCP 구성 파일에서 인증 세부 정보를 업데이트한 후 관련 MCP 서버로 재인증해야 합니다.

재인증을 트리거하려면:

  • GitLab Duo에 해당 MCP 서버의 데이터가 필요한 질문을 합니다 (예: Atlassian의 경우 What are the issues in my Jira project?). 인증 흐름이 자동으로 시작됩니다.

MCP와 함께 GitLab Duo 기능 사용#

히스토리
  • 전체 세션에 대한 외부 도구 승인이 GitLab 18.4에서 추가.

GitLab Duo 기능이 질문에 답변하기 위해 외부 도구를 호출할 때, 전체 세션에 대해 승인하지 않은 경우 해당 도구를 검토해야 합니다:

  1. VS Code를 엽니다.

  2. 왼쪽 사이드바에서 GitLab Duo Agent Platform ([duo-agentic-chat])을 선택합니다.

  3. Chat 또는 Flows 탭을 선택합니다.

  4. 텍스트 상자에 질문을 입력하거나 코드 작업을 지정합니다.

  5. 질문 또는 코드 작업을 제출합니다.

  6. 다음과 같은 경우 도구 승인 필요 대화 상자가 나타납니다:

    • GitLab Duo가 세션에서 처음으로 해당 도구를 호출하는 경우.
    • 전체 세션에 대해 해당 도구를 승인하지 않은 경우.
  7. 도구를 승인하거나 거부합니다:

    • 도구를 승인하면 기능이 도구에 연결하고 답변을 생성합니다.

      • 선택 사항. 전체 세션에 대해 도구를 승인하려면 승인 드롭다운 목록에서 세션에 대해 승인을 선택합니다.

        세션에 대해서는 MCP 서버에서 제공하는 도구만 승인할 수 있습니다. 터미널 또는 CLI 명령은 승인할 수 없습니다.

    • Chat의 경우 도구를 거부하면 거부 이유 제공 대화 상자가 나타납니다. 거부 이유를 입력한 다음 거부 제출을 선택합니다.

      Chat은 제공한 이유를 기반으로 새로운 접근 방식을 제안하거나 이슈를 생성하는 등의 조치를 취할 수 있습니다.

문제 해결#

MCP 인증 캐시 삭제#

GitLab은 MCP 인증을 ~/.mcp-auth/ 아래에 로컬로 캐시합니다. 문제 해결 중 오탐을 방지하려면 캐시 디렉토리를 삭제합니다:

rm -rf ~/.mcp-auth/

Error starting server filesystem: Error: spawn ... ENOENT#

이 오류는 상대 경로(예: /usr/bin/node 대신 node)를 사용하여 명령을 지정하고 해당 명령이 GitLab Language Server에 전달된 PATH 환경 변수에서 찾을 수 없을 때 발생합니다.

PATH 해석 개선은 이슈 1345에서 추적됩니다.

VS Code에서 MCP 문제 해결#

문제 해결 정보는 GitLab for VS Code 확장 문제 해결을 참조합니다.