超人类MCP服务器
   
模型上下文协议(MCP)服务器,提供对超人类API数据的访问。该服务器允许AI助手和应用程序通过标准化的MCP工具与超人类健康和健身数据进行交互。
特性
- 完整的健康指标访问:睡眠、运动、心率、心率变异性、血糖等
- 专用工具:针对不同数据类型(睡眠、运动、血糖、心脏指标)的专用工具
- 错误处理:具有详细错误消息的稳健错误处理
- 日期验证:日期格式的自动验证
- 环境配置:通过环境变量灵活配置
可用工具
核心工具
get_default_user_metrics(date)-获取特定日期默认用户的所有健康指标(来自env)get_user_metrics(email, date)-获取特定日期用户的所有健康指标get_sleep_data(email, date)-获取特定睡眠指标get_movement_data(email, date)-获取运动和活动数据get_glucose_metrics(email, date)-获取葡萄糖相关指标get_heart_metrics(email, date)-获取心率、心率变异性和恢复数据
资源
ultrahuman://api-info-关于超人类合作伙伴API的信息
可用指标
服务器提供对以下健康指标的访问:
- 睡眠数据 -睡眠模式、质量、持续时间
- 运动数据 -活动水平、运动模式
- 心率 -连续心率监测
- 心率变异性 -心率变异性测量
- 温度 -体温读数
- 步骤 -每日步数
- 葡萄糖 -血糖水平(来自CGM)
- 代谢评分 -总体代谢健康评分
- 葡萄糖变异性(%) -血糖稳定性
- 平均葡萄糖(mg/dL) -每日葡萄糖平均值
- 糖化血红蛋白 -长期血糖控制指标
- 目标时间(%) -在目标葡萄糖范围内花费的时间
- 恢复指数 -恢复状态指标
- 运动指数 -运动质量评估
- 最大摄氧量 -心血管健康测量
设置
先决条件
- 超人类API访问:
- 授权密钥(40个字符的字母数字字符串) - 来自用户的数据共享代码 - 已授予访问权限的用户电子邮件 - 📋 请参阅详细的设置说明: API_SETUP.md - 联系support@ultrahuman.com用于API访问 - API文件:https://blog.ultrahuman.com/blog/accessing-the-ultrahuman-partnership-api/
- Python 3.11+
安装
- 克隆此存储库:
git clone https://github.com/Vodolazkyi/Ultrahuman-Server.git
cd Ultrahuman-Server- 安装依赖项:
pip install -r requirements.txt- 配置环境变量:
cp env.example .env
# Edit .env with your Ultrahuman API credentials- 运行服务器:
python main.py服务器将于启动 http://localhost:8000/mcp 默认情况下。
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
ULTRAHUMAN_AUTH_KEY | 您的40个字符的授权密钥 | 必填 |
ULTRAHUMAN_BASE_URL | API基本URL | https://partner.ultrahuman.com/api/v1 |
ULTRAHUMAN_DEFAULT_EMAIL | 用于测试的默认用户电子邮件 | 可选 |
PORT | 服务器端口 | 8000 |
使用示例
与MCP客户端一起使用
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
server_params = StdioServerParameters(
command="python",
args=["main.py"],
env={"ULTRAHUMAN_AUTH_KEY": "your_key_here"}
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
# Initialize the connection
await session.initialize()
# Get user metrics
result = await session.call_tool(
"get_user_metrics",
{
"email": "user@example.com",
"date": "2024-01-15"
}
)
print(result)
if __name__ == "__main__":
asyncio.run(main())工具示例
获取完整指标
# Get all metrics for a user
result = await session.call_tool("get_user_metrics", {
"email": "user@example.com",
"date": "2024-01-15"
})仅获取睡眠数据
# Get sleep-specific data
result = await session.call_tool("get_sleep_data", {
"email": "user@example.com",
"date": "2024-01-15"
})获取血糖指标
# Get glucose-related metrics
result = await session.call_tool("get_glucose_metrics", {
"email": "user@example.com",
"date": "2024-01-15"
})API响应格式
所有工具都返回一致的响应格式:
{
"success": true,
"email": "user@example.com",
"date": "2024-01-15",
"metrics": {
// ... actual metrics data
}
}出现错误时:
{
"success": false,
"email": "user@example.com",
"date": "2024-01-15",
"error": "Error description"
}部署
铁路部署
此服务器已配置为在Railway上部署:
- 将您的GitHub存储库连接到Railway
- 在铁路仪表板中设置环境变量:
- ULTRAHUMAN_AUTH_KEY - ULTRAHUMAN_BASE_URL (可选)
- 从主分支自动部署
Docker部署
# Build the image
docker build -t ultrahuman-mcp .
# Run the container
docker run -p 8000:8000 \
-e ULTRAHUMAN_AUTH_KEY=your_key_here \
ultrahuman-mcpAPI环境
- 生产:
https://partner.ultrahuman.com/api/v1/metrics - 暂存:
https://www.staging.ultrahuman.com/api/v1/metrics
错误处理
服务器包括全面的错误处理:
- 身份验证错误:授权密钥无效或丢失
- 验证错误:电子邮件格式或日期格式无效
- API错误:来自Ultrahuman API的HTTP错误
- 网络错误:连接超时或网络问题
安全
- API密钥通过环境变量进行管理
- 所有API请求都使用HTTPS
- 没有记录或缓存敏感数据
贡献
我们欢迎捐款!请随时:
- 分叉存储库
- 创建要素分支:
git checkout -b feature-name - 提交您的更改:
git commit -am 'Add feature' - 推到分支:
git push origin feature-name - 提交拉取请求
许可证
该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取详细信息。
支持
关于以下问题:
- MCP服务器:在此存储库中打开一个问题
- 超人类API:联系超人支持
- FastMCP:检查 FastMCP文档
存储库设置
有关最大可见性和SEO优化,请参阅 有关以下内容的详细说明:
- 使用适当的标签配置GitHub About部分
- 搜索引擎的SEO优化
- 添加到MCP展示和精彩列表
