Skip to main content
When you build an MCP server, you rarely have to start from a blank file. The Model Context Protocol project maintains reference implementations, a registry for publishing and discovering servers, and the specification itself. Lean on these to learn proven patterns and to ship your server to users.

Reference Servers

The official modelcontextprotocol/servers repository is a large collection of reference and example MCP servers. It’s the best place to see how real servers structure tools, handle authentication, and format output.
  • Learn by example. Read a server close to your use case before writing your own.
  • Copy proven patterns. Tool naming, schema design, and error handling are already worked out — port what fits.
  • Use them as test fixtures. Run an existing server to confirm your client setup works before debugging your own.

MCP Registry

The MCP Registry is a community-driven registry service for publishing and discovering MCP servers.
  • Discover existing servers before building something that already exists.
  • Publish your server so agents and users can find and install it.
  • Reuse metadata conventions the registry expects (name, description, capabilities) when you design your own server’s manifest.

Specification & Documentation

The modelcontextprotocol/modelcontextprotocol repository holds the official specification and documentation.
  • Use it as the source of truth for protocol behavior — transports, capabilities, versioning, and message formats.
  • Check it when SDKs disagree or when you hit edge cases that examples don’t cover.
  • Track changes to stay compatible as the protocol evolves.
Building hands-on? Pair these resources with the MCP Server Development Tips for practical design guidelines.

Explore

Reference Servers

Official example and reference MCP servers

MCP Registry

Publish and discover MCP servers

Specification

The official protocol specification and docs

Development Tips

Practical guidelines for building MCP servers