MCP Server Starter Template
Reference servers demonstrating the patterns that score well. Clone it, modify it, ship it.
Quick Start
# Install
uv pip install mcp-server-template
# Run via stdio (default)
python -m mcp_server_template
# Run via HTTP
python -m mcp_server_template --http --port 8080
Included Tools
Six example tools that demonstrate the right patterns. Replace them with your own.
echo
Echo a message back — useful for testing connectivity
calculate
Arithmetic operations (add, subtract, multiply, divide)
list_files
List files in a directory with optional glob pattern filtering
get_weather
Get simulated weather data for a city
search_notes
Search stored notes by keyword
create_note
Create a new note with title, content, and optional tags
Best Practices Demonstrated
Clear Tool Descriptions
Explains what each tool does and when to use it — so agents can discover the right tool
Typed Input Schemas
Pydantic models with property descriptions, format hints, required vs. optional — reduces agent errors
Proper Error Handling
Returns
isError=true with clear messages instead of crashingFuzz Resilience
Handles empty strings, huge numbers, null values, and wrong types gracefully
Both Transports
Stdio for local use, HTTP (Streamable HTTP) for remote connections — same code, two entry points
Usage
With Claude Desktop
{
"mcpServers": {
"template": {
"command": "python",
"args": ["-m", "mcp_server_template"]
}
}
}
Score This Server
# Score via HTTP
uvx mcp-score http://localhost:8080/mcp
# Score via stdio
uvx mcp-score stdio -- python -m mcp_server_template
MIT Licensed. Clone it, fork it, build on it.