关于 Codehooks.io MCP Server (under construction 🚧)
Codehooks.io MCP Server 为 Codehooks.io 平台提供 AI Agent 操作入口,适用于无法使用终端的环境。它涵盖数据集合、无服务器代码部署、文件和键值存储管理。
主要功能
- 01查询、更新和管理数据集合
- 02导入导出 JSON、JSONL 和 CSV
- 03部署 JavaScript 无服务器函数
- 04管理云端文件及其元数据
- 05读写键值数据并设置 TTL
- 06查看应用日志和 API 文档
适用场景
- 01导入数据并部署 API 端点
- 02构建云端文件上传与内容管理
- 03设置键值配置及过期时间
- 04检查应用日志和平台 API 文档
MCP 相关
该 MCP 服务向 MCP 客户端开放 Codehooks.io 的数据集合、代码部署、文件、键值存储和系统操作能力。README 建议有终端的 Agent 直接使用 coho CLI。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Codehooks.io MCP 服务
一个 MCP(Model Context Protocol)服务,为 AI Agent 提供数据库操作、无服务器代码部署和文件管理功能,运行于 Codehooks.io 平台。
何时使用此 MCP,而非直接使用 CLI
| 环境 | 是否有终端? | 推荐方式 |
|---|---|---|
| Claude Code | 是 | 直接使用 coho CLI |
| Cursor | 是 | 直接使用 coho CLI |
| Claude Desktop | 否 | 使用此 MCP 服务 |
对于可访问终端的 AI Agent(Claude Code、Cursor 等)
直接使用 Codehooks CLI 更简单灵活:
- 安装 CLI:
npm install -g codehooks - 登录:
coho login - 获取 AI 提示词:
coho prompt - 或参考在线文档:https://codehooks.io/llms.txt
随后,Agent 可以直接在终端运行 coho 命令。
对于 Claude Desktop(无法访问终端)
使用此 MCP 服务,让 AI 能够访问 Codehooks 功能。请参阅下方的设置部分。
可用功能
数据库与集合
- 使用筛选条件和排序查询及更新集合(包括元数据)
- 创建和管理集合
- 导入/导出数据(JSON、JSONL、CSV)
- 添加架构和索引,限制集合容量
代码部署
- 部署 JavaScript 无服务器函数
文件操作
- 将文件上传到云存储
- 列出和浏览文件
- 删除文件
- 检查文件元数据
键值存储
- 存储键值对
- 检索一个或多个键值对
- 删除键值对
- 为键值对设置生存时间(TTL)
系统操作
- 查看应用日志
- 访问 API 文档(供 MCP Agent 使用的本地文档)
设置
获取 Codehooks 管理员令牌(请妥善保密!)
coho login
coho add-admintoken
创建 MCP 服务脚本
为 MCP 服务脚本创建一个文件夹:
mkdir ~/mcp-servers
cd ~/mcp-servers
对于 macOS/Linux - 创建 codehooks.sh:
#!/bin/bash
# Set PATH to include common Docker locations
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 处理流水线:接收来自多个来源的 Webhook,转换并验证数据,然后触发自动化操作”
- “构建内容管理系统:创建文件上传端点,设置元数据数据库,并部署内容交付 API”
- “搭建自动数据备份:将我的集合导出为 JSON 文件,附带时间戳进行存储,并创建恢复端点”
这些示例的工作方式
完整的问卷调查系统
AI Agent 将会:
- 创建集合(
surveys、responses)以存储数据 - 添加架构,用于数据验证和结构定义
- 部署 JavaScript 端点,例如
POST /surveys和GET /surveys/:id/analytics - 在回复字段上创建索引,以便快速搜索和分析
实时库存跟踪系统
AI Agent 将会:
- 导入你的 CSV,填充
products集合 - 部署 Webhook 处理程序,用于处理
POST /inventory/update和GET /inventory/low-stock - 设置键值存储,用于保存警报阈值和设置
- 在 SKU 和库存水平上创建索引,以支持实时查询
Webhook 处理流水线
AI Agent 将会:
- 部署 webhook 接收器,例如
POST /webhooks/stripe和POST /webhooks/github - 创建集合,用于存储
webhook_logs、processed_events和failed_events - 为每个 webhook 来源设置数据转换规则和验证架构
- 使用键值存储进行速率限制和重复检测,并设置 TTL
- 部署操作触发器,根据 webhook 数据发送邮件、更新数据库或调用其他 API
内容管理系统
AI Agent 将会:
- 创建集合,用于存储
content、media和users - 部署文件上传端点,包括
POST /upload和GET /content/:id - 上传和管理静态文件,以便分发内容
- 存储元数据,将文件关联到内容记录,并建立搜索索引
自动数据备份
AI Agent 将会:
- 将集合导出为带时间戳的 JSON 格式
- 自动将备份文件上传到云存储
- 部署恢复 API,例如
GET /backups和POST /restore/:backup-id - 将备份元数据存储在键值存储中,以便跟踪和管理
每个示例都展示了多个 MCP 工具如何协同工作,通过与 AI Agent 自然对话来构建完整、可用于生产环境的系统。
安全研究人员
感谢以下人士负责任地披露问题,帮助改进本项目的安全性:
- Liran Tal – 报告了
query_collection工具中的命令注入漏洞(2025 年 5 月)
许可证
本项目采用 MIT License 许可。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。