komoot-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| KOMOOT_EMAIL | No | Your Komoot email. Set this and KOMOOT_PASSWORD in the server's env block to use environment variables instead of the system keychain. They take precedence over the keychain. | |
| KOMOOT_PASSWORD | No | Your Komoot password. Set this and KOMOOT_EMAIL in the server's env block to use environment variables instead of the system keychain. They take precedence over the keychain. | |
| KOMOOT_MCP_CACHE_DIR | No | Parsed tour cache directory. Defaults to ~/.cache/komoot-mcp. Holds your tours' full GPS tracks and saved highlights in plain files. | ~/.cache/komoot-mcp |
| KOMOOT_MCP_ROUTES_DIR | No | Where built routes are saved. Defaults to ~/komoot-mcp-routes. Holds your tours' full GPS tracks and saved highlights in plain files. | ~/komoot-mcp-routes |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| setup_credentialsA | Store Komoot credentials in the system keychain for future use. Call this once before using any other Komoot tools, unless you set the KOMOOT_EMAIL and KOMOOT_PASSWORD environment variables instead. Credentials are verified first, then stored in the system keychain under service 'komoot-mcp'; a failed sign-in stores nothing. |
| list_toursA | List your Komoot tours with optional filtering by sport type, location, and radius. Use near_lat/near_lon to search tours near a geographic point. Args: sport_type: Sport type filter. Empty string = all sports. Common: touringbicycle, mtb, mtb_easy, racebike, hike. tour_type: Tour type. 'tour_planned' for planned, 'tour_recorded' for recorded. limit: Max number of tours to return. near_lat: Filter by latitude (center point). near_lon: Filter by longitude (center point). radius_km: Search radius in km (used with near_lat/near_lon). |
| get_tour_detailsA | Get full details of a Komoot tour including surface types and way types. Returns surface breakdown (gravel, asphalt, dirt, etc.) and way types (path, cycleway, street, etc.) which are essential for gravel ride planning. Args: tour_id: The Komoot tour ID. include_coordinates: If True, include full GPS coordinate array (can be 1000+ points). Defaults to False to keep responses compact for scoring/ranking. |
| download_tour_gpxA | Download a Komoot tour as GPX file. Args: tour_id: The Komoot tour ID. save_path: Optional file path to save the GPX. If empty, returns GPX XML as text. |
| upload_gpx_to_komootB | Upload a GPX file to Komoot as a new planned tour. Args: gpx_path: Path to the GPX file to upload. name: Name for the new tour on Komoot. sport: Sport type. Common: touringbicycle, mtb, racebike. |
| get_highlightsB | Get highlights and points of interest near a location. Highlights include scenic viewpoints, interesting places, and user-recommended spots that are useful for planning attractive gravel routes. Args: lat: Latitude of the center point. lon: Longitude of the center point. radius_m: Search radius in meters (default 5000). |
| get_saved_highlightsA | Get your saved/bookmarked Komoot highlights. Returns your personally saved highlights (scenic spots, viewpoints, interesting places you've bookmarked). These are used as waypoint attractors when building combined routes: the route combiner prefers paths that pass near your saved highlights. |
| get_tour_segmentsA | Get raw segment data (coordinates + surfaces + way types) for a tour. Unlike get_tour_details which aggregates surface data, this returns the raw segment arrays needed for route combination: splitting tours by surface type and recombining the best gravel segments. Args: tour_id: The Komoot tour ID. |
| build_combined_routeA | Build a custom gravel route by combining the best segments from multiple saved tours. Selects gravel segments from saved tours within a corridor between start and end, ordered by forward progress. Connects them via OSRM cycling router. Every km follows either a saved-tour path or a short OSRM connector. For loops: omit end_lat/end_lon. For point-to-point: provide both. Uses a disk cache for parsed segments: only fetches new tours from the API. Set force_refresh=True to re-fetch all tour data. Args: tour_ids: List of Komoot tour IDs to extract segments from. start_lat: Starting point latitude. start_lon: Starting point longitude. distance_km: Target route distance in km (default 50). min_gravel_pct: Minimum gravel percentage target (default 60). route_name: Name for the combined route. save_path: File path to save GPX. Defaults to $KOMOOT_MCP_ROUTES_DIR/.gpx (or ~/komoot-mcp-routes/ when the variable is not set). use_saved_highlights: If True, fetch saved highlights and use as waypoint attractors (default True). force_refresh: If True, ignore cache and re-fetch all tour data from Komoot API (default False). end_lat: End point latitude (for point-to-point routes). Omit for loops. end_lon: End point longitude (for point-to-point routes). Omit for loops. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool has a largely distinct purpose, and the descriptions clarify potential overlaps. The main possible confusion is between get_tour_details and get_tour_segments, but the text explicitly differentiates aggregated data from raw segment arrays. Highlight tools are also distinguished by location-based versus saved/bookmarked results.
All tool names follow a clear snake_case, verb-first action_object pattern (e.g., setup_credentials, list_tours, download_tour_gpx, build_combined_route). The convention is consistent across the entire set with no mixed casing or vague verb styles.
Nine tools is well-scoped for a Komoot integration focused on credential setup, tour browsing, GPX handling, highlights, and route building. Each tool serves a distinct step in these workflows, with no obviously redundant or missing count-level concerns.
The surface covers credentials, tour listing/details, raw segments, GPX download/upload, highlights, saved highlights, and combined route building, forming a coherent gravel-planning toolkit. Minor gaps exist around tour metadata update/delete and saving highlights, but core creation/read/export/route-building workflows are covered.