统一MCP API
一个统一的REST API,取代了Claude Code的MCP(模型上下文协议)服务器,每次会话减少了约32000个令牌的上下文开销。
目的
这个API通过REST端点提供了Claude可以访问的相同功能,而不是将16+MCP服务器和134个工具加载到Claude的上下文中 WebFetch.
快速开始
# Install dependencies
npm install
# Copy environment template
cp .env.example .env
# Configure your API keys in .env
# Run in development
npm run dev
# Build for production
npm run build
npm start部署
此API旨在部署到 渲染:
- 推送到GitHub
- 将存储库连接到Render
- 配置环境变量
- 部署
看 render.yaml 部署蓝图。
API终点
所有端点都需要 Authorization: Bearer YOUR_API_KEY 头球
健康检查
GET /health-无需身份验证
API信息
GET /api/v1-列出所有可用端点
GitHub(/api/v1/github)
GET /repos/search?q=-搜索存储库GET /repos/:owner/:repo-获取存储库GET /repos/:owner/:repo/contents/*-获取文件内容PUT /repos/:owner/:repo/contents/*-创建/更新文件GET /repos/:owner/:repo/commits-列表提交GET /repos/:owner/:repo/issues-列出问题POST /repos/:owner/:repo/issues-创建问题PATCH /repos/:owner/:repo/issues/:number-更新问题GET /repos/:owner/:repo/pulls-列出拉取请求POST /repos/:owner/:repo/pulls-创建pull请求PUT /repos/:owner/:repo/pulls/:number/merge-合并PRPOST /repos/:owner/:repo/branches-创建分支GET /search/code?q=-搜索代码GET /search/issues?q=-搜索问题
概念(/api/v1/notion)
GET /search?q=-搜索工作区GET /pages/:id-获取页面POST /pages-创建页面PATCH /pages/:id-更新页面GET /pages/:id/blocks-获取页面块POST /pages/:id/blocks-附加块GET /databases/:id-获取数据库POST /databases/:id/query-查询数据库POST /databases-创建数据库GET /users-列出用户POST /comments-创建评论
文件系统(/api/v1/fs)
GET /allowed-列出允许的目录GET /read?path=-读取文件POST /write-写入文件PATCH /edit-编辑文件(查找/替换)GET /list?path=-列表目录GET /tree?path=-目录树GET /search?path=&pattern=-搜索文件GET /info?path=-文件信息POST /mkdir-创建目录POST /move-移动/重命名文件DELETE /delete?path=-删除文件
记忆/知识图谱(/api/v1/memory)
GET /-阅读整个图表POST /entities-创建实体POST /relations-建立关系POST /observations-添加观察结果DELETE /entities-删除实体DELETE /observations-删除观察结果DELETE /relations-删除关系GET /search?query=-搜索节点POST /nodes-打开特定节点
SQLite数据库(/api/v1/db)
GET /tables-列出表格GET /tables/:name-描述表格POST /tables-创建表格POST /query/read-执行SELECTPOST /query/write-执行插入/更新/删除POST /query/raw-原始SQL(管理员)POST /transaction-交易支持POST /insights-添加业务洞察力GET /insights-获取见解
文件(/api/v1/docs)
GET /resolve?libraryName=-解析库IDGET /library?libraryId=-获取库文档GET /search?query=-搜索文档GET /popular-热门图书馆GET /examples?libraryId=-代码示例
浏览器自动化(/api/v1/browser)
POST /navigate-导航到URLPOST /screenshot-截图GET /snapshot-可访问性快照POST /click-点击元素POST /type-键入文本POST /fill-form-填写表单字段POST /press-按键POST /evaluate-运行JavaScriptGET /content-获取页面内容POST /wait-等待选择器POST /resize-调整视口大小POST /close-结束会话GET /tabs-列表选项卡
渲染部署(/api/v1/render)
GET /services-列出服务GET /services/:id-获取服务POST /services/web-创建web服务POST /services/static-创建静态站点PATCH /services/:id-更新服务GET /services/:id/deploys-列表部署POST /services/:id/deploys-触发器部署PUT /services/:id/env-vars-更新环境变量GET /postgres-列出数据库POST /postgres-创建PostgresGET /key-value-列出Redis存储GET /metrics/:id-获取指标GET /logs/:id-获取日志
特雷洛(/api/v1/trello)
GET /boards-列表板GET /boards/:id-获取董事会GET /boards/:id/lists-获取列表POST /lists-创建列表GET /lists/:id/cards-获取卡片GET /cards/:id-获取卡片POST /cards-创建卡片PUT /cards/:id-更新卡片PUT /cards/:id/move-移动卡片DELETE /cards/:id-删除卡片POST /cards/:id/comments-添加评论GET /search?query=-搜索
不和谐(/api/v1/discord)
GET /me-获取机器人信息GET /guilds-列出公会GET /guilds/:id/channels-获取频道GET /channels/:id/messages-获取消息POST /channels/:id/messages-发送消息PATCH /channels/:id/messages/:id-编辑消息DELETE /channels/:id/messages/:id-删除邮件POST /channels/:id/threads-创建线程POST /webhooks/:id/:token-Webhook消息
顺序思维(/api/v1/thinking)
POST /sessions-创建会话GET /sessions-列出会话GET /sessions/:id-获取会话POST /sessions/:id/thoughts-添加想法POST /think-过程思维GET /sessions/:id/summary-获取摘要DELETE /sessions/:id-删除会话
环境变量
# Server
PORT=3000
NODE_ENV=development
API_KEY=your-secure-api-key
# Service Tokens
GITHUB_TOKEN=ghp_...
NOTION_TOKEN=secret_...
RENDER_API_KEY=rnd_...
TRELLO_API_KEY=...
TRELLO_TOKEN=...
DISCORD_BOT_TOKEN=...
# Paths
ALLOWED_PATHS=D:/GitFolder,D:/Research
SQLITE_DB_PATH=./data/database.db
MEMORY_GRAPH_PATH=./data/knowledge-graph.json
THINKING_SESSIONS_PATH=./data/thinking-sessions.json
# Logging
LOG_LEVEL=info建筑
src/
├── index.ts # Express app entry point
├── middleware/
│ ├── auth.ts # API key authentication
│ └── errorHandler.ts # Error handling
├── routes/
│ ├── github.ts # GitHub API
│ ├── notion.ts # Notion API
│ ├── filesystem.ts # File operations
│ ├── memory.ts # Knowledge graph
│ ├── database.ts # SQLite
│ ├── docs.ts # Context7 proxy
│ ├── browser.ts # Playwright
│ ├── render.ts # Render.com
│ ├── trello.ts # Trello
│ ├── discord.ts # Discord
│ └── thinking.ts # Sequential thinking
└── utils/
└── logger.ts # Winston logger代币节省
| 配置 | 使用的令牌 |
|---|---|
| 16台MCP服务器 | ~32000台 |
| 此API | 约500(仅限WebFetch工具) |
| 储蓄 | 约31500个令牌/对话 |
许可证
麻省理工学院
