HAPI Strava MCP Server

Tags

registry.modelcontextprotocol.io

Configuration

{
  "mcpServers": {
    "strava": {
      "url": "https://strava.run.mcp.com.ai/mcp",
      "type": "http"
    }
  },
  "requiresAuth": false,
  "requiresOAuth": false
}

Available Tools (13)

getStats

Get Athlete Stats - Returns the activity stats of an athlete. Only includes data from activities set to Everyone visibilty.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    }
  }
}

getLoggedInAthlete

Get Authenticated Athlete - Returns the currently authenticated athlete. Tokens with profile:read_all scope will receive a detailed athlete representation; all others will receive a summary representation.

Input Schema
{
  "type": "object",
  "properties": {}
}

getLoggedInAthleteStarredSegments

List Starred Segments - List of the authenticated athlete's starred segments. Private segments are filtered out unless requested by a token with read_all scope.

Input Schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}

getEffortsBySegmentId

List Segment Efforts - Returns a set of the authenticated athlete's segment efforts for a given segment. Requires subscription.

Input Schema
{
  "type": "object",
  "required": [
    "segment_id"
  ],
  "properties": {
    "per_page": {
      "type": "integer"
    },
    "segment_id": {
      "type": "integer"
    },
    "end_date_local": {
      "type": "string",
      "format": "date-time"
    },
    "start_date_local": {
      "type": "string",
      "format": "date-time"
    }
  }
}

exploreSegments

Explore segments - Returns the top 10 segments matching a specified query.

Input Schema
{
  "type": "object",
  "required": [
    "bounds"
  ],
  "properties": {
    "bounds": {
      "type": "array",
      "items": {
        "type": "number",
        "format": "float"
      },
      "maxItems": 4,
      "minItems": 4
    },
    "max_cat": {
      "type": "integer",
      "maximum": 5,
      "minimum": 0
    },
    "min_cat": {
      "type": "integer",
      "maximum": 5,
      "minimum": 0
    },
    "activity_type": {
      "enum": [
        "running",
        "riding"
      ],
      "type": "string"
    }
  }
}

getSegmentEffortById

Get Segment Effort - Returns a segment effort from an activity that is owned by the authenticated athlete. Requires subscription.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    }
  }
}

getClubById

Get Club - Returns a given club using its identifier.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    }
  }
}

getClubMembersById

List Club Members - Returns a list of the athletes who are members of a given club.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}

getClubAdminsById

List Club Administrators - Returns a list of the administrators of a given club.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}

getClubActivitiesById

List Club Activities - Retrieve recent activities from members of a specific club. The authenticated athlete must belong to the requested club in order to hit this endpoint. Pagination is supported. Athlete profile visibility is respected for all activities.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64"
    },
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}

getLoggedInAthleteClubs

List Athlete Clubs - Returns a list of the clubs whose membership includes the authenticated athlete.

Input Schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}

getGearById

Get Equipment - Returns an equipment using its identifier.

Input Schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string"
    }
  }
}

getRoutesByAthleteId

List Athlete Routes - Returns a list of the routes created by the authenticated athlete. Private routes are filtered out unless requested by a token with read_all scope.

Input Schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer"
    },
    "per_page": {
      "type": "integer"
    }
  }
}