RestDB/codehooks-mcp-server

GitHub: RestDB/codehooks-mcp-server

一个为 AI 助手提供 Codehooks.io 后端平台操作能力的 MCP 服务器,支持数据库、serverless 代码部署和文件管理。

Stars: 12 | Forks: 1

# Codehooks.io MCP 服务器 一个 MCP (Model Context Protocol) 服务器,为 AI agents 提供在 Codehooks.io 平台上的数据库操作、serverless 代码部署和文件管理功能。 ## 何时使用此 MCP vs. 直接使用 CLI | 环境 | 拥有终端? | 推荐方案 | |-------------|---------------|---------------------| | Claude Code | 是 | 直接使用 `coho` CLI | | Cursor | 是 | 直接使用 `coho` CLI | | Claude Desktop | 否 | 此 MCP server | ### 对于拥有终端访问权限的 AI Agents(Claude Code, Cursor 等) 直接使用 Codehooks CLI 更简单且更灵活: 1. 安装 CLI:`npm install -g codehooks` 2. 登录:`coho login` 3. 获取 AI prompt:`coho prompt` 4. 或参考在线文档:https://codehooks.io/llms.txt Agent 随后可以直接在终端中运行 `coho` 命令。 ### 对于 Claude Desktop(无终端访问权限) 使用此 MCP server 为 AI 提供访问 Codehooks 功能的权限。请参阅下方的[设置](#setup)部分。 ## 可用功能 ### 数据库与集合 - 使用过滤器和排序查询和更新集合(包括元数据) - 创建和管理集合 - 导入/导出数据(JSON, JSONL, CSV) - 添加 schemas 和索引,限制集合大小 ### 代码部署 - 部署 JavaScript serverless 函数 ### 文件操作 - 将文件上传到云存储 - 列出和浏览文件 - 删除文件 - 检查文件元数据 ### Key-Value Store - 存储 key-value pairs - 检索一个或多个 key-value pairs - 删除 key-value pairs - 为 key-value pairs 设置 time-to-live (TTL) ### 系统操作 - 查看应用程序日志 - 访问 API 文档(给 MCP agent 的本地文档) ## 设置 ### 获取 Codehooks Admin Token(请保密!) ``` coho login coho add-admintoken ``` ### 创建 MCP Server 脚本 为你的 MCP server 脚本创建一个文件夹: ``` mkdir ~/mcp-servers cd ~/mcp-servers ``` **对于 macOS/Linux** - 创建 `codehooks.sh`: ``` #!/bin/bash # 设置 PATH 以包含常见 Docker 位置 export PATH="/usr/local/bin:/opt/homebrew/bin:/usr/bin:/bin:$PATH" exec docker run --rm -i \ --pull always \ -e CODEHOOKS_PROJECT_NAME=your_project_name \ -e CODEHOOKS_ADMIN_TOKEN=your_admin_token \ -e CODEHOOKS_SPACE=your_space_name \ ghcr.io/restdb/codehooks-mcp:latest ``` 使其可执行: ``` chmod +x ~/mcp-servers/codehooks.sh ``` **对于 Windows** - 创建 `codehooks.bat`: ``` @echo off docker run --rm -i ^ --pull always ^ -e CODEHOOKS_PROJECT_NAME=your_project_name ^ -e CODEHOOKS_ADMIN_TOKEN=your_admin_token ^ -e CODEHOOKS_SPACE=your_space_name ^ ghcr.io/restdb/codehooks-mcp:latest ``` 将 `your_project_name`、`your_admin_token` 和 `your_space_name` 替换为你的实际值。 ### 为 Claude Desktop 配置 添加到你的 `claude_desktop_config.json`: **macOS/Linux:** ``` { "mcpServers": { "codehooks": { "command": "/Users/username/mcp-servers/codehooks.sh" } } } ``` **Windows:** ``` { "mcpServers": { "codehooks": { "command": "C:\\Users\\username\\mcp-servers\\codehooks.bat" } } } ``` ### 为 Cursor 配置 添加到你的 `~/.cursor/mcp.json`: **macOS/Linux:** ``` { "mcpServers": { "codehooks": { "command": "/Users/username/mcp-servers/codehooks.sh" } } } ``` **Windows:** ``` { "mcpServers": { "codehooks": { "command": "C:\\Users\\username\\mcp-servers\\codehooks.bat" } } } ``` 将 `username` 替换为你的实际用户名。 ## 示例请求 - "构建一个完整的调查系统:创建数据库,部署 API 以收集回复,并添加搜索/分析端点" - "设置一个实时库存追踪器:导入我的产品 CSV,创建库存更新 webhook,并构建低库存警报" - "构建一个 webhook 处理 pipeline:从多个来源接收 webhook,转换和验证数据,然后触发自动化操作" - "构建一个内容管理系统:创建文件上传端点,设置元数据数据库,并部署内容交付 API" - "设置自动化数据备份:将我的集合导出为 JSON 文件,带时间戳存储它们,并创建恢复端点" ## 这些示例如何工作 ### 完整调查系统 **AI agent 会:** 1. **创建集合**(`surveys`,`responses`)用于数据存储 2. **添加 schemas** 用于数据验证和结构 3. **部署 JavaScript 端点**,如 `POST /surveys` 和 `GET /surveys/:id/analytics` 4. **在回复字段上创建索引** 以实现快速搜索和分析 ### 实时库存追踪器 **AI agent 会:** 1. **导入你的 CSV** 以填充 `products` 集合 2. **部署 webhook handlers** 用于 `POST /inventory/update` 和 `GET /inventory/low-stock` 3. **设置 key-value storage** 用于警报阈值和设置 4. **在 SKU 和库存水平上创建索引** 用于实时查询 ### Webhook 处理 Pipeline **AI agent 会:** 1. **部署 webhook receivers**,如 `POST /webhooks/stripe` 和 `POST /webhooks/github` 2. **创建集合** 用于 `webhook_logs`、`processed_events` 和 `failed_events` 3. **设置数据转换** 规则和每个 webhook 来源的验证 schemas 4. **使用 key-value store** 进行速率限制和带 TTL 的重复检测 5. **部署 action triggers**,根据 webhook 数据发送电子邮件、更新数据库或调用其他 API ### 内容管理系统 **AI agent 会:** 1. **创建集合** 用于 `content`、`media` 和 `users` 2. **部署文件上传端点**,包含 `POST /upload` 和 `GET /content/:id` 3. **上传和管理静态文件** 用于内容交付 4. **存储元数据** 将文件链接到带有搜索索引的内容记录 ### 自动化数据备份 **AI agent 会:** 1. **将集合导出** 为带时间戳的 JSON 格式 2. **自动上传备份文件** 到云存储 3. **部署恢复 API**,如 `GET /backups` 和 `POST /restore/:backup-id` 4. **在 key-value store 中存储备份元数据** 用于跟踪和管理 每个示例都演示了多个 MCP 工具如何协同工作,通过与 AI agent 的自然对话创建完整的、生产就绪的系统。 ## 安全研究人员 我们感谢以下个人的负责任披露并帮助提高了本项目的安全性: - [Liran Tal](https://lirantal.com) – 报告了 `query_collection` 工具中的一个命令注入漏洞(2025 年 5 月) ## 许可证 本项目根据 MIT 许可证授权。
标签:API集成, Claude Desktop, CMS安全, Codehooks.io, JavaScript, MCP服务器, Model Context Protocol, NoSQL数据库, OISF, PE 加载器, Serverless, SOC Prime, 云存储, 人工智能代理, 代码部署, 可观测性, 后端开发, 开发工具, 数据可视化, 数据导入导出, 数据库操作, 文件管理, 无服务器计算, 日志管理, 自动化运维, 自定义脚本, 请求拦截, 键值存储