Open Collective管理服务器

一个通过自然语言管理Open Collective页面的AI助手服务,支持更新资料、发布文章、创建项目、配置层级和跟踪财务。

  • by Citizen-Infra
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 Citizen-Infra/open-collective-mcp

使用说明

开放式集体MCP服务器

让你的AI助手管理你的 开放集体 页面——通过自然语言更新配置文件、发布帖子、创建项目、配置层和跟踪财务。

这是一个 模型上下文协议 连接到的(MCP)服务器 开放式集合GraphQL API v2。它适用于任何兼容MCP的客户端: 克劳德代码, 克劳德桌面版, 光标, 帆板运动, VS代码副本以及其他。

建造于 公民基础设施建设者俱乐部.

示例

连接后,您可以向您的AI助手询问以下问题:

“让我看看我们集体的平衡”

助理打来电话 oc-get-balance 并返回:

{
  "balance": { "value": 1250.00, "currency": "USD" },
  "totalAmountReceived": { "value": 8400.00, "currency": "USD" },
  "totalAmountSpent": { "value": 7150.00, "currency": "USD" }
}

“在我们的集体下创建一个名为‘社区花园’的项目”

助理打来电话 oc-create-project 使用名称和描述,项目将显示在您的Open Collective页面上。

工具(19)

域 工具 描述
个人资料 oc-get-collective, oc-edit-collective, oc-update-social-links 阅读并更新集体资料、社交链接
更新 oc-list-updates, oc-get-update, oc-create-update, oc-edit-update, oc-publish-update 管理集体更新/博客帖子
项目 oc-list-projects, oc-get-project, oc-create-project, oc-edit-project 管理集体内的子项目
层级 oc-list-tiers, oc-create-tier, oc-edit-tier 配置贡献层
金融的 oc-get-balance, oc-list-transactions, oc-list-expenses 跟踪余额、交易、费用
成员 oc-list-members 列出具有角色筛选的成员

快速开始

1.获得开放式集体个人代币

转到您的Open Collective帐户 设置→ 对于开发者→ 个人代币当创建令牌时, 启用所有可用作用域 --至少 account 写操作(创建项目、编辑配置文件、发布更新)需要范围。没有它,突变将失败,并“不允许在范围帐户中进行操作”

速率限制:使用个人令牌每分钟100个请求。

2.部署自己的实例

每个用户都使用自己的Open Collective令牌部署自己的实例——服务器代表配置令牌的人进行操作。您可以在任何运行Node.js的平台(Railway、Fly.io、Render、VPS等)上托管它,也可以在本地运行它。

选项A:铁路(远程HTTP)

设置这些环境变量:

变量 描述
OPEN_COLLECTIVE_TOKEN 您的开放式集体个人代币
API_KEY MCP客户端身份验证的承载令牌(您选择的任何随机字符串)
PORT 由铁路自动设置,不手动设置

选项B:本地运行(stdio)

git clone https://github.com/Citizen-Infra/open-collective-mcp.git
cd open-collective-mcp
npm install && npm run build
OPEN_COLLECTIVE_TOKEN=<your-token> node dist/index.js

为了开发,使用 npm run dev 跳过构建步骤(使用tsx运行)。

3.连接您的MCP客户端

克劳德代码

远程HTTP(铁路):

claude mcp add --transport http \
  --header "Authorization: Bearer <API_KEY>" \
  -s user open-collective \
  https://<your-railway-domain>/mcp

本地标准:

claude mcp add -e OPEN_COLLECTIVE_TOKEN=<your-token> \
  -s user open-collective -- node /path/to/open-collective-mcp/dist/index.js

克劳德桌面版

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "open-collective": {
      "command": "node",
      "args": ["/path/to/open-collective-mcp/dist/index.js"],
      "env": {
        "OPEN_COLLECTIVE_TOKEN": "<your-token>"
      }
    }
  }
}

Cursor/Windsurf/其他MCP客户端

使用上面的stdio配置——命令是 node /path/to/open-collective-mcp/dist/index.js 随着 OPEN_COLLECTIVE_TOKEN 作为环境变量。有关确切的配置格式,请参阅客户的MCP文档。

发展

npm install
npm run dev              # stdio mode (local)
PORT=3000 npm run dev    # HTTP mode (local)
npm run build            # compile TypeScript

建筑

  • 运行时间: Node.js+TypeScript @modelcontextprotocol/sdk
  • 运输: 双模--stdio供本地使用(否 PORT),用于托管部署的流式HTTP(PORT 设置)
  • GraphQL: 轻量级 fetch 包装物 https://api.opencollective.com/graphql/v2
  • 认证: 两层-- Personal-Token OC API的标题;持有者代币(API_KEY)用于HTTP模式下的MCP客户端身份验证
  • 结构: 两层分离-- tools/ 定义MCP模式和处理程序, queries/ 保存原始GraphQL字符串

路线图

  • []发布到npm npx -y open-collective-mcp 安装
  • []通过以下方式安装一个命令 npx add-mcp
  • []费用提交和审批工具
  • []事件管理工具
  • []Webhook支持实时通知

贡献

欢迎投稿!此项目使用启用严格模式的TypeScript。

git clone https://github.com/Citizen-Infra/open-collective-mcp.git
cd open-collective-mcp
npm install
npm run dev    # runs with tsx, no build step needed

在提交PR之前,请确保 npm run build 无差错通过。

请参阅 API文件 对于Open Collective GraphQL模式。

许可证

麻省理工学院