Home

Awesome

Model Context Protocol servers

This repository is a collection of reference implementations for the Model Context Protocol (MCP), as well as references to community built servers and additional resources.

The servers in this repository showcase the versatility and extensibility of MCP, demonstrating how it can be used to give Large Language Models (LLMs) secure, controlled access to tools and data sources. Each MCP server is implemented with either the Typescript MCP SDK or Python MCP SDK.

🌟 Reference Servers

These servers aim to demonstrate MCP features and the Typescript and Python SDK.

🀝 Third-Party Servers

πŸŽ–οΈ Official Integrations

Official integrations are maintained by companies building production ready MCP servers for their platforms.

🌎 Community Servers

A growing set of community-developed and maintained servers demonstrates various applications of MCP across different domains.

Note: Community servers are untested and should be used at your own risk. They are not affiliated with or endorsed by Anthropic.

πŸ“š Resources

Additional resources on MCP.

πŸš€ Getting Started

Using MCP Servers in this Repository

Typescript-based servers in this repository can be used directly with npx.

For example, this will start the Memory server:

npx -y @modelcontextprotocol/server-memory

Python-based servers in this repository can be used directly with uvx or pip. uvx is recommended for ease of use and setup.

For example, this will start the Git server:

# With uvx
uvx mcp-server-git

# With pip
pip install mcp-server-git
python -m mcp_server_git

Follow these instructions to install uv / uvx and these to install pip.

Using an MCP Client

However, running a server on its own isn't very useful, and should instead be configured into an MCP client. For example, here's the Claude Desktop configuration to use the above server:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}

Additional examples of using the Claude Desktop as an MCP client might look like:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
    },
    "git": {
      "command": "uvx",
      "args": ["mcp-server-git", "--repository", "path/to/git/repo"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
    }
  }
}

πŸ› οΈ Creating Your Own Server

Interested in creating your own MCP server? Visit the official documentation at modelcontextprotocol.io for comprehensive guides, best practices, and technical details on implementing MCP servers.

🀝 Contributing

See CONTRIBUTING.md for information about contributing to this repository.

πŸ”’ Security

See SECURITY.md for reporting security vulnerabilities.

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ’¬ Community

⭐ Support

If you find MCP servers useful, please consider starring the repository and contributing new servers or improvements!


Managed by Anthropic, but built together with the community. The Model Context Protocol is open source and we encourage everyone to contribute their own servers and improvements!