DynamoDB集成服务器

LifeTracker MCP服务器提供DynamoDB集成功能,支持活动日志记录和查询。

  • by pinchasn81
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 pinchasn81/life-tracker-mcp-server

使用说明

LifeTracker MCP服务器

MCP服务器,用于LifeTracker DynamoDB集成。

文件

  • main.py -带活动日志工具的FastMCP服务器
  • fastmcp.json -部署配置
  • GSI_SETUP.md -创建DynamoDB全球二级索引指南

先决条件

所需DynamoDB GSI

为了获得最佳性能和一致性,请在以下位置创建全球二级指数 user_name:

索引配置:

  • 索引名称: user_name-index
  • 分区密钥: user_name (字符串)
  • 投影:全部

看 GSI_SETUP.md 有关详细的设置说明。

注: 服务器将在没有GSI的情况下工作,但会退回到较慢的扫描操作 ConsistentRead=True.

本地开发

uv run mcp dev main.py

部署问题

⚠️ 当前问题:FastMCP云抛出“已在此线程中运行asyncio”错误。

这似乎是以下两者之间的兼容性问题:

  • FastMCP HTTP传输
  • 云平台的事件循环管理

尝试修复

✅ 移除 mcp.run() ✅ 延迟DynamoDB初始化 ✅ 已删除枚举类型 ✅ 同时设置AWS_REGION和AWS_DEFAULT_REGION ✅ 创建替代方案 server.py 使用基本MCP服务器

推荐解决方案

  1. 联系FastMCP支持 -此错误来自他们的平台(cli.py:533)
  2. 尝试不同的平台 -部署到:
    • 带API网关的AWS Lambda
    • 谷歌云运行
    • 任何主机上的Docker容器
  3. 使用本地/Claude桌面 -与stdio传输完美配合

环境变量

必修的:

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
  • AWS_DEFAULT_REGION (使用此项,而不仅仅是AWS_REGION)
  • TABLE_PREFIX (可选)

工具

  • create_activity_log -记录活动
  • get_activity_logs -获取活动历史记录