MCPSvr provides a community-driven directory and discovery platform for MCP (Model Context Protocol) servers, enabling developers to find and share server tools through a centralized repository. The server manages a JSON-based configuration system that allows MCP clients like 5ire to directly install and run registered servers, with support for parameterized configurations, environment variables, and standardized metadata. It solves the problem of MCP server discoverability and streamlines the process for developers to contribute and share their custom MCP server implementations.
A community-driven directory for discovering, reviewing, and contributing MCP servers.
MCPSvr is a lightweight web directory for Model Context Protocol servers. It helps developers browse available servers, understand how each one is configured, and contribute new entries through pull requests.
The repository centers on a curated public/servers.json registry, so MCP clients such as 5ire can install and run supported servers directly.
https://github.com/user-attachments/assets/3d1ec8db-2041-4f2d-b72c-eb8ae17ab31c
MCP servers are growing fast, but good discovery is still fragmented. MCPSvr gives the ecosystem a simple shared registry with enough metadata for humans to evaluate tools and for clients to automate setup.
.
├── app/ # Next.js app router pages
├── components/ # Reusable UI components
├── lib/ # Utility helpers
├── public/
│ ├── logo.png
│ └── servers.json # Central MCP server registry
└── README_cn.md # Chinese README
package-lock.json)npm install
npm run dev
Then open http://localhost:3000.
npm run build
npm run start
All registered MCP servers are maintained in public/servers.json. To contribute a new entry:
public/servers.json{
"name": "Server Identifier",
"key": "Unique alphanumeric identifier",
"description": "Concise implementation overview",
"command": "Execution environment specifier (for example uvx, npx, python, node)",
"args": [
"Required runtime arguments"
],
"env": {
"ENVIRONMENT_VARIABLE": "Value assignment"
},
"homepage": "Official documentation URL"
}
key must be unique, alphanumeric, and start with a lettername is optional and falls back to key when omittedenv and homepage are optional but strongly recommendedWhen a server needs user-provided input, use the placeholder format below:
{{paramName@paramType::paramDescription}}
Example:
{
"name": "File System Access Control",
"key": "FileSystem",
"command": "npx",
"description": "Enforces directory-level operation restrictions through specified arguments",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"{{dirs@list::directories you are about to access, include trailing slash}}"
],
"homepage": "https://github.com/modelcontextprotocol/servers"
}
Supported placeholder types include string, list, and number.
ray0907/git-mcp-server
cyanheads/git-mcp-server
io.github.b1ff/atlassian-dc-mcp-bitbucket
io.github.b1ff/atlassian-dc-mcp-jira
com.mcparmory/atlassian-jira
sirlordt/vscode-terminal-mcp