血糖监测服务器

一个本地运行的血糖监测服务器,为Claude Desktop提供安全的FreeStyle LibreLink连续血糖监测数据访问。

  • by amansk
  • JavaScript
  • 本地部署
  • 15 星标
  • 更新于
在 GitHub 查看 amansk/librelink-mcp-server

使用说明

LibreLink MCP服务器

当地人 模型上下文协议(MCP) 服务器,为Claude Desktop提供对FreeStyle LibreLink连续血糖监测(CGM)数据的安全访问。

🌟 特性

  • 实时血糖监测 -使用趋势箭头获取当前读数
  • 历史数据分析 -在可定制的时间段内检索葡萄糖历史记录
  • 全面分析 -范围内时间、GMI、可变性指标
  • 模式识别 -黎明现象、饮食反应、稳定性分析
  • 隐私优先设计 -所有数据都保留在您的计算机上
  • 安全的凭证管理 -本地加密存储
  • 跨平台健康整合 -与其他健康MCP服务器协同工作

📋 先决条件

  • LibreLink帐户:带有葡萄糖数据的活跃FreeStyle LibreLink帐户
  • 兼容传感器:启用数据共享的FreeStyle Libre 2或3
  • Node.js:18.0.0或更高版本
  • 克劳德桌面:用于MCP集成

🚀 快速开始

1.安装

# Clone the repository
git clone https://github.com/yourusername/librelink-mcp-server.git
cd librelink-mcp-server

# Install dependencies
npm install

# Build the project
npm run build

2.配置

# Configure your LibreLink credentials
npm run configure

系统将提示您:

  • 电子邮件:您的LibreLink帐户电子邮件
  • 密码:您的LibreLink帐户密码
  • 区域:美国或欧盟(根据您的位置)
  • 目标范围:葡萄糖目标范围(默认值:70-180mg/dL)

3.测试连接

# Test your LibreLink connection
node test-real-connection.js

4.克劳德桌面集成

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "librelink": {
      "command": "node",
      "args": ["/path/to/librelink-mcp-server/dist/index.js"]
    }
  }
}

5.重新启动克劳德桌面

重新启动Claude Desktop以加载新的MCP服务器。

🩸 使用示例

一旦与Claude Desktop集成,您可以问:

基本葡萄糖查询

  • “我目前的血糖水平是多少?”
  • “显示我过去6小时的血糖读数”
  • “我今天的平均血糖是多少?”

分析与洞察

  • “计算我本周的时间范围”
  • “分析我的血糖模式和趋势”
  • “我有黎明现象吗?”
  • “我的夜间血糖水平有多稳定?”

健康相关性

当与其他健康MCP服务器结合使用时:

  • “我的睡眠质量如何影响我的血糖控制?”
  • “将我的血糖变异性与我的压力水平进行比较”
  • “显示我的补充剂对葡萄糖稳定性的影响”

🛠 可用的MCP工具

工具 说明 参数
get_current_glucose 实时血糖读数与趋势 无
get_glucose_history 历史葡萄糖数据 hours (默认值:24)
get_glucose_stats 范围内的统计数据和时间 days (默认值:7)
get_glucose_trends 模式分析 period (每日/每周/每月)
get_sensor_info 传感器状态和信息 无
configure_credentials 更新LibreLink凭据 email, password, region
configure_ranges 设定目标葡萄糖范围 target_low, target_high
validate_connection 测试LibreLink连接 无

📊 样本输出

当前葡萄糖读数

{
  "current_glucose": 105,
  "timestamp": "2025-07-14T21:19:24.000Z",
  "trend": "Flat",
  "status": "Normal",
  "color": "green"
}

葡萄糖统计

{
  "analysis_period_days": 7,
  "average_glucose": 93.46,
  "glucose_management_indicator": 5.55,
  "time_in_range": {
    "target_70_180": 100.0,
    "below_70": 0.0,
    "above_180": 0.0
  },
  "variability": {
    "standard_deviation": 7.52,
    "coefficient_of_variation": 8.04
  }
}

趋势分析

{
  "period": "daily",
  "patterns": [
    "Good postprandial glucose control",
    "Excellent overnight glucose stability"
  ],
  "dawn_phenomenon": false,
  "meal_response_average": 0,
  "overnight_stability": 2.08
}

🔧 发展

运行测试

# Run all tests
npm test

# Test MCP protocol
npm run test:mcp

# Test analytics with mock data
npm run test:analytics

# Test with real LibreLink data (requires configuration)
node test-real-data.js

建筑

# Build TypeScript
npm run build

# Type checking
npm run typecheck

# Development mode
npm run dev

项目结构

librelink-mcp-server/
├── src/
│   ├── index.ts              # Main MCP server
│   ├── librelink-client.ts   # LibreLink API wrapper
│   ├── glucose-analytics.ts  # Analytics and statistics
│   ├── config.ts             # Configuration management
│   ├── configure.ts          # CLI configuration tool
│   └── types.ts              # TypeScript definitions
├── config/
│   └── default.json          # Default configuration
├── test-*.js                 # Test suites
├── package.json
└── README.md

🔒 安全与隐私

数据隐私

  • 仅限本地处理 -没有数据发送到外部服务器
  • 您的数据保留在您的计算机上 -完整的隐私控制
  • 无分析或跟踪 -零遥测

凭证安全

  • 本地存储 -凭据存储在 ~/.librelink-mcp/config.json
  • 文件权限 -自动设置为仅限用户访问(600)
  • 无云存储 -从未上传或分享

安全最佳实践

# Verify file permissions
ls -la ~/.librelink-mcp/config.json
# Should show: -rw------- (user read/write only)

# Optional: Encrypt config directory
# (Implementation details in documentation)

⚠️ 重要提示

LibreLink API使用情况

  • 此项目使用 非官方API 通过逆向工程
  • 与Abbott无关 或自由风格
  • 自行决定使用 并确保遵守LibreLink条款
  • API可能会改变 -社区保持兼容性

数据共享要求

  • 确保您的 LibreLink应用程序已启用数据共享
  • 你的 传感器必须处于活动状态 并传输数据
  • LibreLink帐户 需要(非LibreLinkUp)凭据

传感器兼容性

  • ✅ 自由风格2
  • ✅ 自由风格3
  • ❓ 自由风格1 (可能有效,未经测试)

🐛 故障排除

常见问题

“未找到连接”

  • 验证您使用的是LibreLink(不是LibreLinkUp)凭据
  • 检查您的LibreLink应用程序中是否启用了数据共享
  • 确保您的传感器处于活动状态并已连接

“身份验证失败”

  • 仔细检查电子邮件和密码
  • 验证正确的地区(美国/欧盟)
  • 尝试登录LibreLink应用程序以确认凭据

“连接超时”

  • 检查互联网连接
  • 验证LibreLink服务状态
  • 几分钟后重试

获取帮助

  1. 运行诊断程序:

    node diagnose-account.js
    
  2. 检查日志:在控制台输出中查找错误消息

  3. 测试连接:

    node test-real-connection.js
    
  4. 打开一个问题:包括诊断输出和错误消息

🤝 贡献

我们欢迎捐款!拜托:

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/amazing-feature
  3. 进行更改 通过测试
  4. 遵循现有代码样式
  5. 提交拉取请求

开发指南

  • 需要TypeScript -维护型号安全
  • 测试覆盖率 -为新功能添加测试
  • 文档 -更新README以获取新功能
  • 安全第一 -切勿提交凭据或敏感数据

📜 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

  • libre链接非官方api -Community-Manted LibreLink API客户端
  • MCP协议 -Anthropic的模型上下文协议
  • 自由风格自由社区 -灵感和逆向工程工作
  • 开源糖尿病项目 -Nightcout、OpenAPS等

⭐ 支持

如果这个项目可以帮助你在人工智能的帮助下管理糖尿病,请:

  • ⭐ 为存储库添加星号
  • 🐛 报告问题 你遇到
  • 💡 提出改进建议
  • 🤝 贡献 到项目

免责声明:这是一个与Abbott或FreeStyle Libre无关的非官方项目。负责任地使用并遵守适用的服务条款。始终咨询医疗保健专业人员以做出医疗决定。