Ourpr MCP Server vs Strava MCP

A side-by-side look at the Ourpr MCP Server and Strava MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Ourpr MCP Server logoOurpr MCP ServerSports · Local subprocess (stdio)Read your own ourpr running history in an AI agent, and put a plan on the week ahead.61GoodAuth: not declaredStrava MCP logoStrava MCPSports · Local subprocess (stdio)A Model Context Protocol (MCP) server that connects to Strava API, providing tools to access Strava data through LLMs67GreatAuth: oauth 2.0

Verdict: choose Ourpr MCP Server for sports work as a local process; choose Strava MCP for sports as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Ourpr MCP Server logoChoose Ourpr MCP Server when

  • You need dedicated capabilities in the Sports domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: OURPR_TOKEN, OURPR_API_URL.
  • You want tools like ourpr_list_runs, ourpr_get_run, ourpr_run_stream.
Explore Ourpr MCP Server

Strava MCP logoChoose Strava MCP when

  • You need dedicated capabilities in the Sports domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: OAuth 2.0.
  • You want tools like get-athlete-profile, get-athlete-stats, get-activity-details.
Explore Strava MCP

Feature & specification comparison

Rows where the two servers differ are marked.

SpecOurpr MCP Server logoOurpr MCP ServerStrava MCP logoStrava MCP
CategorySportsSports
Quality signal61/100 · Good67/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredOAuth 2.0
PricingNot declaredBYOK (pay the provider)
Required env varsOURPR_TOKENOURPR_API_URLNone listed
Verified ownerCommunity listingCommunity listing
GitHub stars0500
Directory activity 1 views 0 installs 0 upvotes 2 views 0 installs 0 upvotes
Tools1124

Tools & capabilities

Ourpr MCP Server tools 11

  • ourpr_list_runsTraining history between two dates, newest first: date, local start, name, type, miles, pace, time, elevation, average heart rate, and on a runs-only list Friel's efficiency factor and the heartbeats each mile took. Start here for totals, streaks, trends, or finding a run. For one run's splits, use ourpr_get_run with an id from here.
  • ourpr_get_runOne activity in full: mile splits with heart rate, cadence, calories, device. Id comes from ourpr_list_runs. For the profile along the route, use ourpr_run_stream.
  • ourpr_run_streamA run's profile on a 10 m grid — elevation, heart rate, power, cadence — as min, average, max and coverage per channel, not every sample. Also each half by distance with its moving pace, heart rate and efficiency, and the drift between them (aerobic decoupling, Pa:HR). No profile is a normal answer for an indoor run.
  • ourpr_run_lapsThe laps the watch recorded for one run — the runner's own button presses. Laps follow the workout; mile splits follow the mile.
  • ourpr_rep_workoutsInterval sessions found across the history, with reps and distances. Detection is conservative, so a session it misses is still in ourpr_list_runs.
  • ourpr_detect_repsWhether one particular run was an interval session, and its reps.
  • ourpr_similar_terrainStretches of past runs matching a distance and climb — what the runner has already done that resembles a race they are training for.
  • ourpr_training_blocksThe goal race and its Block: race day, distance, goal time, which week of the Block today falls in, and miles for each week. Also the Blocks before past races, each with its result, weeks and peak week. A Block is the race-anchored Monday to Sunday weeks before a race.
  • ourpr_list_racesEvery race ourpr finds in the history, newest first, tune-ups included: date, name, distance, time, pace and run id. Also the fastest result at 5K, 10K, half marathon and marathon among them.
  • ourpr_list_plansThe runner's planned runs between two dates: day, name, miles, time, tag, the runner's note, whether a logged run fulfilled it, and whether ourpr create wrote it. Read it before ourpr_plan_week so a new plan does not land on a day that already holds one.
  • ourpr_plan_weekWrite one planned run, or a week of them, onto days still ahead. Each lands on the runner's week as a plan they can see, edit and remove. Needs a token made with the write scope and ourpr create. Never logs a run.

Strava MCP tools 24

  • get-athlete-profileFetches the profile information for the authenticated athlete, including their unique numeric ID needed for other tools like get-athlete-stats.
  • get-athlete-statsFetches the activity statistics (recent, YTD, all-time) for a specific athlete using their ID. Requires the athleteId obtained from the get-athlete-profile tool.
  • get-activity-detailsFetches detailed information about a specific activity using its ID.
  • get-recent-activitiesFetches the most recent activities for the authenticated athlete.
  • list-athlete-clubsLists the clubs the authenticated athlete is a member of.
  • list-starred-segmentsLists the segments starred by the authenticated athlete.
  • get-segmentFetches detailed information about a specific segment using its ID.
  • explore-segmentsSearches for popular segments within a given geographical area.
  • star-segmentStars or unstars a specific segment for the authenticated athlete.
  • get-segment-effortFetches detailed information about a specific segment effort using its ID.
  • list-segment-effortsLists the authenticated athlete's efforts on a specific segment, optionally filtering by date.
  • list-athlete-routesLists the routes created by the authenticated athlete, with pagination.
  • +12 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Ourpr MCP Server

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "ourpr-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "ourpr-mcp-server@0.5.0"
      ],
      "env": {
        "OURPR_TOKEN": "YOUR_OURPR_TOKEN_HERE",
        "OURPR_API_URL": "YOUR_OURPR_API_URL_HERE"
      }
    }
  }
}

Strava MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "r-huijts-strava-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@r-huijts/strava-mcp-server"
      ]
    }
  }
}

Frequently asked questions

Ourpr MCP Server is categorized under Sports and uses a local stdio subprocess. Strava MCP belongs to Sports and uses a local stdio subprocess. Pick Ourpr MCP Server for sports work and Strava MCP for sports.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Ourpr MCP Server has no declared pricing — check the project's own site. Strava MCP is bring-your-own-key: usage is billed by the API provider you supply a key for. Auth: oauth 2.0. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add ourpr-mcp-server and r-huijts-strava-mcp as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Ourpr MCP Server has a quality signal of 61/100 (Good) with 1 views, 0 installs and 0 GitHub stars. Strava MCP has 67/100 (Great) with 2 views, 0 installs and 500 GitHub stars.