Skip to main content
Glama

Garmin MCP · 纯官方个人 API 版 v0.1.0

第三方 MCP 封装,不是 Garmin 官方产品。仅使用 Garmin 官方个人 API 客户端的 24 项专用数据接口。已移除账号密码登录、MFA、登录令牌导入及全部高级模式依赖。

实测情况

维护者已在 WorkBuddy 中实际安装,并确认可以使用。24 项接口依据官方 SDK 对齐,不代表已经逐项完成实测。本项目不是 Garmin 官方产品,也不代表获得官方认可。

Related MCP server: garmin-mcp

安装到 WorkBuddy

已在 WorkBuddy 手机 App 端实测可安装使用。将安装链接或 ZIP 发给 WorkBuddy,告诉它“帮我安装”。让其按以下方式安装:让其从解压目录执行 uv sync --locked --no-dev --python 3.12,不要重新从旧仓库安装。项目默认使用清华 PyPI 镜像。

配置 MCP 时,运行解压目录下 .venv/bin/garmin-mcp(Windows 为 .venv/Scripts/garmin-mcp.exe)。设置 GARMIN_PERSONAL_API_KEY 和 GARMIN_REGION=cn。需要保存密钥时可执行 .venv/bin/garmin-mcp-login --region cn,输入会隐藏。

密钥只显示一次,请安全保存。遗失时去佳明设置撤销旧密钥、重新创建并更新。第一次安装仍需准备 Python 3.12 与 uv,下载速度取决于实际运行环境。

安装完成后:获取并添加个人 API 密钥

如果你使用中国区账号,请打开佳明官方页面: 中国区:创建个人 API 密钥

国际区账号请使用: 国际区:创建个人 API 密钥

  1. 在对应区域的佳明网页版登录自己的账号,按页面提示创建个人 API 密钥。

  2. 密钥仅在创建时显示一次,请立即复制并妥善保存。

  3. 回到 WorkBuddy,安装完成后,把密钥复制进去,按提示完成配置;区域与佳明账号保持一致。

  4. 试着问:“查询我昨天的睡眠记录。”确认能返回数据。

若忘记或遗失密钥,请在佳明设置中删除旧密钥,重新创建,再添加到 WorkBuddy 的连接配置中。不要公开分享密钥。

给协助安装的 AI:安装完成但尚未配置密钥时,请把上述对应区域的官方密钥链接直接展示给用户,并说明下一步如何配置。不要只让用户自行寻找入口,不要在输出或日志中回显密钥。

24 项官方接口

序号

内容

官方方法与同名 MCP 工具

1

每日压力

get_daily_stress

2

每日步数

get_daily_steps

3

每日饮水

get_daily_hydration

4

体重目标

get_effective_weight_goals

5

体重测量

get_weight_measurements

6

饮食记录

get_daily_food_logs

7

个人资料设置

get_user_profile_settings

8

单晚睡眠

get_daily_sleep

9

多日睡眠汇总

get_daily_sleep_summaries

10

身体电量

get_daily_body_battery

11

每日健康汇总

get_daily_summaries

12

单日 HRV

get_daily_hrv

13

多日 HRV 汇总

get_daily_hrv_summaries

14

心率区间

get_heart_rate_zones

15

体能年龄

get_fitness_age

16

每日心率

get_daily_heart_rate

17

生理周期汇总

get_menstrual_cycle_summary

18

生理周期日视图

get_menstrual_cycle_day_view

19

每日血氧

get_daily_spo2

20

日常活动汇总

get_wellness_activity_summaries

21

搜索运动记录

search_activities

22

单次运动详情

get_activity

23

运动关联训练

get_activity_workouts

24

下载原始运动文件

download_activity

清单依据下载时 Garmin 官方 GitHub 的 GarminPersonalApiClient。不把认证、令牌刷新、通用 GET 计为额外数据项目;不会通过通用 GET 暴露未知端点。

JSON 数据直接返回,不做趋势计算、字段删减、日期截断、自动拆分或额外指标推断。参数与官方客户端一致,日期范围超限时返回官方错误。运动文件下载以 MCP 二进制资源(Base64 传输)提供,解码后与官方 ZIP 字节一致;客户端能否保存附件需实测。

安全与部署

个人密钥本身敏感,只读不等于没有隐私风险;查询结果会交给 AI 客户端处理。本服务按单人单账号设计。公网网页设置必须通过可信 HTTPS 代理使用,并设置独立 ADMIN_PASSWORD。不要把含凭证的兼容 URL 公开分享。未经全面安全审计,不承诺绝对安全。

网页可用 garmin-mcp-web 启动,提供个人密钥设置与 MCP 认证,不提供任何 Garmin 密码登录入口。

出处

  • 开发过程:由维护者设计与维护,Claude Code 协助编写初版,Codex 协助修改与安全加固。保留源码中的 MIT 版权与许可声明。

  • 官方客户端:https://github.com/garmin/connect-personal-api-python ,Garmin Ltd. 或其子公司,Apache-2.0;通过依赖安装,未修改其源码。

  • MCP Python SDK:https://github.com/modelcontextprotocol/python-sdk ,许可证以依赖发行版为准。

  • 本次修改:移除账号模式,将 MCP 数据工具与官方 24 项方法一一对应,保留中国区切换和国内依赖镜像。

Garmin 个人 API 适用其个人使用条款。使用官方 API 不代表本项目获得 Garmin 官方认可。原有源代码许可不替代 API 使用条款。

v0.1.0 安全加固与更新

24 项官方数据接口与原始数据返回方式不变。本次更新涉及凭证与服务保护。

  • 本地 WorkBuddy MCP 继续使用原命令及个人密钥。推荐在新解压目录安装,再更新命令路径并重启该 MCP,确认运行的是 0.1.0。

  • 默认关闭带密钥的 /k/<secret>/mcp 网址认证。远程连接使用 /mcp 和 Authorization 请求头。仅 ALLOW_URL_SECRET=1 时恢复旧网址方式;它仍可能被外部日志记录。

  • Web 默认绑定 127.0.0.1。容器明确配置 HOST=0.0.0.0 供可信入口访问;公网使用 HTTPS 反向代理,并配置 PUBLIC_URL 和真实可信代理 IP。不要直接明文暴露凭证页面。

  • 管理密码至少 12 位,不接受示例占位密码。管理 POST 要求同源 Origin。

  • 凭证文件私有权限与原子写入,拒绝符号链接。POSIX 已测试;Windows ACL 尚需验证。磁盘凭证仍是明文文件,不是加密保险箱。

  • 环境中的网络代理和 TLS 信任由主机管理员控制,请使用可信主机和代理。

  • 删除本地凭证不等于撤销 Garmin 密钥。停用时应去佳明设置撤销。

附 SECURITY.md 和检查记录;本次检查不是独立渗透测试或绝对安全保证。

开发与 AI 协助

  • 项目维护者:需求设计、测试与发布维护。

  • Claude Code(Anthropic):协助编写初版。

  • Codex(OpenAI):协助修改、接口对齐与安全加固。

以上为开发工具致谢,不代表 Anthropic、OpenAI 或 Garmin 对项目的官方认可。

Available Tools

24 tools
download_activityB
Read-only

下载原始运动文件。与官方客户端 download_activity 一一对应。参数和日期限制沿用官方接口。Return the original activity file as ZIP bytes, without extracting it.

NameRequiredDescriptionDefault
activity_idYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds real value by noting the payload is ZIP bytes that is not extracted, and by flagging that date and parameter limits follow the official API — but it never states those limits, size caps, or auth requirements, so the added context is thin.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short overall and the core purpose is front-loaded, but the 'one-to-one with the official client' sentence and the parameter-limit sentence consume space without conveying actionable detail, and the description mixes Chinese and English phrasing of the same point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read-only fetch with no output schema, the description covers the essentials an agent needs: what is fetched, that the result is raw ZIP bytes, and that vendor limits apply. The remaining gap is the undocumented activity_id format, which is a schema issue more than a description issue.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% for the single required parameter: activity_id is an untyped anyOf(integer|string) with no description. The description's only compensation is the vague claim that parameters follow the official interface, which does not tell the agent whether to supply a numeric ID or a string, or any format expectations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: '下载原始运动文件' (download the raw activity file) and clarifies the return is ZIP bytes, not extracted content. This distinguishes it from get_activity / search_activities, which return metadata rather than a raw file, though the differentiation is implicit rather than spelled out.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'与官方客户端 download_activity 一一对应' plus '参数和日期限制沿用官方接口' tells the agent this mirrors the vendor's own endpoint, but gives no explicit guidance on when to pick this over get_activity, nor on what those date limits or parameter constraints actually are. Usage must be inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_activityC
Read-only

单次运动详情。与官方客户端 get_activity 一一对应。参数和日期限制沿用官方接口。Return the activity summary/details for an activity ID.

NameRequiredDescriptionDefault
activity_idYes

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description hints that date restrictions exist ('日期限制沿用官方接口') but never states what they are, and adds nothing about returned fields, error behavior for invalid IDs, or rate limits from the open-world backend.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences say one thing twice: the Chinese '单次运动详情' and English 'Return the activity summary/details' are redundant, and the 'official client one-to-one' and 'official interface' sentences earn no place. Front-loading is acceptable but the content is padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read tool with no output schema, the description should state what the response contains and how to supply a valid ID. It gestures at 'summary/details' but leaves the return shape and ID format unexplained, and the referenced external interface is not resolvable by the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter activity_id has 0% schema description coverage and accepts integer or string via anyOf, yet the description says nothing about the accepted format, whether both types behave identically, or where an activity ID comes from. With low coverage the description was obliged to compensate and does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: returns the summary/details for a single activity ID, with '单次' establishing single-record scope versus the sibling search_activities. However, it never distinguishes itself from get_activity_workouts or download_activity, which also take an activity, and the '与官方客户端一一对应' sentence is meta-commentary rather than purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No statement of when to use this versus search_activities, get_activity_workouts, or download_activity. '参数和日期限制沿用官方接口' defers usage constraints to an external 'official interface' the agent cannot inspect, so no actionable guidance is conveyed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_activity_workoutsC
Read-only

运动关联训练。与官方客户端 get_activity_workouts 一一对应。参数和日期限制沿用官方接口。Return workouts associated with an activity ID.

NameRequiredDescriptionDefault
activity_idYes

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the read-only safety profile is covered structurally. The description's only added behavioral claim is that it maps one-to-one onto the official client's endpoint, and the 'date restrictions follow the official interface' line is never made concrete, so an agent learns nothing actionable about pagination, limits, or result shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description delivers the same content twice, first in Chinese ('运动关联训练') and again in English, and the one sentence that actually defines the tool is placed last. '与官方客户端 get_activity_workouts 一一对应' restates the tool name in tautological form, so several clauses fail the 'every sentence earns its place' test.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with an unambiguous output schema absent, the description should at least say the response is a list of workouts and what happens on an activity with no workouts. It instead spends its budget on a bilingual restatement and a pointer to unspecified official-interface limits, leaving the agent under-informed on a very simple call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single parameter, so the description must carry the meaning and does not: it says 'activity ID' but never clarifies accepted format, that both integer and string are allowed (per the anyOf), or where the ID comes from. The parameter restated in prose is essentially the same information as the schema's property name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The final English sentence states a specific verb and resource: 'Return workouts associated with an activity ID,' which tells an agent exactly what comes back and on what key. It does not, however, distinguish this from siblings like get_activity, search_activities, or download_activity, so an agent still has to infer why it would pick the workouts endpoint over a general activity fetch.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to call this versus get_activity or search_activities, and no preconditions beyond the required ID. The remark '参数和日期限制沿用官方接口' gestures at constraints without naming any of them, which pushes the agent to external documentation rather than guiding usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_body_batteryC
Read-only

身体电量。与官方客户端 get_daily_body_battery 一一对应。参数和日期限制沿用官方接口。Return daily Body Battery data for an inclusive calendar date range.

NameRequiredDescriptionDefault
chunksNo
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds one genuinely useful behavioral detail — the date range is inclusive — but the referenced 'official interface' date limits are never spelled out, and no return shape or data granularity is given. Useful but partial beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loading the metric name is good and the core sentence is tight, but the two Chinese sentences duplicate each other and the English sentence, and the 'one-to-one with official client' claim earns no place. Roughly half the text is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and 0% parameter coverage mean the description must fill the gaps, yet it omits date format, the meaning of 'chunks', the actual date-range limits, and any sense of what the returned Body Battery series looks like. For a 3-parameter ranged-query tool this leaves real holes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden and does not meet it: start_date/end_date formats are unspecified (only 'inclusive' semantics is conveyed) and the optional 'chunks' parameter is completely undocumented in both schema and description. An agent cannot tell what units, format, or purpose 'chunks' has.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence names a specific verb and resource: return daily Body Battery data over an inclusive calendar date range. The resource name distinguishes it from the sibling metrics (stress, steps, hrv, etc.), so an agent can pick it without opening the schema. The Chinese preamble largely restates the same fact, adding no extra scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this versus alternatives, nor any prerequisite or exclusion. '参数和日期限制沿用官方接口' merely gestures at undocumented date limits that exist elsewhere instead of telling the agent what they are. The agent is left to infer usage from the resource name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_food_logsC
Read-only

饮食记录。与官方客户端 get_daily_food_logs 一一对应。参数和日期限制沿用官方接口。Return nutrition food logs for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and open-world nature are covered. The description adds only that it is 1:1 with the official client and that "parameter and date restrictions follow the official API" — a pointer to external, unspecified constraints rather than a disclosure of them. No info about data source, auth, or limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but two of the four sentences (the Chinese title restatement and the "official client 1:1" claim) add nothing actionable. The useful information is buried last instead of front-loaded, and the language mixing reduces clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and an openWorld hint, the description should say what a food log entry roughly contains and where data comes from; it does neither. The unactionable deferral to "official interface" restrictions leaves real open questions for a caller.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single required parameter calendar_date, so the description must compensate and it does not: no format (ISO date?), timezone, or range limits are given. The phrase "参数和日期限制沿用官方接口" explicitly defers parameter semantics to an interface the agent cannot see.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence names a specific verb (return) and resource (nutrition food logs) scoped to a calendar date, which separates it from the sibling daily-metric tools like get_daily_steps. However, the Chinese preamble ("饮食记录") merely restates the name, and nothing explains how food logs differ in shape from the other daily summaries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No statement of when to call this versus get_daily_summaries or get_daily_hydration, and no prerequisites. The only framing given is that it mirrors the official client, which does not help an agent choose it over siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_heart_rateC
Read-only

每日心率。与官方客户端 get_daily_heart_rate 一一对应。参数和日期限制沿用官方接口。Return daily heart rate data for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds only that 'date limits follow the official interface' — it acknowledges a real behavioral constraint (limited date ranges) but never discloses what that limit actually is, leaving the agent to fail at call time.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short overall, but the Chinese sentence '与官方客户端 get_daily_heart_rate 一一对应' merely restates the tool name and adds nothing. The actionable content (what it returns) is buried after two filler sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read tool this should be trivially completable, but the agent still cannot construct a valid call: the date format and the actual date-range restriction are both unspecified, and there is no output schema to fall back on for the return shape.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the single calendar_date parameter. It only says 'for a calendar date' — no format (e.g. YYYY-MM-DD vs epoch), no allowed range, no timezone semantics, and the referenced 'date limits' are left unspecified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States the specific resource (daily heart rate data) and scopes it to a calendar date, and the sibling list makes the distinction from get_daily_steps, get_daily_hrv, get_heart_rate_zones, etc. obvious. It never explicitly says how it differs from siblings like get_heart_rate_zones, but the resource naming is clear enough.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus get_heart_rate_zones or get_daily_summaries, and no prerequisites stated. The line '参数和日期限制沿用官方接口' gestures at date constraints but defers to an external 'official interface' the agent cannot see, which is not usable guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_hrvC
Read-only

单日 HRV。与官方客户端 get_daily_hrv 一一对应。参数和日期限制沿用官方接口。Return heart rate variability (HRV) summary and readings for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that the tool returns both a summary and readings, which is useful return-content information. However, the claim that date limits follow the official interface names a constraint without specifying it, which adds less confidence than a concrete rule would.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short by design, but it wastes space: '单日 HRV' restates the tool name, and the 'one-to-one correspondence with the official client' claim conveys no actionable information. The useful English sentence about returning the summary and readings comes last, not first, which puts the description in the wrong order.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because the tool is simple (one parameter, read-only, no output schema), it does not need a long description. Still, the agent is left without the date format and the actual date-window restriction that the description itself raises, which are the two things most likely to cause a failed call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the whole burden for calendar_date. It only says 'for a calendar date' and gestures at unspecified date limits; it never gives the format (ISO 8601? epoch?), the timezone, or whether future dates are rejected. It leaves the one required parameter essentially undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource: it returns HRV summary and readings for a single calendar date. That is clear enough for an agent to act. However, it never distinguishes itself from the sibling get_daily_hrv_summaries, which also appears daily and covers the HRV area, so how the two differ remains a question.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says '参数和日期限制沿用官方接口' (parameters and date limits follow the official interface), but it never states an actual rule: it does not say which dates are allowed, whether today's date is allowed, or when to call this tool instead of get_daily_hrv_summaries or get_daily_heart_rate. It points to a rule without stating it, so the agent must guess.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_hrv_summariesC
Read-only

多日 HRV 汇总。与官方客户端 get_daily_hrv_summaries 一一对应。参数和日期限制沿用官方接口。Return daily heart rate variability (HRV) summaries for an inclusive date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true and openWorldHint=true already establish this as a safe read, so the bar is lower. The description does add genuinely new context — that the range is inclusive and that it mirrors the official client one-to-one — but it explicitly acknowledges a date restriction while never stating what the limit is, leaving a failure mode undisclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short, but the same content is restated three times across Chinese and English (multi-day HRV summaries, official-client parity, daily HRV summaries). The official-client sentences are boilerplate that consume front-loaded space without adding decision value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-required-parameter tool with 0% schema coverage and no output schema, the description must carry the full burden of date format, range cap, and return shape. It supplies only "inclusive" and a pointer to unspecified official limits, which is not enough to call it correctly on the first attempt.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%: both start_date and end_date are bare strings with no format, timezone, or range guidance. The description compensates only partially by saying the range is inclusive; it never says the expected date format (e.g. YYYY-MM-DD) or the maximum span implied by the "official" limits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Return daily HRV summaries") and adds the scope qualifier "多日" (multi-day) plus an inclusive date range. What it does not do is differentiate from the near-identical sibling get_daily_hrv (singular), which is the most likely confusion an agent will have.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"参数和日期限制沿用官方接口" defers to an external official client rather than telling the agent anything actionable — there is no when-to-use, no exclusion versus get_daily_hrv, and no prerequisite stated. The agent is left to infer tool selection entirely from the names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_hydrationC
Read-only

每日饮水。与官方客户端 get_daily_hydration 一一对应。参数和日期限制沿用官方接口。Return daily hydration statistics for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds only 'inclusive calendar date range' and an unelaborated claim about date restrictions inherited from an official client — no pagination, no volume expectations, no statement of what happens for dates outside the allowed window.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short, but the Chinese and English sentences are largely redundant restatements of the same idea. '与官方客户端 get_daily_hydration 一一对应' adds no actionable information and pushes the genuinely useful phrase ('inclusive') to the end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and 0% parameter documentation, the description should carry the retrieval contract. It omits the date format, the maximum allowed range, what metrics a 'hydration statistics' record contains, and whether a single day or a span returns different shapes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%: both start_date and end_date carry only a title and a string type. The description's phrase 'inclusive calendar date range' is the sole semantic hint and still omits the date format, timezone, and any maximum span — with low coverage the description was obligated to compensate and does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: return daily hydration statistics over a calendar date range. The resource (hydration) is self-evidently distinct from siblings like get_daily_steps or get_daily_sleep, so an agent can route on it, though the description never names a sibling explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance and no exclusions versus the other daily-metric tools. The line '参数和日期限制沿用官方接口' merely defers to an unnamed 'official interface' without stating any actual constraint, leaving the agent to guess at range limits.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_sleepC
Read-only

单晚睡眠。与官方客户端 get_daily_sleep 一一对应。参数和日期限制沿用官方接口。Return daily sleep data for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety behavior is covered. The description adds that parameters and date restrictions follow the official interface, but it never specifies what those restrictions are, leaving the agent with an opaque pointer rather than actionable behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but contains redundant phrasing across Chinese and English ('单晚睡眠' and 'Return daily sleep data for a calendar date') plus non-actionable meta about matching the official client. It is not excessively long, but not every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no schema parameter descriptions, the description should explain the date format and what sleep data is returned. Instead it only says data is returned for a calendar date and defers constraints to the 'official interface,' leaving key invocation details unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It mentions 'calendar date' and 'date restrictions' but gives no format, timezone, allowed range, or constraint details for the single required parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the resource and scope: '单晚睡眠' / 'Return daily sleep data for a calendar date.' It distinguishes itself somewhat from summaries by emphasizing a single night, though it does not explicitly contrast with get_daily_sleep_summaries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives such as get_daily_sleep_summaries or other daily metric tools. Use is only implied by the phrase 'daily sleep data for a calendar date.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_sleep_summariesB
Read-only

多日睡眠汇总。与官方客户端 get_daily_sleep_summaries 一一对应。参数和日期限制沿用官方接口。Return daily sleep summaries for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint. The description only says date limits 'follow the official interface' without stating what those limits are, so the one behavioral constraint it gestures at is unactionable. No pagination, result-size, or permission context is provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short overall, but split across Chinese and English with duplicated content and a self-referential sentence about matching the official client that earns no place. The actual behavioral content is only the final English sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema and no parameter descriptions anywhere, so the description must carry the load — yet it omits the date format, the maximum range implied by 'date limits', and what a summary record contains. For a data-retrieval tool with required date bounds, these are material gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description supplies only that the range is an 'inclusive calendar date range' — useful (endpoints inclusive) but silent on the date string format, timezone basis, and any max span. It partially compensates for the empty schema but leaves an agent guessing at formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Return daily sleep summaries') plus the 'multi-day' scope, which implicitly separates it from the single-day sibling get_daily_sleep. The bilingual restatement and the meta-note about matching the official client add no distinguishing information but don't obscure the purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'multi-day' / 'date range' framing hints that this tool is for spans rather than a single night, implying get_daily_sleep is the alternative, but no sibling is named and no when-not-to-use condition is given. Usage is inferable rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_spo2C
Read-only

每日血氧。与官方客户端 get_daily_spo2 一一对应。参数和日期限制沿用官方接口。Return daily SpO2 and acclimation data for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that behavior mirrors the official client and that date restrictions apply, but it does not specify those restrictions or any auth/rate-limit context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is short and front-loads the metric name, but it mixes Chinese and English and partly repeats the same purpose across languages. The note about official-client correspondence is relevant but vague.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter daily metric tool, the core purpose is present and annotations cover read-only behavior. However, the missing calendar_date format/range and the absence of an output schema leave important invocation details underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the sole parameter calendar_date is not given a format, timezone, or allowed range. The description only says date limits follow the official interface, which is too vague to compensate for the missing schema detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence states a specific verb ("Return") and resource ("daily SpO2 and acclimation data") scoped to a calendar date. This clearly separates it from sibling daily metrics like steps or hydration, though it does not explicitly contrast with broader daily summaries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives such as get_daily_summaries or other daily metric tools. "参数和日期限制沿用官方接口" only notes that date constraints exist, not the conditions for selecting this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_stepsC
Read-only

每日步数。与官方客户端 get_daily_steps 一一对应。参数和日期限制沿用官方接口。Return daily step statistics for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. Beyond that, the description only gestures at 'date limits' inherited from the official interface without disclosing what they are, and says nothing about result size, pagination, or typical latency for an open-world fetch.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The total length is short, but the same idea is stated twice in two languages, and the middle clauses about 1:1 correspondence with the official client are meta-commentary that doesn't help an agent decide or call correctly. The actionable sentence is buried last.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no parameter descriptions, and only read-only annotations, the description must carry format and constraint information and does not. An agent still doesn't know the accepted date string format, range caps, or what the step statistics contain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and both start_date/end_date are bare strings, so the description does some work by clarifying the range is 'inclusive' and calendar-date based. It still omits the required string format (e.g. YYYY-MM-DD) and any max span, leaving the main ambiguity unresolved.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence names a specific verb and resource ('Return daily step statistics') scoped to a date range, which clearly separates it from siblings like get_daily_stress or get_daily_sleep. The Chinese preamble ('每日步数') and the pointer to the official client's get_daily_steps reinforce the identity but don't add distinguishing detail.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to choose this over get_daily_summaries or other step-adjacent siblings, and no exclusions. The phrase '参数和日期限制沿用官方接口' hints that constraints exist but defers them to an external document rather than stating them, which is unusable guidance on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_stressC
Read-only

每日压力。与官方客户端 get_daily_stress 一一对应。参数和日期限制沿用官方接口。Return daily stress statistics for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description usefully adds that the range is inclusive and refers to an official-client-equivalent interface, but it defers the actual date-limit behavior to an external 'official interface' an agent cannot inspect, so the concrete constraint is never disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The definition is short and the operative sentence comes last rather than first. Three of four sentences are meta-commentary about matching the official client, which does not help an agent decide or invoke.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A two-required-parameter tool with no output schema and no annotation detail needs the description to state date format and range limits; both are missing or delegated to an unreachable 'official interface'. What remains is enough to know the resource but not enough to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the burden for start_date and end_date, yet it never states the expected date format or the maximum range allowed. 'Inclusive' is the only semantic added, and '沿用官方接口' points to documentation the agent does not have.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence states a specific verb and resource: return daily stress statistics over an inclusive calendar date range. Metric-specific naming makes it distinguishable from siblings like get_daily_steps or get_daily_hrv. The Chinese prefix '每日压力' merely restates the name rather than adding scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus alternatives such as get_daily_body_battery or get_daily_hrv, even though these are adjacent stress/wellness signals. '参数和日期限制沿用官方接口' gestures at constraints without saying what they select for.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_summariesC
Read-only

每日健康汇总。与官方客户端 get_daily_summaries 一一对应。参数和日期限制沿用官方接口。Return user daily summaries for an inclusive calendar date range.

Use the same start and end date for a single day. The response preserves the endpoint's object containing a data array, even for one day.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description does add return-shape context ('response preserves the endpoint's object containing a data array, even for one day'), which is genuinely useful with no output schema. However, the line about date limits deferring to the official interface states that constraints exist without stating them, leaving the agent unable to predict behavior at range boundaries.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The operative content is front-loaded and compact, with the date-range semantics stated before the return-shape note. The bilingual preamble ('与官方客户端...一一对应', '参数和日期限制沿用官方接口') duplicates the English body and is largely meta-information that does not earn its space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, 0% parameter coverage, and only read-safety annotations, the description should carry more weight. It covers return shape conceptually and single-day usage, but leaves date format, timezone, which metrics are included, and any range limits unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry the burden. It compensates partially by clarifying that the range is inclusive and that a single day uses identical start and end dates, which is real semantic value. It omits the date string format, timezone, and maximum range, so the schema's two undocumented params remain partly opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Return user daily summaries for an inclusive calendar date range'), which is clear on its face. But among siblings that are all per-metric daily tools (get_daily_steps, get_daily_sleep_summaries, get_daily_hrv_summaries), 'daily summaries' is ambiguous — it never says whether this is an aggregate across metrics or a specific one, so the agent cannot reliably distinguish it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only guidance is parameter-oriented ('Use the same start and end date for a single day'), with no statement of when to choose this over the many per-metric daily siblings or over search_activities. No prerequisites, exclusions, or alternatives are named.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_effective_weight_goalsC
Read-only

体重目标。与官方客户端 get_effective_weight_goals 一一对应。参数和日期限制沿用官方接口。Return effective weight goals for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that the range is inclusive and that it corresponds to the official client, but it does not explain what 'effective' means, any limits, or the response behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but it repeats the same purpose in Chinese and English and includes vague meta statements about matching the official client and following the official interface. The core purpose is front-loaded, but several sentences do not earn their place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter read-only tool with no output schema and zero schema parameter descriptions, the definition is incomplete. It leaves required date semantics and the meaning of 'effective weight goals' unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description needs to compensate for the two required date parameters. It only says the range is an inclusive calendar date range and defers date restrictions to the official interface, but it does not specify date format, timezone, ordering, or range limits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the resource and action: return effective weight goals for an inclusive calendar date range. It implicitly distinguishes from get_weight_measurements by focusing on goals rather than measurements, but it does not name any sibling tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides no explicit guidance on when to use this tool versus alternatives such as get_weight_measurements. Saying that parameters and date restrictions follow the official interface is meta-information, not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_fitness_ageC
Read-only

体能年龄。与官方客户端 get_fitness_age 一一对应。参数和日期限制沿用官方接口。Return fitness age data for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description's only added claim is that date restrictions follow the official interface, but those restrictions are never stated — a vague pointer, not disclosed behavior. No mention of missing-data behavior or return shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short, but the content is split across Chinese and English sentences that partly repeat each other, and the deferral clause is filler rather than signal. The key fact (return fitness age for a date) is present but not front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema and zero schema description coverage, the description must at minimum explain the date format and any range limits. Instead it offloads both to an external 'official interface' the agent cannot consult, leaving the call under-specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%: the single required parameter calendar_date has no format, timezone, or range guidance anywhere. The description says parameters 'follow the official interface', which leaves the agent with nothing concrete about how to format the date string.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence 'Return fitness age data for a calendar date' names a specific verb and resource, and the topic clearly separates it from siblings like get_daily_steps or get_daily_sleep. The Chinese lead-in and 'one-to-one with the official client' note add identity but no additional specificity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Nothing tells the agent when to call this versus other daily-metric tools, nor what to do when data is missing. The only guidance is a deferral to unspecified official API rules ('日期限制沿用官方接口'), which the agent cannot act on.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_heart_rate_zonesB
Read-only

心率区间。与官方客户端 get_heart_rate_zones 一一对应。参数和日期限制沿用官方接口。Return the current user's heart rate zones.

NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds only that the result is scoped to the 'current user' (implying no user parameter / auth-derived identity), but says nothing about whether zones are user-configured or computed, caching, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description restates the same fact twice ('心率区间' and 'Return the current user's heart rate zones'), and the note about one-to-one correspondence with the official client adds no actionable information for an agent. It is short but not front-loaded or information-dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description is the only place to learn what a 'zone' contains (e.g., zone boundaries in bpm, zone count), and it omits this. For a parameterless read tool with readOnly annotations this is tolerable, but the return shape remains a guess.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Zero parameters gives a baseline of 4, but the description's claim that '参数和日期限制沿用官方接口' (parameters and date limits follow the official interface) implies parameters and date filters that the schema does not contain, which can mislead an agent into looking for them. That inconsistency pulls the score down to 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource and scope: 'Return the current user's heart rate zones' — clearly a read of the authenticated user's zone configuration. It does not distinguish itself from nearby siblings such as get_daily_heart_rate or get_daily_hrv, so an agent must infer the difference (zones/thresholds vs. time-series data).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to call this versus get_daily_heart_rate, get_daily_hrv, or other heart-related siblings. The line '参数和日期限制沿用官方接口' (parameters and date limits follow the official interface) hints at constraints but never states them, and in fact conflicts with an empty schema — leaving the agent with no usable selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_menstrual_cycle_day_viewC
Read-only

生理周期日视图。与官方客户端 get_menstrual_cycle_day_view 一一对应。参数和日期限制沿用官方接口。Return the menstrual-cycle day view for a calendar date.

NameRequiredDescriptionDefault
today_dateYes
calendar_dateYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds only that it mirrors the official client and that date restrictions follow the official interface — it never says what those restrictions are (range limits, timezone, cycle-boundary behavior), so the added context is a pointer rather than a disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Short, but the content is split across Chinese and English restatements of the same fact, and '与官方客户端 get_menstrual_cycle_day_view 一一对应' spends a sentence saying nothing an agent can act on. The actionable part (the return value) is not front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-required-param tool with 0% schema coverage and no output schema, the description should at minimum define the date formats and explain why today_date is needed. It leaves both open and only gestures at unspecified 'date restrictions', so an agent cannot confidently construct a call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and neither parameter has any title beyond its name. The description clarifies 'calendar_date' loosely as the date of the view but says nothing about format (ISO? epoch?), and 'today_date' — required for an ostensibly read-only day view — is entirely unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: returns the menstrual-cycle day view for a calendar date. It is distinguishable from the sibling get_menstrual_cycle_summary by the word 'day', though the description never explicitly contrasts the two.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance at all, and no mention of when to prefer get_menstrual_cycle_summary over this day view. The only hint is '参数和日期限制沿用官方接口', which defers constraints to an external document rather than stating them.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_menstrual_cycle_summaryC
Read-only

生理周期汇总。与官方客户端 get_menstrual_cycle_summary 一一对应。参数和日期限制沿用官方接口。Return menstrual-cycle summary data for a calendar date.

NameRequiredDescriptionDefault
calendar_dateYes

TDQS

C2.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: the claim that date limits follow the official interface is opaque and gives no concrete constraint, format, or return behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Bilingual duplication and a meta sentence about being one-to-one with the official client consume space without informing the agent. The useful content is a single clause; the rest is filler that dilutes front-loading.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter tool with no output schema, the description should at least pin down the date format and what the summary contains. Instead it points to external documentation, leaving the agent unable to construct a correct call confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description carries the full burden for the single calendar_date parameter. It names the parameter conceptually but never specifies the format (e.g., YYYY-MM-DD), timezone handling, or what date restrictions apply beyond a vague reference to the official API.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence states a specific verb and resource ('Return menstrual-cycle summary data') scoped to a calendar date, so the agent knows what it retrieves. It does not differentiate from the sibling get_menstrual_cycle_day_view, leaving the summary-vs-day-view distinction ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only guidance is '参数和日期限制沿用官方接口' (parameters and date restrictions follow the official interface), which defers to undocumented external behavior rather than telling the agent when to call this tool. Nothing explains when to prefer it over get_menstrual_cycle_day_view or what date ranges are valid.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_user_profile_settingsC
Read-only

个人资料设置。与官方客户端 get_user_profile_settings 一一对应。参数和日期限制沿用官方接口。Return the current user's profile settings.

NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety and scope are covered elsewhere. The description adds only that the data is scoped to 'the current user' (no user parameter); the note that '参数和日期限制沿用官方接口' is uninformative for a zero-parameter tool and adds no real behavioral context such as what settings are returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The content is duplicated bilingually — '个人资料设置' and 'Return the current user's profile settings' say the same thing — and the '与官方客户端一一对应 / 参数和日期限制沿用官方接口' sentences are meta-filler that doesn't help an agent decide or invoke.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple no-arg read with no output schema, the description is minimally adequate but never indicates which profile settings come back (units, fields, whether it includes goals/devices), so an agent cannot anticipate the response shape.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4. The mention of parameters and date restrictions 'following the official interface' is mildly confusing given the empty schema, but it does no harm.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The English sentence states a specific verb and resource: return the current user's profile settings. That is clearly distinct in kind from the sibling tools (daily stress, steps, sleep, etc.), though the description never names a sibling or explicitly contrasts itself with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool vs. alternatives, nor any prerequisites or exclusions. The only contextual hint is the meta note that it maps one-to-one to the official client's get_user_profile_settings, which tells the agent nothing about selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_weight_measurementsC
Read-only

体重测量。与官方客户端 get_weight_measurements 一一对应。参数和日期限制沿用官方接口。Return all weight data for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds the genuinely useful detail that the range is inclusive, but it does not disclose what the 'date limits' actually are, so it only partly compensates for the deferral.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three of four sentences are boilerplate restating the tool name or pointing at an unnamed 'official interface,' pushing the one substantive sentence to the end. The useful scope information is buried rather than front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and 0% parameter coverage, the description must carry the load for date formatting, allowed range, and return shape. It supplies only 'inclusive' and otherwise punts to the official API, leaving an agent unable to construct a valid call with confidence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so both start_date and end_date are undocumented in the schema. The description only implies 'inclusive calendar date range' — it gives no date format (e.g., YYYY-MM-DD), no timezone, and no maximum range, so it does not fill the gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The final sentence gives a specific verb, resource, and scope: 'Return all weight data for an inclusive calendar date range.' This lets an agent tell it apart from the daily-metric siblings (steps, sleep, HRV) without opening the schema, though no sibling is named explicitly and the first three sentences merely restate the tool name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus alternatives such as get_effective_weight_goals, nor any prerequisite or exclusion. '参数和日期限制沿用官方接口' ('parameter and date limits follow the official interface') defers guidance to an external document the agent cannot see.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_wellness_activity_summariesC
Read-only

日常活动汇总。与官方客户端 get_wellness_activity_summaries 一一对应。参数和日期限制沿用官方接口。Return wellness activity summaries for an inclusive calendar date range.

NameRequiredDescriptionDefault
end_dateYes
start_dateYes

TDQS

C2.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds that behavior mirrors the official client and that date restrictions follow the official interface, but these are vague and it does not describe rate limits, auth needs, pagination, or return behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, but it repeats the same purpose in Chinese and English and includes two vague sentences about matching the official client. The key date-range scope is present, but the structure is not tightly front-loaded or waste-free.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and a large sibling set including get_daily_summaries and get_daily_steps, the description should clarify how this tool differs and what the summaries include. It only states the date range and an official-interface correspondence, leaving important context gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%: start_date and end_date have no format, timezone, or per-parameter description in the schema. The description adds that the range is an inclusive calendar date range, but it does not specify date string format or constraints beyond referring vaguely to the official interface.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: return wellness activity summaries for an inclusive calendar date range. It is clear enough to distinguish from many sibling tools, but it does not explicitly differentiate itself from close siblings such as get_daily_summaries or get_daily_steps.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It specifies that the range is inclusive and that parameters/date restrictions follow the official interface, but it gives no explicit when-to-use guidance, no exclusions, and no named alternatives among the many sibling summary tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_activitiesC
Read-only

搜索运动记录。与官方客户端 search_activities 一一对应。参数和日期限制沿用官方接口。Return summarized activities matching the supplied search filters.

NameRequiredDescriptionDefault
limitNo
startNo
end_dateNo
start_dateNo
activity_typeNo

TDQS

C2.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds one useful behavioral detail — results are *summarized* activities rather than raw records — plus a vague note on date restrictions, but no pagination or return-shape detail.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and front-loads the purpose, which is good. But two of the four sentences ('与官方客户端 search_activities 一一对应', '沿用官方接口') convey no actionable information and read as filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Five optional parameters with zero schema descriptions, no output schema, and only a read-only annotation. For a search tool where date-range and activity_type syntax determine correctness, the description does far too little; deferring to an 'official interface' leaves real gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across five parameters (limit, start, end_date, start_date, activity_type). The phrase '参数...沿用官方接口' explicitly punts parameter meaning to external documentation, adding nothing about format, date syntax, or the activity_type vocabulary the agent would need to construct a call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a verb+resource ('搜索运动记录' / 'Return summarized activities'), so the basic purpose is clear. However, it never distinguishes itself from close siblings like get_activity, get_activity_workouts, or download_activity, so an agent cannot tell which one to pick from purpose alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The only guidance is '参数和日期限制沿用官方接口' — a deferral to an external 'official interface' the agent cannot inspect. There is no statement of when to use this versus the activity-related siblings, no exclusions, and no prerequisite hints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 24 tool updatesv0.1.0
    • First observeddownload_activity
    • First observedget_activity
    • First observedget_activity_workouts
    • First observedget_daily_body_battery
    • First observedget_daily_food_logs
    • First observedget_daily_heart_rate
    • First observedget_daily_hrv
    • First observedget_daily_hrv_summaries
    • First observedget_daily_hydration
    • First observedget_daily_sleep
    • First observedget_daily_sleep_summaries
    • First observedget_daily_spo2
    • First observedget_daily_steps
    • First observedget_daily_stress
    • First observedget_daily_summaries
    • First observedget_effective_weight_goals
    • First observedget_fitness_age
    • First observedget_heart_rate_zones
    • First observedget_menstrual_cycle_day_view
    • First observedget_menstrual_cycle_summary
    • First observedget_user_profile_settings
    • First observedget_weight_measurements
    • First observedget_wellness_activity_summaries
    • First observedsearch_activities

TDQS

B3.1/5.0

Scored across 24 tools

Disambiguation4/5

Each tool maps to a distinct Garmin metric endpoint (stress, steps, hydration, sleep, HRV, SpO2, etc.), so most selection is obvious. The main risk is the single-day vs. multi-day summary pairs like get_daily_sleep/get_daily_sleep_summaries and get_daily_hrv/get_daily_hrv_summaries, plus get_daily_summaries vs get_wellness_activity_summaries, which require reading descriptions to distinguish.

Naming Consistency5/5

All names are snake_case verb_noun following the get_<resource> pattern that mirrors the official API endpoints. The two non-get verbs (search_activities, download_activity) are semantically appropriate for their actions and still fit the convention.

Tool Count4/5

24 tools is at the heavy edge of the ideal range, but each corresponds to a distinct Garmin wellness/activity endpoint, so most earn their place. The single/summary duplication pairs push the count slightly higher than strictly necessary.

Completeness4/5

The surface covers a broad read-only slice of Garmin data (wellness metrics, sleep, HRV, activities, downloads, profile) with no dead ends for querying. Gaps exist for write operations, device lists, and broader activity/workout library browsing, but the read-oriented domain is largely handled.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers