跳到主要内容
插根线,把 .fit 拖出来喂给 Claude

插根线,把 .fit 拖出来喂给 Claude

一键三连
一键三连

· 阅读约 4 分钟

一周看四五次活动数据,赛季里天天看。以前那套流程烦得很:手机开 Garmin Connect,翻到那条活动,想看分段时间还得点进去滑;想让 AI 帮我总结两句,就只能截图,或者把手打的心率区间贴过去。一次两三分钟,一周十几次,一年下来不是个小数。

现在的动作是:插线,手表在 Finder 里挂成一个磁盘(个别型号要先进设置里手动打开磁盘访问),进目录,把 .fit 拖进 Claude 的对话框。完事。

GARMIN/Activity/

一堆 .fit,文件名就是日期时间,按时间自然排。想再省一步,终端一行拿最新的那个:

ls -t /Volumes/GARMIN/GARMIN/Activity/*.fit | head -1

⚡这一下省掉的不是打字,是中间那三层——厂商云、导出按钮、那个要登录才能进的“下载我的数据”页面。上个月我还真去翻过 Garmin 的开发者计划,几个月了不收新申请;唯一能走通的官方路子是完整账户导出,交申请,等三天,邮件到。等它我早就骑完了!

第一次试是傍晚那条骑行,拖进去,问一句“帮我看看今天这段怎么样”,回来的不只是文字摘要,还有配速和心率图。爽点不在 AI 多聪明,在于这份数据是我自己从一块磁盘上拿的。这一下不用装任何东西,你手上本来就有表和线,学会就回本。

得回来更正一个我自己一开始的想法。我以为这么拖出来的是“原始数据”,比云上处理过的干净。查了一圈发现不对:设备往 .fit 里写之前就已经做过平滑了,Strava 那边拿到的是二次加工。所以不存在一个可还原的“真值”,拿原始文件求纯度这个理由本身站不住。真站得住的理由只有一个——我不想让云在中间。

反过来说,这方式确实会丢东西。海拔那一栏,云端是拿 GPS 轨迹跟地形数据交叉匹配补出来的,本地文件里看到的可能空着或者不准。别拿它做海拔分析,别的随便。

两个小坑,有人踩过:高尔夫活动在 Activity 目录里找不到对应文件;Track Run 那种在 400 米跑道上画出来的漂亮轨迹,也不是文件里带的神奇数据,是设备内置了跑道形状自己校正出来的。

那要不要上 MCP?

先问一句:你要的是每天看一眼,还是每周看趋势。

每天看一眼,插线拖文件就够了,别再往下走。折腾一套同步管道、写只读 SQL 接口、部署到 Workers 上——我见过做得漂亮的,每 30 分钟把 HRV、静息心率、睡眠、训练准备度全同步进自己的库,周趋势月趋势都有,比赛预测也能算,产品都上线了。是好东西。但对我这种一周看几次的人,等于拿一下午搭管道,换一个三个月后才用得上的视图。搭完那三天是真的爽,第四天开始它就是新的技术债。

什么时候真值得搭?你要把训练状态跟日程、天气摞在一起看,或者想让 AI 按周给你排课表。那时候有几条现成的路:

① intervals.icu 那条最省事,API 干净,已经有第三方 MCP 服务器,有人连免费托管的都搭好了;配合 GadgetBridge 走,数据不经过 Garmin 服务器。

② taxuspt/garmin_mcp 直接用 Claude Desktop 读 Garmin 数据、排训练计划;有人用下来发现它生不出游泳、骑行、跑步、力量这四类课表,自己 fork 改了。

③ Claude 官方那个 Strava 连接器最省事,但 Strava 本身不同步踏频、垂直振幅、睡眠,想看这些它给不了。

三条都不完美。不是让你照着挑,是让你别指望一步到位。

还有个容易被忽略的点:这种管道搭起来之后,力气不在搭,在维护。非官方 API 一改,你那套东西就哑了,而且哑得没声,你可能两周后才发现数据