https://github.com/millerchou/strava-mcp-bridge
背景:
Strava 有官方 MCP endpoint:https://mcp.strava.com/mcp。
但我实际折腾下来,首次 OAuth 授权入口目前还是只能 Claude Code 。
问题是,Codex / OpenCode / Grok Build 这类本地 AI coding tool 也支持 stdio MCP ,但它们没法直接完成 Strava MCP 的首次授权。于是就有一个断点:
- MCP client 能跑
- Strava MCP endpoint 也在
- 但首次 OAuth credential 拿不到
这个项目解决的是这个断点。
基本流程:
- 先用 Claude Code 完成 Strava 官方 MCP OAuth
- bridge 显式读取这份 credential ,并导入到自己的 macOS Keychain item
- bridge 后续自己维护 access token / refresh token
- Codex / OpenCode / 其他 stdio MCP client 通过本地 stdio bridge 访问 Strava 官方 MCP
没有重新实现的 Strava REST API MCP server ,也不共享 credential 。
只是把用户已经授权过的 Strava MCP OAuth credential ,迁移到一个本地 stdio bridge 里。
一些设计取舍:
- 只在 macOS Apple Silicon 上测试过
- 不需要用户自己创建 Strava developer app
- 不需要 Claude 订阅账号; Claude Code 通过 Ollama 等兼容后端也可以完成首次授权
- 后续理论上不依赖 Claude Code ; bridge 会自己刷新 token ,但 Strava 侧是否会在某些条件下主动失效,目前未知
- 默认不开放任何 Strava 数据工具,必须显式自行配置 allowlist
get_activity_streams不把完整 streams 数组返回给 AI 上下文,而是写本地文件,只返回摘要- location / GPS / polyline 默认拦截和脱敏
- 自带 skill ,可以让 Codex 帮你跑 doctor 、bootstrap 、生成项目级 MCP 配置
我做这个主要是为了自己的训练数据分析:Codex 拉 Strava 骑行数据,再接本地 dashboard / PMC / TRIMP 之类的分析脚本。
目前还是 0.1 实验版。欢迎有类似需求的人试一下,也欢迎指出更好的 OAuth bootstrap 方式。en 失效或用户主动撤销授权,才需要重新走一次授权。不过,目前还不确定 strava 那边是否会主动断
适合的人:
- 用 Codex / OpenCode / Grok Build
- 有 Strava 数据
- 想在本地 AI workflow 里做训练数据分析
- 不想为了这个单独申请 Strava developer app
项目地址: https://github.com/millerchou/strava-mcp-bridge
目前还是 0.1 实验版,欢迎试用和提 issue 。
另外,为什么不直接创建 Strava developer app ?
当然可以,这也是很多非官方 Strava MCP/脚本的常规做法。 但我想解决的是另一种场景:用户已经能在 Claude Code 里完成官方 Strava MCP 授权,希望把同一套官方 MCP credential 用在 Codex / OpenCode 这类本地 MCP client 里,而不是每个用户都再去注册 developer app 、配置 client id/secret 、维护一套 REST API wrapper 。