mcpField
G
gatherings MCP Server

gatherings MCP Server

本地服务
github.com/abutbul金融数据079 周前更新

关于 gatherings MCP Server

gatherings MCP Server 是用于记录社交活动共同开支与付款的 MCP 服务。它提供活动和成员管理、报销计算及余额结算工具,并由 TypeScript 层调用 Python 后端。

主要功能

  1. 01创建和管理活动
  2. 02记录成员开支与付款
  3. 03计算报销金额
  4. 04管理活动成员
  5. 05查看并关闭活动

适用场景

  1. 01分摊团体活动费用
  2. 02计算朋友间的报销金额
  3. 03记录共同开支的付款

MCP 相关

它向 MCP 客户端提供活动、开支、付款和报销工具。TypeScript 服务会将请求转交给 Python 脚本。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

gatherings MCP 服务

用于管理聚会和分摊费用的模型上下文协议服务。

这是一个基于 TypeScript 的 MCP 服务,可帮助记录社交活动的费用和付款,方便计算报销金额并结清朋友之间的余额。

架构说明

重要提示:本项目采用了非标准的 Node.js 应用架构。TypeScript MCP 服务充当 Python 后端实现的封装层。Node.js 服务接收 MCP 请求,将其转换为对 Python 脚本的命令行调用,并返回结果。

虽然这种架构满足了我们当前的需求,但对于生产应用来说,它并不是最高效或最易维护的方案。

待办事项
  • 将实现重构为更标准的架构:
    • 将后端完整迁移到 TypeScript/JavaScript
    • 或在 Node.js 与 Python 组件之间实现适当的进程间通信
    • 或改用 REST API 方案,由 Python 后端提供 API,供 MCP 服务调用
  • 改进 Node.js 与 Python 组件之间的错误处理
  • 为组件间集成添加自动化测试
  • 优化 Dockerfile

功能

工具
  • create_gathering - 创建新的聚会
    • 必需参数为 gathering_id 和 members
  • add_expense - 为成员添加一笔费用
    • 必需参数为 gathering_id、member_name 和 amount
  • calculate_reimbursements - 计算聚会的报销金额
    • 必需参数为 gathering_id
  • record_payment - 记录成员的一笔付款
    • 必需参数为 gathering_id、member_name 和 amount
  • rename_member - 为未命名成员重命名
    • 必需参数为 gathering_id、old_name 和 new_name
  • show_gathering - 显示聚会详情
    • 必需参数为 gathering_id
  • list_gatherings - 列出所有聚会
  • close_gathering - 关闭聚会
    • 必需参数为 gathering_id
  • delete_gathering - 删除聚会
    • 必需参数为 gathering_id,force 参数可选
  • add_member - 向聚会添加新成员
    • 必需参数为 gathering_id 和 member_name
  • remove_member - 从聚会中移除成员
    • 必需参数为 gathering_id 和 member_name

开发

安装依赖:

npm install

构建服务:

npm run build

在开发过程中启用自动重新构建:

npm run watch

安装

配置

要与 Claude Desktop 配合使用,请添加服务配置:

{
  "mcpServers": {
    "gatherings": {
      "command": "node",
      "args": ["/path/to/gatherings-server/build/index.js"],
      "env": {
        "GATHERINGS_DB_PATH": "gatherings.db",
        "GATHERINGS_SCRIPT": "/path/to/gatherings-server/gatherings.py"
      },
      "disabled": false,
      "autoApprove": [],
      "alwaysAllow": [
        "create_gathering",
        "add_expense",
        "calculate_reimbursements",
        "record_payment",
        "rename_member", 
        "show_gathering",
        "list_gatherings",
        "close_gathering",
        "delete_gathering",
        "add_member",
        "remove_member"
      ],
      "timeout": 300
    }
  }
}
配置选项
  • command 和 args:指定如何运行服务
  • env:环境变量
    • GATHERINGS_DB_PATH:数据库文件的路径
    • GATHERINGS_SCRIPT:用于处理聚会操作的 Python 脚本路径
  • alwaysAllow:无需提示即可自动允许使用的工具列表
  • timeout:最长执行时间,单位为秒
调试

由于 MCP 服务通过 stdio 通信,调试可能比较困难。我们建议使用 MCP Inspector,它可通过包脚本运行:

npm run inspector

Inspector 会提供一个 URL,供你在浏览器中访问调试工具。

评论

支持 Markdown

第一次接触 MCP?

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

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