Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Mi Fitness CN

БесплатноНе проверен

Enables reading and syncing Xiaomi Mi Fitness health data (steps, heart rate, sleep, workouts) from the Chinese cloud region to a local SQLite database via MCP

GitHubEmbed

Описание

Enables reading and syncing Xiaomi Mi Fitness health data (steps, heart rate, sleep, workouts) from the Chinese cloud region to a local SQLite database via MCP tools.

README

小米运动健康 / Mi Fitness 数据本地 MCP Server。

本项目基于 kubulashvili/mi-fitness-mcp 修改,增加中国区小米健康云适配,并补充睡眠与运动记录同步能力。

非小米官方项目,仅用于读取和分析你自己的健康数据。数据默认同步到本地 SQLite。

功能

  • 读取小米运动健康云端数据
  • 本地 SQLite 缓存
  • MCP Server 支持
  • 支持中国区:--region cn
  • 支持数据类型:
    • daily_activity:步数、距离、活动卡路里
    • heart_rate:心率采样
    • sleep:睡眠记录
    • workouts:运动记录
    • body_measurements:体重 / 身体成分,视账号数据而定

已逆向验证的接口

健康数据接口

POST https://hlth.io.mi.com/app/v1/data/get_fitness_data_by_time

常用 key:

steps
calories
heart_rate
weight
sleep

睡眠请求示例:

{
  "start_time": 1767225600,
  "end_time": 1782086399,
  "key": "sleep"
}

运动记录接口

POST https://hlth.io.mi.com/app/v1/data/get_sport_records_by_time

请求示例:

{
  "start_time": 1767225600,
  "end_time": 1782086399,
  "limit": 50
}

返回字段通常包含:

sport_records
has_more
next_key

每条运动记录的 value 是 JSON 字符串,包含 start_timeend_timedurationdistancecaloriesavg_hrmmax_hrm 等字段。

安装

git clone [email protected]:binglua/mi-fitness-mcp-cn.git
cd mi-fitness-mcp-cn
python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'

如果当前环境没有系统 keyring,可安装:

pip install keyrings.alt

注意:keyrings.alt 可能以明文文件方式保存凭据。

配置

需要从 https://account.xiaomi.com 登录后的 Cookie 中获取:

  • userId
  • passToken

中国区账号建议:

mi-fitness-mcp setup \
  --mode mi_fitness_cloud \
  --user-id "<userId>" \
  --pass-token "<passToken>" \
  --region cn

检查连接:

mi-fitness-mcp doctor

同步数据

同步全部可探测数据:

mi-fitness-mcp sync --start-date 2026-01-01 --end-date 2026-06-21

按类型同步:

mi-fitness-mcp sync --type daily_activity --start-date 2026-01-01 --end-date 2026-06-21
mi-fitness-mcp sync --type heart_rate --start-date 2026-01-01 --end-date 2026-06-21
mi-fitness-mcp sync --type sleep --start-date 2026-01-01 --end-date 2026-06-21
mi-fitness-mcp sync --type workouts --start-date 2026-01-01 --end-date 2026-06-21
mi-fitness-mcp sync --type body_measurements --start-date 2026-01-01 --end-date 2026-06-21

启动 MCP Server

mi-fitness-mcp serve

Claude Desktop 配置示例:

{
  "mcpServers": {
    "mi-fitness": {
      "command": "mi-fitness-mcp",
      "args": ["serve"]
    }
  }
}

MCP 工具

  • get_connection_status
  • sync_data
  • get_profile
  • get_daily_summary
  • query_metric_series
  • query_heart_rate
  • query_body_measurements
  • query_sleep
  • query_workouts
  • get_data_coverage

本地数据库

默认位置:

~/.local/share/mi-fitness-mcp/mi_fitness.db

主要表:

daily_activity
heart_rate_samples
sleep_sessions
workouts
body_measurements
sync_state

安全说明

  • passToken 是敏感凭据,不要泄露。
  • 不要提交本地配置、数据库、keyring 文件。
  • 如果 token 泄露,建议退出小米账号并重新登录刷新。

免责声明

本项目与小米公司无关。请仅用于读取和分析你自己的健康数据。

新增健康指标

本分支额外逆向并验证了以下小米运动健康云端 key,并已接入 CLI 同步、本地 SQLite 缓存和 MCP 查询工具:

  • resting_heart_rate:静息心率,合并到 query_heart_rate(sample_type="resting")
  • spo2:血氧饱和度,CLI 类型 spo2,MCP 工具 query_spo2
  • stress:压力值,CLI 类型 stress,MCP 工具 query_stress
  • abnormal_heart_beat:异常心跳事件,CLI 类型 abnormal_heart_beat,MCP 工具 query_abnormal_heart_beat

示例:

mi-fitness-mcp sync --type spo2 --start-date 2026-06-01 --end-date 2026-06-22
mi-fitness-mcp sync --type stress --start-date 2026-06-01 --end-date 2026-06-22
mi-fitness-mcp sync --type abnormal_heart_beat --start-date 2026-06-01 --end-date 2026-06-22

License

MIT

from github.com/binglua/mi-fitness-mcp-cn

Установка Mi Fitness CN

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/binglua/mi-fitness-mcp-cn

FAQ

Mi Fitness CN MCP бесплатный?

Да, Mi Fitness CN MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Mi Fitness CN?

Нет, Mi Fitness CN работает без API-ключей и переменных окружения.

Mi Fitness CN — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Mi Fitness CN в Claude Desktop, Claude Code или Cursor?

Открой Mi Fitness CN на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Mi Fitness CN with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории data