Repolode
modelcontextprotocol

modelcontextprotocol/registry

A community-run registry service where MCP clients can discover MCP servers, acting like an app store for them.

Stars
7,394
Forks
1,033
Open issues
193
Last commit
18 hours ago

What is it?

The MCP Registry is a service that gives MCP clients a list of available MCP servers, functioning like an app store for the Model Context Protocol ecosystem. Server authors publish their servers to the registry so that clients can find them in one place.

Publishing is done with the mcp-publisher CLI from the server's own project rather than through a pull request to this repository. Publishers authenticate through GitHub OAuth or GitHub OIDC in GitHub Actions, or prove domain ownership via DNS or HTTP challenges, and the registry checks namespace ownership when a server is published.

The project is written in Go and runs as an HTTP API backed by PostgreSQL. A local development environment can be started with a single make command using Docker Compose, and pre-built container images are published to GitHub Container Registry. The API is in a v0.1 freeze, with no breaking changes planned for the near term.

Key features

  • 01Lists MCP servers that MCP clients can query and discover
  • 02Publishing via the mcp-publisher CLI from each server's own project
  • 03Namespace ownership checks through GitHub login, GitHub OIDC, DNS, or HTTP verification
  • 04Go HTTP API backed by PostgreSQL
  • 05Local development environment via Docker Compose and ko-built images

Use cases

  • Publishing an MCP server so that clients can discover it
  • Building an MCP client that needs to browse available servers
  • Integrating registry lookups into tooling or client applications
  • Running a private or self-hosted registry for development and testing

Quick start

  1. 1

    Install Docker, Go, ko and golangci-lint (see README prerequisites)

  2. 2

    Start the full development environment with PostgreSQL

    make dev-compose
  3. 3

    Build the publisher CLI (optional, for publishing a server)

    make publisher

Things to know

  • Publishing a server is not done through pull requests to this repository; use the mcp-publisher CLI instead.
  • The API is in preview and the database uses ephemeral storage that resets on container restart in development.
  • The license is listed as NOASSERTION, so the license terms are unclear from the metadata.

In collections

Topics

FAQ

What is registry?
A community-run registry service where MCP clients can discover MCP servers, acting like an app store for them. The MCP Registry is a service that gives MCP clients a list of available MCP servers, functioning like an app store for the Model Context Protocol ecosystem. Server authors publish their servers to the registry so that clients can find them in one place.
Is registry free to use? What license does it have?
registry is open source under the Other license. Check the license terms before using it in commercial products.
Is registry still maintained?
Actively maintained. The last commit to registry was on Oct 21, 2026.
What can I use registry for?
Publishing an MCP server so that clients can discover it Building an MCP client that needs to browse available servers Integrating registry lookups into tooling or client applications Running a private or self-hosted registry for development and testing
How do I install registry?
Install Docker, Go, ko and golangci-lint (see README prerequisites) Start the full development environment with PostgreSQL: make dev-compose Build the publisher CLI (optional, for publishing a server): make publisher
Where can I get registry?
The source code and installation instructions are on GitHub: https://github.com/modelcontextprotocol/registry

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects