
Heart Routes
This connects Claude to CityHeart's GPS route generation service, letting you create heart-shaped running routes across 200+ cities. You can query available cities, generate GPX files for specific locations and distances (3–15 km), and retrieve routes compatible with Garmin, Strava, Apple Watch, and other GPS devices. Reach for this when building fitness apps, gift services, or location-based experiences where you need algorithmically generated GPS art that follows real streets. The routes work well for Valentine's Day campaigns, marathon prep tools, or any app where users want shareable activity tracker art. It talks to their Supabase backend via streamable HTTP and returns standard GPX format data.
- tools
- 7
- transport
- HTTP
- last updated
- May 22, 2026
Install
From registry metadata$ npx add-mcp https://zhenwiaphfwetckfysod.supabase.co/functions/v1/mcp --name heart-routesRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http heart-routes https://zhenwiaphfwetckfysod.supabase.co/functions/v1/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 7 toolsVerified live against the running server on Nov 6, 2026.
find_heart_route_in_cityFind an existing heart-shaped running route in a given city. Returns up to 5 AI-validated routes matching the city (and optionally a target distance). Use this when a user mentions a city and wants a heart route — e.g. "find me a heart-shaped route in Paris" or "I want to run...3 params
Find an existing heart-shaped running route in a given city. Returns up to 5 AI-validated routes matching the city (and optionally a target distance). Use this when a user mentions a city and wants a heart route — e.g. "find me a heart-shaped route in Paris" or "I want to run...
city*stringmax_distance_kmnumberprefer_goldbooleanget_route_detailsGet full details for a specific heart route by its slug. Use after find_heart_route_in_city when the user picks one. Returns: city, distance, image URL, share URL, dedication (if any), and the GPX download deep-link.1 params
Get full details for a specific heart route by its slug. Use after find_heart_route_in_city when the user picks one. Returns: city, distance, image URL, share URL, dedication (if any), and the GPX download deep-link.
slug*stringlist_supported_citiesList cities that have at least one heart route available. Use when the user asks "where can I run a heart?" or hasn't picked a city yet. Returns city names + route counts, sorted by inventory size.1 params
List cities that have at least one heart route available. Use when the user asks "where can I run a heart?" or hasn't picked a city yet. Returns city names + route counts, sorted by inventory size.
limitnumbergenerate_heart_routeStart a new heart-shaped route for a given city. Returns existing AI-validated matches from inventory PLUS a deep-link to the live builder for an on-demand fresh generation with the user's exact dedication and cause. Use when the user explicitly wants a NEW heart, or when an e...5 params
Start a new heart-shaped route for a given city. Returns existing AI-validated matches from inventory PLUS a deep-link to the live builder for an on-demand fresh generation with the user's exact dedication and cause. Use when the user explicitly wants a NEW heart, or when an e...
cause_urlstringcity*stringdedicationstringdistance_kmnumberin_memorybooleanadd_dedicationCompose a builder URL with a dedication pre-filled — the name shows on the runner's GPS watch and in the Strava activity title. Use after the user picks a route (find/generate) and decides who the heart is for. Pure URL builder, no server-side state.3 params
Compose a builder URL with a dedication pre-filled — the name shows on the runner's GPS watch and in the Strava activity title. Use after the user picks a route (find/generate) and decides who the heart is for. Pure URL builder, no server-side state.
citystringin_memorybooleanname*stringadd_causeCompose a builder URL with a fundraising link pre-filled — the URL is embedded into the GPX metadata (description, filename) so it surfaces in the runner's Strava activity after they sync. CityHeart never collects the donation; the runner's donors click straight through to Jus...2 params
Compose a builder URL with a fundraising link pre-filled — the URL is embedded into the GPX metadata (description, filename) so it surfaces in the runner's Strava activity after they sync. CityHeart never collects the donation; the runner's donors click straight through to Jus...
citystringfundraising_url*stringexport_gpxReturn the GPX download / checkout URL for a specific public route. The download itself happens on cityheart.run after a one-time €9.90 payment (Stripe — CityHeart never charges through the chat). Use after the user has picked a final route (find / get_details) and confirms th...1 params
Return the GPX download / checkout URL for a specific public route. The download itself happens on cityheart.run after a one-time €9.90 payment (Stripe — CityHeart never charges through the chat). Use after the user has picked a final route (find / get_details) and confirms th...
slug*stringSponsors
Readme
Details
- Repository
- github.com/secupunk/scenic-pathfinder-ai
- Website
- cityheart.run/mcp
- Transport
- HTTP
- Registry
- MCP registry, active
- Tools verified
- Nov 6, 2026