🧗♂️ Climbing Grade Converter MCP Server
A specialized Model Context Protocol (MCP) server that enables LLMs (like Claude) to accurately convert climbing grades across different rating systems using a data-driven approach.
🛠️ Tech Stack
- Python 3.11+
- FastMCP (MCP Python SDK)
- Pydantic (Data Validation)
- uv (High-performance Python package & environment manager)
🚀 Quick Start (Linux/WSL)
1. Prerequisites Ensure you have uv installed in your Linux distribution: ``Bash curl -LsSf https://astral.sh/uv/install.sh | sh ` 2. Installation Clone the repository and sync dependencies: `Bash git clone https://github.com/yychentw/free-climbing-grade-converter-mcp.git cd free_climbing_grade_converter_mcp uv sync ` 3. Verification Test the server logic manually in your terminal: `Bash uv run main.py ``
⚙️ Configuration for Claude Desktop
To use this tool in Claude Desktop (Windows) via WSL, add the following entry to your claude_desktop_config.json (Note: Replace /home/user/... with the absolute path to your project directory in WSL.):
{
"mcpServers": {
"climbing-converter": {
"command": "wsl",
"args": [
"-d", "Ubuntu",
"-e", "bash", "-l", "-c",
"cd /home/user/free_climbing_grade_converter_mcp && uv run main.py"
]
}
}
}
📖 Usage Examples
Once connected, you can ask Claude:
- "I just climbed a 6a+ in France. What is that in YDS?"
- "Convert V3 to the French grading system."
- "What climbing systems do you currently support?"
📂 Project Structure
main.py: The core MCP server logic and tool definitions.climbing_grades.json: The source-of-truth database for grade mappings.pyproject.toml: Project metadata and dependency management.











