Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"igpsport": {
"env": {},
"args": [],
"command": "igpsport-mcp"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
English | 简体中文
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'igpsport-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked igpsport-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in analytics / health
MCP Server for GCP environment for interacting with various Observability APIs.
⚡ A Simple / Speedy / Secure Link Shortener with Analytics, 100% run on Cloudflare.
MCP server for the ClinicalTrials.gov v2 API. Search trials, retrieve study details and results, and match patients to eligible trials.
MCP server that enables AI agents to perform comprehensive web audits using Google Lighthouse with 13+ tools for performance, accessibility, SEO, and security analysis.
MCP Security Weekly
Get CVE alerts and security updates for io.github.dengxuhui/igpsport-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
English | 简体中文
A local MCP server that connects your iGPSport cycling data to LLM clients like Claude. Analyze your training in natural language: "How's my training load this week?" "Compare my two long rides from last week and this week." "What's my ranking on that climb I starred?" "How many kilometers did I ride this year, and what are my personal bests?" — and even have Claude prescribe workouts for you: "Build me a 2×20 SST session based on my FTP and push it to my head unit."
Key differentiator: Derived training metrics — NP / IF / TSS / CTL / ATL / TSB — are computed server-side in the MCP layer before being returned. The LLM receives story-ready numbers, not raw stream data.
You: What's my training load trend over the last 90 days? Should I back off?
Claude (via analyze_training_load):
Current CTL (Fitness) 72, ATL (Fatigue) 91, TSB (Form) -19 — you're in a significant fatigue hole.
TSS has been above CTL for the past two weeks. Consider a 3–5 day recovery block to get TSB back above -5…

⚠️ Unofficial project. This tool works by simulating iGPSport web client requests. iGPSport may change their API at any time, which could break functionality. Please evaluate account risk yourself — use at your own risk. Runs entirely locally over stdio — your data never touches any third-party server.
This tool is an MCP server and requires an MCP-capable client (e.g. Claude Desktop / Claude Code / Cursor). Once you have a client ready, three steps:
1. Install uv (a standalone tool — you do not need Python pre-installed, uv handles the runtime automatically):
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
2. Install globally and run the setup wizard (interactively enter your phone/email and password — credentials stay local). The commands are the same on both systems; run them in Terminal on macOS or PowerShell on Windows:
uv tool install igpsport-mcp
igpsport-mcp --setup
If
igpsport-mcpis not found after installation, open a new terminal/PowerShell window so PATH updates take effect (uv places executables in~/.local/binon macOS,%USERPROFILE%\.local\binon Windows).
The wizard saves credentials to a config file (owner-readable only) and prints a copy-paste ready MCP configuration block. Config file locations:
~/.igpsport-mcp/config.jsonC:\Users\YourName\.igpsport-mcp\config.json3. Paste the printed config into your client, then restart the client (see "Connect to Claude" below).
Want to verify your credentials before pasting? Run
igpsport-mcp --check— it performs a real login and prints ✅ success or ❌ the reason for failure, so you don't add it to your client only to find it broken.Need to print the config snippet again later?
igpsport-mcp --mcp-configanytime.
Developers / users with an existing Python environment: use
uvx igpsport-mcpfor one-shot runs, or configure via environment variables below instead of the wizard.
Running with no arguments starts the MCP server in stdio mode (this is what your MCP client invokes — you normally don't run it manually). Other subcommands:
| Command | Purpose |
|---|---|
igpsport-mcp --setup | Interactive setup wizard: enter phone/email + password, saved to local config.json |
igpsport-mcp --mcp-config | Print a copy-paste ready MCP client configuration block |
igpsport-mcp --check | Perform a real login to verify credentials (account is shown masked) |
igpsport-mcp --lang en|zh | Set |