Skip to content

Setup (Claude Desktop)

import { Steps, Aside } from ‘@astrojs/starlight/components’;

  1. Generate an API key

    Open FitRepo Settings and scroll to the MCP API Key card.

    Click Generate Key. Your key is displayed once — copy it now and store it somewhere safe (e.g. a password manager). FitRepo only stores a hash; if you lose the key you’ll need to regenerate it.

  2. Install the MCP server

    The server is distributed as an npm package. No global install is needed — Claude Desktop will invoke it with npx.

    Verify Node.js 18+ is available:

    Terminal window
    node --version
    # v20.x.x or similar
  3. Edit Claude Desktop config

    Open (or create) the Claude Desktop MCP configuration file:

    PlatformPath
    macOS~/Library/Application Support/Claude/claude_desktop_config.json
    Windows%APPDATA%\Claude\claude_desktop_config.json

    Add the FitRepo server to the mcpServers object:

    {
    "mcpServers": {
    "fitrepo": {
    "command": "npx",
    "args": ["-y", "@fitrepo/mcp-server"],
    "env": {
    "FITREPO_API_KEY": "your-api-key-here"
    }
    }
    }
    }

    Replace your-api-key-here with the key you copied in step 1.

  4. Restart Claude Desktop

    Fully quit and relaunch Claude Desktop. The FitRepo server icon should appear in the toolbar (a plug icon).

  5. Test the connection

    Ask Claude:

    “How many activities do I have in FitRepo?”

    Claude will call list_activities and report the total. If you see an error, check the troubleshooting section below.

If you’re self-hosting FitRepo, set FITREPO_BASE_URL to point at your instance:

{
"mcpServers": {
"fitrepo": {
"command": "npx",
"args": ["-y", "@fitrepo/mcp-server"],
"env": {
"FITREPO_API_KEY": "your-api-key-here",
"FITREPO_BASE_URL": "https://your-instance.example.com"
}
}
}
}

Go to Settings → MCP API Key and click Revoke Key. The key is immediately invalidated — any running MCP server will start receiving 401 errors on the next tool call.

“Unauthorized” errors : Check that FITREPO_API_KEY in your config matches the key shown when you generated it. Keys are case-sensitive. Try regenerating a new key in Settings.

Server doesn’t appear in Claude : Make sure you fully quit Claude (not just closed the window) and relaunched. Check that your JSON config is valid — use a JSON validator if unsure.

npx not found : Claude Desktop may not inherit your shell PATH. Add the full path to npx: "/usr/local/bin/npx" (find it with which npx).

Stale data : The MCP server fetches live from the API on every tool call — there’s no local cache. If data looks stale, check that your Strava/Wahoo connection is healthy in Settings.