mcpsvr
Categories
Language:
TypeScript
Stars:
17
Forks:
7
Discover Exceptional MCP Servers
MCPSvr is an innovative spin-off project from 5ire designed to host a community-driven directory of MCP servers. This platform empowers developers to discover exceptional tools while offering a streamlined process for sharing their own MCP server creations.
🚀 The servers here enable MCP clients like 5ire to install and run directly.
https://github.com/user-attachments/assets/3d1ec8db-2041-4f2d-b72c-eb8ae17ab31c
Contribution Guidelines
All registered MCP servers are maintained in the centralized repository located at /public/servers.json
. Developers can submit new server configurations through GitHub pull requests (PRs).
Configuration Schema
{
"name": "Server Identifier",
"key": "Unique alphanumeric identifier",
"description": "Concise implementation overview",
"command": "Execution environment specifier (e.g., uvx, npx, python, node)",
"args": [
"Required runtime arguments"
],
"env": {
"ENVIRONMENT_VARIABLE": "Value assignment"
},
"homepage": "Official documentation URL"
}
Best Practices
- Field Organization: Maintain alphabetical ordering for configuration keys
- Identifier Requirements:
- Must be a unique alphanumeric string starting with a letter
- Strictly prohibits numeric prefixes
- Metadata Handling:
- Optional
name
field defaults tokey
display value - Environment variables and homepage URLs are supplementary fields
- Optional
User-Defined Parameters
For interactive parameter requirements, adhere to the standardized format:
{{paramName@paramType::paramDescription}}
This convention enables parameter extraction and presentation in client applications.
Example Implementation:
{
"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 about to access. Include trailing slash}}"
],
"homepage": "https://github.com/modelcontextprotocol/servers"
}
Parameter Extraction:
{
"name": "dirs",
"type": "list",
"description": "Directories you about to access. Include trailing slash"
}
Field Constraints:
paramName
must be unique within the server configuration- Supported data types include string,list and number,make sure to use the right type!
- Descriptive text remains optional