VS Code에서 mcp.tc를 MCP 레지스트리로 사용하는 방법
요약
본 문서는 VS Code에서 MCP(Model Catalog Protocol) 서버 갤러리를 커스터마이징하여 mcp.tc 레지스트리를 사용하는 방법을 안내합니다. 사용자 `settings.json`에 특정 URL을 추가하는 것만으로도, VS Code 및 Copilot 클라이언트가 외부 레지스트리 목록을 읽어와서 사용할 수 있게 됩니다.
핵심 포인트
- VS Code의 settings.json에 "chat.mcp.gallery.serviceUrl": "https://mcp.tc"를 추가해야 합니다.
- 이 설정은 VS Code 및 Copilot 클라이언트 전반에 걸쳐 MCP 레지스트리 URL을 변경합니다.
- MCP 갤러리는 레지스트리 API의 클라이언트 역할을 하며, 외부 서버 목록을 가져옵니다.
- 레지스트리 서비스는 읽기 전용 사본(read-only copy) 형태로 제공될 수 있습니다.
VS Code에서 MCP 서버 갤러리가 읽는 정보
요약. VS Code에서 mcp.tc를 MCP 레지스트리로 사용하려면 기본 프로필의 사용자 settings.json에 "chat.mcp.gallery.serviceUrl": "https://mcp.tc"를 추가하세요. Extensions 뷰에서 @mcp를 입력하면 MCP 서버 갤러리가 mcp.tc의 서버 목록을 보여줍니다. 서버를 설치하면 해당 서버 자체의 URL 또는 패키지가 구성 파일에 기록되므로, 클라이언트가 서버와 직접 통신하게 됩니다. 팀은 McpGalleryServiceUrl 정책이나 GitHub Copilot의 정책에서 MCP 레지스트리 URL로 동일한 URL을 설정할 수 있으며, 이는 VS Code 및 기타 Copilot 클라이언트에 적용됩니다. 이전 상태로 돌아가려면 해당 줄을 삭제하세요.
VS Code에서 MCP 서버 갤러리가 읽는 정보
VS Code는 갤러리로부터 MCP 서버를 설치할 수 있습니다. [VS Code MCP 문서]에서는 다음과 같이 설명합니다: Extensions 뷰를 열고, 검색 필드에 " @mcp를 입력"하면 VS Code가 "갤러리에 사용 가능한 MCP 서버 목록을 보여줍니다". 사용자 프로필에서 Install로 서버를 설치하거나, 현재 작업 공간에서 Install in Workspace를 사용하여 ".vscode/mcp.json 파일을 업데이트"할 수 있습니다.
이 갤러리는 레지스트리 API의 클라이언트입니다. Microsoft가 구축한 VS Code는 해당 API를 product.json에 명시합니다: VS Code 1.141.0 버전에서 갤러리의 serviceUrl은 GitHub MCP Registry인 https://api.mcp.github.com입니다. GitHub는 [IDE에서 MCP 레지스트리 변경] 페이지에서 다른 IDE의 Copilot 기본값에 대해서도 동일하게 설명합니다: "기본적으로 Copilot은 GitHub MCP Registry를 사용하지만, 환경에서 사용할 수 있는 서버 목록을 사용자 정의하기 위해 자체 MCP 레지스트리를 구성할 수 있습니다."
레지스트리의 읽기 엔드포인트를 처리할 수 있는 모든 서비스가 대체할 수 있습니다. mcp.tc는 승인한 목록을 기반으로 구축된 해당 API의 읽기 전용 사본을 https://mcp.tc/v0.1/에서 제공합니다. 2026년 10월 8일 기준으로 이 서버는 672개였습니다. 거의 모든 서버가 공급업체 자체 엔드포인트나 설치 패키지를 가지고 있으며, 예외 사항은 아래에 설명되어 있습니다.
settings.json 파일에 한 줄 추가하기
명령 팔레트를 열고 기본 프로필이 활성화된 상태에서 **사용자 설정 열기 (JSON)**을 실행한 후 다음 내용을 추가합니다:
{
"chat.mcp.gallery.serviceUrl": "https://mcp.tc"
}
mcp.tc의 API 문서에는 이 단계들의 간략한 버전이 나와 있습니다. 설정을 찾기 전에 VS Code 소스 코드에서 알아둘 만한 세 가지 세부 사항이 있습니다.
-
기본 URL 사용.
https://mcp.tc를 입력하고,https://mcp.tc/v0.1을 입력하지 마십시오. VS Code의 갤러리 매니페스트 코드는 뒤따르는 슬래시를 제거하고,GET {url}/v0.1/servers?limit=1로 서비스가 응답하는 API 버전을 확인한 다음, 자체적으로/v0.1/servers를 추가합니다. -
설정 편집기에는 없습니다. 이 설정은 chat.shared.contribution.ts에서
included: false및scope: ConfigurationScope.APPLICATION으로 등록되어 있습니다. 설정 UI에서 검색하면 아무것도 찾을 수 없으므로, JSON 파일을 직접 편집해야 합니다. -
다른 프로필은 기본적으로 이를 무시합니다. 자체 설정이 있는 프로필의 경우, VS Code는 기본 프로필의 파일에서 애플리케이션 설정을 읽지만, 설정 편집기에서 숨겨진 키(settings editor에서 hidden된 키)는 건너뜁니다(configuration.ts는
skipUnregistered: true를 전달합니다). 또한, 프로필 자체의settings.json은 애플리케이션 설정을 전혀 가져오지 않습니다. 두 가지 예외가 있습니다. 기본 프로필의 설정을 사용하는 프로필은 기본 프로필처럼 작동하며,workbench.settings.applyToAllProfiles에 이름이 지정된 키는 모든 곳에 적용됩니다. 따라서 mcp.tc를 모든 프로필에서 사용하려면, 이 내용을 기본 프로필의settings.json에도 추가하세요:
"workbench.settings.applyToAllProfiles": ["chat.mcp.gallery.serviceUrl"]
VS Code Stable에서는 다른 것을 활성화할 필요가 없습니다. Extensions 뷰는 이 URL이 설정되어 있으면 chat.mcp.gallery.enabled 여부와 관계없이 갤러리 목록을 보여줍니다(mcpServersView.ts). VS Code는 설정을 감시하고 변경될 때 갤러리를 다시 로드합니다.
변경 후 보이는 것
Extensions 뷰에서 @mcp를 입력하거나, @mcp 뒤에 이름을 입력하세요. VS Code는 /v0.1/servers?limit=…&version=latest를 요청하고 여기에 사용자의 단어와 함께 &search=를 추가합니다. mcp.tc는 모든 단어를 서버의 이름(name), 제목(title), 링크 이름(link name), 그리고 공급업체(vendor)와 비교하여 승인한 목록을 반환합니다. 동일한 요청을 직접 보낼 수도 있습니다:
curl -s 'https://mcp.tc/v0.1/servers?search=notion&limit=5'
다음은 2026년 10월 8일의 응답으로, $schema, icons, websiteUrl 및 일부 _meta 필드는 제외되었습니다:
{
"servers": [
{
...
remotes에는 Notion 자체 엔드포인트인 https://mcp.notion.com/mcp가 포함됩니다. '설치(Install)'를 누르면 VS Code의 install code가 remotes[0].url을 원격 서버로 구성에 작성하거나, 로컬 서버의 경우 npm, PyPI, OCI 또는 NuGet 패키지의 명령어를 작성합니다. 그 후부터는 해당 서버의 MCP 트래픽이 곧바로 서버로 전달됩니다. mcp.tc는 갤러리의 레지스트리 요청, 즉 목록 보기(list), 검색(입력한 단어와 함께하는 search), 그리고 이름으로 한 서버 항목을 조회하는 작업만 처리합니다. VS Code가 갤러리에서 설치하는 서버에 대해서도 이 작업을 수행합니다.
로그인(sign-in)이 필요한 서버의 경우에도 동일합니다. Notion은 OAuth를 사용하며, 이 로그인은 사용자 클라이언트와 Notion 사이에서 이루어지므로 mcp.tc는 토큰을 절대 볼 수 없습니다. DeepWiki처럼 로그인 과정이 없는 서버(예: https://mcp.deepwiki.com/mcp의 DeepWiki)는 설치하자마자 작동합니다.
갤러리가 제외하는 서버
VS Code가 레지스트리 항목을 설치하려면 원격 URL 또는 패키지가 필요합니다. VS Code의 gallery service는 이 둘 중 어느 것도 없는 항목은 제외하며, 이런 항목들은 목록에 나타나지 않습니다.
mcp.tc에서 이러한 현상은 해당 목록의 설치 명령어를 레지스트리 형식으로 작성할 수 없을 때 발생합니다. 예를 들어 추가 셸 단계(extra shell steps)를 실행하거나 패키지 이름과 다른 이름의 프로그램을 시작하는 명령어 같은 경우입니다. 이럴 경우 mcp.tc는 잘못된 프로그램을 시작하는 대신, 패키지가 없는 항목을 가지고 해당 항목을 게시합니다. 2026년 10월 8일 기준으로 672개 항목 중 18개 항목은 패키지도 원격 URL도 없었습니다. MCP Memory Service가 그중 하나입니다. 이 서비스는 VS Code의 갤러리에는 표시되지 않지만, mcp.tc의 페이지에는 여전히 설정 단계가 남아 있습니다.
팀을 위해 설정하기: 정책 및 레지스트리 전용
VS Code 정책. 정책을 통해 VS Code를 관리하는 조직은 모든 사용자를 위해 갤러리를 설정할 수 있습니다. 이 설정은 McpGalleryServiceUrl이라는 정책 이름으로 적용되며, minimumVersion: '1.101'과 함께 VS Code 1.101 버전 이상에서 작동합니다. enterprise policies page에서는 이를 "MCP Gallery 서비스 URL을 구성하여 연결"하는 것으로 나열하고 있습니다. 또한, VS Code는 사용자가 로그인한 GitHub 계정의 Copilot 정책 데이터(필드 mcpRegistryUrl)로부터 이 정책 값을 채우므로, 아래 설명된 GitHub 정책도 동일하게 VS Code에 반영됩니다. 정책 페이지에서 언급했듯이, "정책 값은 모든 레벨에서 구성된 VS Code 설정 값을 덮어씁니다."
실행 가능한 항목 제한. chat.mcp.access (정책 ChatMCP)는 none, registry, 또는 all을 사용하며, GitHub의 레지스트리 전용(Registry only) 선택지는 registry로 인식됩니다. "chat.mcp.access": "registry"를 사용하면 VS Code가 "VS Code에 연결된 레지스트리에 나열된 MCP 서버에 대한 액세스"를 허용합니다. 이는 해당 값의 설정 설명에 명시된 내용입니다. 레지스트리가 mcp.tc인 경우, 이는 mcp.tc가 나열하는 서버들을 의미합니다.
GitHub Copilot 정책. Copilot Business 또는 Copilot Enterprise를 사용하는 조직 및 기업 소유자는 사용자 지정 레지스트리로 MCP 서버 액세스를 제한할 수 있습니다. MCP 레지스트리 URL 필드에 경로 없이 https://mcp.tc를 입력하십시오. GitHub 문서는 Azure API Center URL에 대한 참고 사항에서, 접미사로 /v0.1/servers와 같은 것을 사용하면 "레지스트리가 오류를 일으키게 되는데, 이는 GitHub Copilot 앱이 MCP v0.1 경로를 자동으로 추가하기 때문"이라고 설명합니다. 그런 다음 MCP 액세스를 레지스트리 서버로 제한(Restrict MCP access to registry servers) 항목에서 모두 허용(Allow all) (제한 없음) 또는 레지스트리 전용(Registry only) ("레지스트리에 있는 서버만 실행 가능")을 선택하십시오.
GitHub의 MCP 레지스트리 구성 페이지에는 다음과 같은 환경이 v0.1 레지스트리를 지원한다고 나열되어 있습니다: VS Code Insiders, VS Code, Visual Studio, Eclipse, JetBrains IDEs, Xcode 및 Copilot CLI. 동일한 페이지에서는 모든 /v0.1/servers 엔드포인트에 대해 CORS 헤더(그중 하나로 Access-Control-Allow-Origin: *)를 요청합니다. mcp.tc는 모든 응답에서 Access-Control-Allow-Origin: *를 전송하며, Authorization 및 Content-Type 헤더와 함께 GET, HEAD 및 OPTIONS를 허용합니다.
레지스트리만 믿기 전에 GitHub의 제한 사항을 읽어보세요. MCP private registry enforcement 페이지에는 '강제 적용은 서버 이름/ID 일치에만 기반하며, 설정 파일을 편집하여 우회할 수 있음'이라고 명시되어 있으며, 로컬 서버의 경우 레지스트리 ID가 '설치된 서버 ID와 정확히 일치해야 한다'고 합니다. 이 섹션의 모든 페이지는 또한 사용자 지정 레지스트리를 MCP 서버에 대한 액세스 제한을 위한 공용 미리 보기이며 '권장되는 방법이 아님'이라고 언급합니다. 대신 GitHub는 기업의 managed-settings.json에서 허용 목록(allowlist)을 사용하도록 권장합니다. 레지스트리 URL은 개발자가 무엇을 탐색할지 선택하는 좋은 방법입니다. 강제 적용의 경우, GitHub의 조언을 따르세요.
mcp.tc에서는 항목의 이름이 서버에 공식 레지스트리 이름이 있는 경우(예: com.notion/mcp) 그 이름이며, 그렇지 않은 경우 tc.mcp/와 슬러그를 결합한 형태입니다(예: tc.mcp/deepwiki). 이들은 레지스트리가 비교하는 이름들입니다.
사용자 지정 레지스트리 URL을 수락하는 다른 클라이언트
GitHub는 또한 Copilot의 세 가지 IDE(JetBrains IDEs (MCP Registry 창의 설정 아이콘), Xcode (Tools 탭, URL 편집) 및 Eclipse (MCP Registry 창에서 레지스트리 URL 구성))에 개인 MCP Registry URL 필드를 문서화하고 있습니다. 이들은 모두 Copilot 플러그인의 프리릴리스 빌드에서 공개 미리보기 상태입니다. 해당 페이지들에서는 이 필드가 기본 URL을 사용하는지 아니면 전체 /v0.1 경로를 사용하는지에 대해서는 언급하지 않습니다. 저희가 그 세 곳에서 mcp.tc를 테스트하지 않았기 때문에, 문서화된 것으로만 나열하며 확인된 것은 아닙니다.
다른 사용자 지정 레지스트리 URL을 사용하는 에디터는 알지 못합니다. 레지스트리가 없는 클라이언트도 설정 가이드를 사용하여 mcp.tc 목록에 있는 모든 서버를 설치할 수 있습니다.
기본 갤러리로 돌아가기
사용자 settings.json에서 chat.mcp.gallery.serviceUrl 줄을 삭제하고 저장합니다. VS Code는 내장 레지스트리에서 갤러리를 다시 로드합니다. mcp.tc 목록에서 설치한 서버들은 계속 설치된 상태를 유지합니다. 해당 서버들의 설정은 사용자의 mcp.json에 존재하며, 그 자체의 서버들을 가리킵니다. 또한 `
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기