Cover image
Try Now
2025-03-05

3 years

Works with Finder

1

Github Watches

0

Github Forks

2

Github Stars

Strava MCP Server

A Model Context Protocol (MCP) server that provides access to the Strava API. This server enables language models to interact with Strava data, including activities, athlete information, and more.

Features

  • 🏃‍♂️ Activity tracking and analysis
  • 📊 Athlete statistics
  • 🗺️ Route visualization
  • 🏆 Achievement tracking
  • 🤝 Social features (kudos, comments)

Prerequisites

  • Python 3.12+
  • Strava API credentials
  • pip (Python package installer)

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/strava_mcp.git
cd strava_mcp
  1. Create a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: .\venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt

Configuration

  1. Create a config/.env file with your Strava API credentials:
STRAVA_CLIENT_ID=your_client_id
STRAVA_CLIENT_SECRET=your_client_secret
STRAVA_REFRESH_TOKEN=your_refresh_token
  1. To obtain Strava API credentials:

Usage

Using with Claude

Once connected, you can interact with your Strava data through Claude in various ways:

Activity Queries

  • "Show me my recent activities"
  • "Get details about my last run"
  • "What was my longest ride this month?"
  • "Show me activities where I set personal records"
  • "Display the route map for my latest activity"

Performance Analysis

  • "What's my average running pace this year?"
  • "Compare my cycling performance between last month and this month"
  • "Show me my heart rate zones from yesterday's workout"
  • "What's my total elevation gain for all activities?"
  • "Calculate my weekly mileage for running"

Social Interactions

  • "Who gave kudos on my latest activity?"
  • "Show me comments on my marathon run"
  • "List all my club activities"
  • "Find activities I did with friends"

Achievement Tracking

  • "List all my segment achievements"
  • "Show my personal records on local segments"
  • "What achievements did I earn this week?"
  • "Display my progress on yearly goals"

Data Available Through Claude

  1. Activity Details:

    • Distance, duration, pace
    • Route maps and elevation profiles
    • Heart rate, power, and cadence data
    • Splits and lap information
    • Weather conditions during activity
  2. Athlete Statistics:

    • Year-to-date and all-time totals
    • Personal records and achievements
    • Training load and fitness trends
    • Equipment usage and maintenance
  3. Social Data:

    • Kudos and comments
    • Club activities and leaderboards
    • Friend activities and challenges
    • Segment efforts and rankings
  4. Route Information:

    • Detailed maps with elevation data
    • Segment analysis
    • Popular routes and segments
    • Route planning and analysis

As an MCP Server

Update your Claude Desktop configuration:

{
    "mcpServers": {
        "Strava": {
            "command": "python",
            "args": ["src/strava_server.py"],
            "cwd": "/path/to/strava_mcp",
            "env": {
                "STRAVA_CLIENT_ID": "your_client_id",
                "STRAVA_CLIENT_SECRET": "your_client_secret",
                "STRAVA_REFRESH_TOKEN": "your_refresh_token"
            }
        }
    }
}

As an HTTP Server

  1. Start the server:
./run_server.sh
  1. Access the API at http://localhost:8000

Available endpoints:

  • GET /activities/recent - List recent activities
  • GET /activities/{id} - Get activity details
  • GET /activities/{id}/map - Get activity map visualization
  • GET /athlete/stats - Get athlete statistics

Development

Project Structure

strava_mcp/
├── src/
│   ├── strava_server.py      # MCP server implementation
│   ├── strava_http_server.py # HTTP API server
│   ├── map_utils.py          # Map visualization utilities
│   └── templates.py          # HTML templates
├── config/
│   └── .env                  # Environment variables (not in git)
├── requirements.txt          # Python dependencies
└── run_server.sh            # Server startup script

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

Security

  • Never commit .env files or API credentials
  • The .gitignore file is configured to prevent sensitive data from being committed
  • Use environment variables for all sensitive configuration

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Strava API Documentation
  • Model Context Protocol (MCP) Specification
  • Contributors and maintainers

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Bora Yalcin
  • Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Callycode Limited
  • A geek-themed horoscope generator blending Bitcoin prices, tech jargon, and astrological whimsy.

  • Alexandru Strujac
  • Efficient thumbnail creator for YouTube videos

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Khalid kalib
  • Write professional emails

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Lists Tailwind CSS classes in monospaced font

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • OffchainLabs
  • 进行以太坊的实施

  • huahuayu
  • 统一的API网关,用于将多个Etherscan样区块链Explorer API与对AI助手的模型上下文协议(MCP)支持。

  • deemkeen
  • 用电源组合控制您的MBOT2:MQTT+MCP+LLM

    Reviews

    2 (1)
    Avatar
    user_IMjrwqk4
    2025-04-15

    Redis MCP Server by cbuitragoh is a highly efficient and customizable server solution that optimizes Redis performance. As an MCP application devotee, I appreciate its robust functionality and seamless integration, which significantly enhances my database management experience. The product's URL further provides comprehensive details for those interested in exploring its capabilities. Overall, Redis MCP Server is a top-notch choice for anyone seeking advanced Redis management.