Skip to main content
Glama
OpenStride

OpenStride MCP Server

Official
by OpenStride
README.md
# OpenStride MCP Server

Model Context Protocol (MCP) server that allows AI assistants (Claude, ChatGPT, etc.) to access and analyze your OpenStride training data.

## Installation

```bash
npx -y @openstride/mcp-server
```

## Configuration

### Claude Desktop

Add to your Claude Desktop config (`~/.config/Claude/claude_desktop_config.json` on Linux/macOS or `%APPDATA%\Claude\claude_desktop_config.json` on Windows):

```json
{
  "mcpServers": {
    "openstride": {
      "command": "npx",
      "args": ["-y", "@openstride/mcp-server"],
      "env": {
        "OPENSTRIDE_MANIFEST_URL": "https://drive.google.com/uc?id=YOUR_MANIFEST_ID"
      }
    }
  }
}
```

### Getting Your Manifest URL

1. Open [OpenStride](https://www.openstride.org)
2. Go to **Profile > App Extensions**
3. Enable **AI Assistant (MCP)**
4. Go to **Profile > AI Assistant (MCP)**
5. Connect Google Drive (if not already connected)
6. Click **Publish Data**
7. Copy the manifest URL

## Available Tools

### `list_activities`
List activities with filters and pagination.

**Parameters:**
- `limit` (number): Max results (default: 20, max: 100)
- `offset` (number): Pagination offset
- `type` (string[]): Activity types (`run`, `bike`, `swim`, `walk`, `hike`)
- `startDate` (string): Start date (YYYY-MM-DD)
- `endDate` (string): End date (YYYY-MM-DD)
- `minDistance` (number): Min distance in meters
- `maxDistance` (number): Max distance in meters

### `get_activity`
Get complete activity details.

**Parameters:**
- `activityId` (string): Activity ID

### `get_stats`
Calculate aggregated statistics.

**Parameters:**
- `period` (string): Aggregation period (`week`, `month`, `year`)
- `startDate` (string): Start date
- `endDate` (string): End date

### `search_activities`
Search activities by text.

**Parameters:**
- `query` (string): Search query (title, notes)

### `analyze_activity`
Analyze activity performance.

**Parameters:**
- `activityId` (string): Activity ID
- `analyses` (string[]): Analysis types (`segments`, `best-efforts`, `slope`, `heart-rate-zones`)

## Requirements

- Google Drive connection in OpenStride
- Activities marked as public (privacy settings)

## License

MIT

## Links

- [OpenStride](https://www.openstride.org)
- [Documentation](https://github.com/openstride/openstride/tree/main/docs)
- [Report Issues](https://github.com/openstride/openstride/issues)

Maintenance

ActivityInactive
ResponsivenessNo issues