MCP Registry

MCP Registry는 MCP 클라이언트가 사용할 수 있는 MCP 서버 목록을 제공하는 서비스로, MCP 서버를 위한 앱 스토어처럼 동작합니다. 공개된 MCP 서버에 대한 권위 있는(공식) 메타데이터 저장소 역할을 합니다.

Registry 공개! 🎉
공식 MCP Registry가 2025년 9월 8일 프리뷰로 공개되었습니다. 자세한 내용은 출시 안내 블로그 글을 확인하세요.

빠른 접근

Registry 생태계

MCP Registry 프로젝트는 크게 두 가지 핵심 구성으로 이루어집니다:

🟦 MCP Registry Spec

누구나 레지스트리를 구현할 수 있도록 하는 API 사양입니다.

🟥 Official MCP Registry

MCP Registry Spec을 따르는 호스팅 레지스트리로, registry.modelcontextprotocol.io에서 제공됩니다.

Features:

  • 📋 공식 메타데이터 저장소: 공개 MCP 서버에 대한 단일 진실 공급원(SSOT)
  • 🏛️ 커뮤니티 중심 운영: MCP 오픈소스 커뮤니티가 주도하며 Anthropic, GitHub, PulseMCP, Microsoft 등 신뢰할 수 있는 기여자가 참여
  • 🔍 통합 검색/탐색: 제작자는 한 번 게시하고, 소비자는 동일한 표준(정규) 데이터를 참조

Registry 동작 방식

Metaregistry Concept

MCP 레지스트리는 메타 레지스트리(metaregistry) 입니다. 패키지에 대한 메타데이터를 호스팅하지만, 패키지 코드나 바이너리 자체는 호스팅하지 않습니다.

  graph TD
    A[MCP Registry] -->|Metadata| B[NPM Registry]
    A -->|Metadata| C[PyPI Registry]
    A -->|Metadata| D[Docker Hub]
    A -->|Metadata| E[GitHub Releases]
    
    B -->|Actual Code| F[MCP Client]
    C -->|Actual Code| F
    D -->|Actual Images| F
    E -->|Actual Files| F

Example:

  • MCP Registry: “weather-server v1.2.0은 npm:weather-mcp에 있음”
  • NPM Registry: [실제 weather-mcp 패키지 코드]

Server Representation Format

각 서버 엔트리는 표준화된 server.json 형식을 사용하며, 다음 정보를 포함합니다:

  • 🆔 식별자(Identity): 고유 이름(io.github.user/server-name)
  • 📦 패키지(Packages): 다운로드 위치(npm, pypi, docker 등)
  • ⚙️ 런타임(Runtime): 실행 방법(인자, 환경 변수)
  • 📝 메타데이터(Metadata): 설명, 기능, 버전

배포 방식

📦 Package Deployment

레지스트리(npm, PyPI, NuGet, Docker Hub 등)에 게시되고, 클라이언트가 로컬에서 실행합니다.

Supported Registries:

  • NPM: JavaScript/TypeScript 서버
  • PyPI: Python 서버
  • NuGet: .NET 서버
  • Docker Hub/GHCR: 컨테이너 기반 서버
  • MCPB: MCP 번들(MCP Bundle) 포맷
  • GitHub/GitLab Releases: 파일 직접 다운로드

🌐 Remote Deployment

클라이언트가 직접 연결하는 웹 서비스로 호스팅합니다.

Supported Transport Protocols:

  • SSE(Server-Sent Events): 서버 푸시 이벤트
  • Streamable HTTP: 스트리밍 HTTP 연결

🔄 Hybrid Deployment

유연성을 높이기 위해 패키지 방식과 원격 방식을 함께 제공합니다.

인증과 네임스페이스

Registry는 네임스페이스(namespace)를 기반으로 소유권을 검증합니다:

GitHub Namespaces (io.github.username/*)

  • 검증: GitHub OAuth 또는 GitHub Actions OIDC
  • 적합한 대상: 오픈소스 프로젝트, 개인 개발자
  • 예시: io.github.modelcontextprotocol/filesystem

Domain Namespaces (com.yourcompany/*)

  • 검증: DNS 또는 HTTP 도메인 검증
  • 적합한 대상: 기업, 조직
  • 예시: com.anthropic/claude-tools

Registry 아키텍처

  graph TB
    subgraph "Ecosystem"
        OR[Official Registry]
        SR1[Subregistry A]
        SR2[Subregistry B]
        SR3[Enterprise Registry]
    end
    
    subgraph "Clients"
        MC1[MCP Client 1]
        MC2[MCP Client 2]
        APP[Third-party App]
    end
    
    subgraph "Publishers"
        PUB1[Developer A]
        PUB2[Company B]
        PUB3[Open Source Project]
    end
    
    OR -.ETL.-> SR1
    OR -.ETL.-> SR2
    SR1 --> MC1
    SR2 --> MC2
    SR3 --> APP
    
    PUB1 --> OR
    PUB2 --> OR
    PUB3 --> OR

Subregistries

서브레지스트리(subregistry)는 다음과 같은 가치를 더해 Registry 생태계를 확장합니다:

  • 🎯 큐레이션: 특정 커뮤니티/유스케이스에 맞게 서버를 필터링
  • ⭐ 평점/지표: 사용자 평점과 다운로드 통계 제공
  • 🔒 보안: 보안 스캔 및 취약점 점검
  • 🏢 엔터프라이즈: 기업 내부용 서버 레지스트리 제공

Registry API 빠른 참조

Core Endpoints

  • GET /v0/servers - 페이지네이션으로 서버 목록 조회
  • GET /v0/servers/{id} - UUID로 서버 상세 조회
  • POST /v0/publish - 새 서버 게시(인증 필요)

Basic Examples

# List first 10 servers
curl "https://registry.modelcontextprotocol.io/v0/servers?limit=10"

# Search for specific servers
curl "https://registry.modelcontextprotocol.io/v0/servers?search=filesystem"

# Get specific server details
curl "https://registry.modelcontextprotocol.io/v0/servers/{server-id}"

설계 원칙

MCP Registry는 다음 핵심 원칙을 따릅니다:

  1. 🎯 단일 진실 공급원(SSOT): 공개 MCP 서버에 대한 공식 메타데이터 저장소
  2. ⚖️ 벤더 중립성: 특정 서버/조직에 대한 우대 없음
  3. 🔒 업계 보안 표준 준수: 기존 패키지 레지스트리의 보안 모델을 활용
  4. 🔧 재사용성: 사설/내부 레지스트리까지 지원하도록 재사용 가능한 API 형태
  5. 📈 점진적 고도화: MVP부터 시작해 미래 기능을 위한 기반 확장

커뮤니티 및 기여

협업 채널

주요 메인테이너

다음 단계

빠른 내비게이션

Preview Notice
현재 Registry는 프리뷰 단계이며, 호환성에 영향을 주는 변경이나 데이터 초기화가 발생할 수 있습니다. 이후 정식(GA) 릴리스가 제공될 예정입니다.