mcpField
B
bodymeasure

bodymeasure

本地服务
github.com/CloudCorpRecords科研与教育01 周前更新

关于 bodymeasure

bodymeasure 是通过 Humanform API 查询人体测量参考数据的 MCP 服务和命令行工具。它支持按百分位预测测量值、根据测量值反查百分位,并提供测量项目和国家目录。

主要功能

  1. 01按百分位预测测量值
  2. 02根据测量值查询百分位
  3. 03列出支持的测量项目和身体部位
  4. 04列出国家代码和名称

适用场景

  1. 01估算特定年龄和百分位的测量值
  2. 02将实测值对应到参考百分位
  3. 03检查可用测量项目和身体部位
  4. 04查找支持的国家代码

MCP 相关

向 MCP 客户端提供 Humanform API 的测量值预测、百分位查询、测量目录和国家目录工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-bodymeasure": {
"command": "npx",
"args": [
"-y",
"@reneturcios/bodymeasure"
]
}
}
}
启动命令npx -y @reneturcios/bodymeasure

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/bodymeasure0.1.0
ocighcr.io/cloudcorprecords/bodymeasure:0.1.0

工具

4

收录的工具列表 · 更新于 1 周前

参数类型必填说明
agenumber是年龄(年),例如 30。
sexstring是性别,例如 Male 或 Female。
unitstring是单位,例如 cm。
countrystring是国家/地区代码,例如 US。
percentilenumber是要评估的百分位数,例如 50。
measurementstring是测量名称,例如 Stature。

详细介绍

bodymeasure

美国 30 岁男性的身高处于第 50 百分位时是多少?34 岁女性测得腘窝高度为 43.1 cm 时,处于哪个百分位?bodymeasure 会查询 Humanform API——一个提供人体测量参考数据的服务——并以 JSON 格式返回答案,支持正向和反向查询:

  • **正向查询:**给定百分位,获取特定性别、年龄和国家的人群中对应的测量值。
  • **反向查询:**给定测量值,获取特定性别、年龄和国家的人群中对应的百分位。

另外还有两个目录查询接口:API 支持的测量名称和身体部位组,以及国家代码和名称。

配置

你需要自行提供 Humanform API 密钥:

export HUMANFORM_API_KEY="your key"

如果没有密钥,bodymeasure 不会猜测:每次调用都会失败并提示 HUMANFORM_API_KEY is not set,不会发送请求,也不会编造任何测量值。HUMANFORM_API_URL 可覆盖 API 基础 URL(默认为 https://api.humanform.app)。

CLI

每个子命令都将参数作为一个 JSON 字符串传入;两个列表命令使用 "{}"。

HUMANFORM_API_KEY=... npx @reneturcios/bodymeasure predict_measurement '{"measurement":"Stature","sex":"Male","age":30,"percentile":50,"country":"US","unit":"cm"}'
HUMANFORM_API_KEY=... npx @reneturcios/bodymeasure percentile_lookup '{"measurement":"PoplitealHeight","sex":"Female","age":34,"country":"US","unit":"cm","value":43.1}'
HUMANFORM_API_KEY=... npx @reneturcios/bodymeasure list_measurements '{}'
HUMANFORM_API_KEY=... npx @reneturcios/bodymeasure list_countries '{}'
npx @reneturcios/bodymeasure --version

输出是 Humanform 返回的 JSON 数据。退出代码:成功时为 0,运行时错误(包括缺少密钥、验证失败或上游错误)时为 1,用法错误时为 2。

发送请求前会先检查参数:字符串参数不能为空,age 必须是大于 0 的有限数值,percentile 必须严格介于 0 和 100 之间,查询用的 value 必须是有限数值。当 API 本身返回包含 error 和 message 字段的错误正文时,会报告为 <error>: <message>。

MCP 服务

npx -y @reneturcios/bodymeasure mcp

MCP 客户端配置:

{
  "mcpServers": {
    "bodymeasure": {
      "command": "npx",
      "args": ["-y", "@reneturcios/bodymeasure", "mcp"],
      "env": { "HUMANFORM_API_KEY": "your key" }
    }
  }
}
工具
  • predict_measurement — 正向查询:百分位 → 测量值。需要 measurement、sex、age、percentile、country 和 unit。
  • percentile_lookup — 反向查询:测量值 → 百分位。需要 measurement、sex、age、country、unit 和 value。
  • list_measurements — 列出所有支持的测量名称和身体部位组。无需参数。
  • list_countries — 列出支持的国家代码和名称。无需参数。

Docker

docker run -i -e HUMANFORM_API_KEY="your key" ghcr.io/cloudcorprecords/bodymeasure
docker run --rm -e HUMANFORM_API_KEY="your key" ghcr.io/cloudcorprecords/bodymeasure list_countries '{}'

开发

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake fetch, no network)
npm run dev     # run the CLI from source

许可证

MIT — 版权所有 (c) 2026 Rene Turcios

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。