健康数据访问服务

Pulsyn MCP Server 是一个通过 Model Context Protocol 直接访问 Pulsyn 智能戒指健康数据的服务,提供睡眠跟踪、心率变异性分析、心率监测、活动数据和健康摘要等功能。

  • by pulsyntech
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 getpulsyn/pulsyn-mcp-server

使用说明

Pulsyn MCP服务器

通过AI助手直接访问您的Pulsyn智能戒指健康数据 模型上下文协议.

特性

  • 睡眠跟踪 -持续时间、阶段(深/浅/快速眼动/清醒)、质量分数、效率
  • HRV分析 -心率变异性测量用于恢复和压力洞察
  • 心率 -持续监测和静息心率
  • 活动数据 -步数、卡路里、活动分钟数、距离
  • 准备度得分 -结合睡眠、心率变异性和恢复的日常准备
  • 健康摘要 -全面的日常健康快照

快速开始

1.获取您的API代币

  1. 打开 Pulsyn移动应用程序
  2. 导航到 设置→ API访问
  3. 轻按 “创建新令牌”
  4. 选择 read:health_data 范围
  5. 复制令牌(以开头 psk_)

2.配置令牌

export PULSYN_API_TOKEN=psk_your_token_here

3.添加到克劳德桌面

添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS或 %APPDATA%/Claude/claude_desktop_config.json 在Windows上):

{
  "mcpServers": {
    "pulsyn": {
      "command": "bunx",
      "args": ["pulsyn-mcp-server"],
      "env": {
        "PULSYN_API_TOKEN": "psk_your_token_here"
      }
    }
  }
}

安装

使用bunx(推荐)

无需安装-直接运行:

bunx pulsyn-mcp-server

使用npm

npm install -g pulsyn-mcp-server
pulsyn-mcp-server

来自源头

git clone https://github.com/getpulsyn/pulsyn-mcp-server.git
cd pulsyn-mcp-server
bun install
bun run build

配置

环境变量

变量 必填 描述
PULSYN_API_TOKEN 是 您的Pulsyn API代币(psk_...)
PULSYN_API_URL 否 自定义API URL(默认值: https://www.getpulsyn.com/api/v1)
PULSYN_DEBUG 否 启用调试日志记录(true/false)

配置文件

或者,创建 ~/.config/pulsyn-mcp-server/config.json:

{
  "apiToken": "psk_your_token_here",
  "baseUrl": "https://www.getpulsyn.com/api/v1",
  "debug": false
}

可用工具

get_sleep_data

使用持续时间、阶段、质量分数和效率检索睡眠会话。

参数:

  • days (数字):提取天数(默认值:7,最大值:90)
  • limit (数字):最大结果(默认值:100,最大值:1000)

示例提示:

  • “显示我上周的睡眠数据”
  • “我昨晚的深度睡眠百分比是多少?”

get_hrv_data

获取心率变异性测量值,这是恢复和压力的关键指标。

参数:

  • days (数字):提取天数(默认值:7,最大值:90)
  • limit (数字):最大结果(默认值:100,最大值:1000)

示例提示:

  • “我这个月的平均HRV是多少?”
  • “显示我过去一周的HRV趋势”

获取心率数据

获得连续的心率测量值,包括静息心率。

参数:

  • days (数字):提取天数(默认值:7,最大值:90)
  • limit (数字):最大结果(默认值:100,最大值:1000)

获取活动数据

获取每日活动指标:步数、卡路里、活动时间、距离。

参数:

  • days (数字):提取天数(默认值:7,最大值:90)
  • limit (数字):最大结果(默认值:100,最大值:1000)

get_readies_score

获得结合睡眠、心率变异性和恢复的每日准备评分。

参数:

  • days (数字):提取天数(默认值:7,最大值:90)
  • limit (数字):最大结果(默认值:100,最大值:1000)

get_health_summary

获取特定日期的全面健康摘要。

参数:

  • date (字符串):YYYY-MM-DD格式的日期(默认值:今天)

速率限制

Pulsyn API根据账户等级实施不同的费率限制:

功能 免费用户 付费用户
速率限制 每个端点每秒1个请求 每个密钥每小时1000个请求
范围 每个帐户,每个终结点 每个API密钥
多个端点 ✅ 可以同时调用不同的端点 ✅ 无每个端点的限制
突发请求 ❌ 相同端点请求之间必须等待1秒 ✅ 可以快速连续发出请求
API密钥 1个键 最多10个键
最大吞吐量 约6个端点/秒 10000个请求/小时(带10个键)

错误处理:

  • 429请求太多 超出限制时返回
  • 具有指数回退和抖动的自动重试
  • 尊重 Retry-After 速率限制恢复标头

安全

  • 仅本地存储:仅存储在您的计算机上的令牌
  • 只读访问:无法修改您的健康数据
  • 仅限HTTPS:所有通信均加密
  • 令牌撤销:在Pulsyn应用程序中随时撤销

故障排除

问题 解决方案
“未配置API令牌” 设置 PULSYN_API_TOKEN 或创建配置文件
“无效或过期的令牌” 在Pulsyn应用程序中生成新令牌
“超出速率限制” 等待重置(最多1小时)
连接超时 检查互联网连接

发展

# Run in development mode
bun run dev

# Run tests
bun test

# Type check
bun run typecheck

# Lint code
bun run lint

# Build for production
bun run build

贡献

看 贡献.md 作为指导方针。

许可证

MIT许可证-请参阅 许可证 了解详情。

链接