桃子桃子快讯
返回首页
工具

Harbor:用五个工具替代逐端点映射的 MCP 网关

开源项目 Harbor 提出 Code Mode 思路,仅用五个通用工具让 AI 客户端通过编写 JavaScript…

2026.07.05 · 周日5 分钟阅读

Harbor 是一款面向生产环境的 Model Context Protocol(MCP)网关,定位是让 Claude、Cursor、GPT 等 AI 客户端能够与既有后端 API 对话,而无需对这些 API 做任何改造。它在 Hacker News 上获得了开发者社区的关注。

核心思路:Code Mode

传统做法是为每个 API 端点单独生成一个 MCP 工具,但一个真实业务的后端往往拥有数百个端点,会直接撑爆 AI 的上下文窗口。Harbor 选择了另一种路径——Code Mode:

  • AI 客户端只拿到五个通用工具,而非「一个端点一个工具」;
  • AI 用 JavaScript 编写调用逻辑,由网关在隔离的 V8 沙箱中执行;
  • 每次调用都经过校验,再附带正确凭证转发到后端;
  • 内置熔断与重试,保证稳定性。

这种做法的优势是网关成为「纯适配层」,业务侧接口完全不需要改动。

主要能力

Harbor 的功能覆盖认证、安全、可观测性等企业落地常被提及的几个维度:

  • 五件套工具集:discover_services、discover_skills、get_skill_details、search_code、api_execute;
  • V8 沙箱隔离:AI 编写的 JavaScript 无法访问网络、文件系统或框架内部;
  • 可插拔认证:支持 static-token、oauth-introspection、jwt-validation(本地 JWKS,无需 AS 往返)以及 oauth-2.1(RFC 8414 / OIDC 自动发现);
  • OAuth 2.1 受保护资源:RFC 9728 discovery 元数据、401 时的 WWW-Authenticate、完整 MCP 认证流程;
  • 可插拔后端:可注册自定义 token 缓存后端,无需 fork;
  • 逐服务配置:每个服务独立声明认证、熔断策略与 spec 来源;
  • 零 API 改动:后端代码完全无需调整;
  • Service Skills:以 Markdown 形式编写的 SOP,AI 在调用前先阅读;
  • 熔断器:按端点、服务维度的计数式熔断;
  • 结构化审计日志:每一次 api_execute 调用都会记录代码、端点、耗时与结果;
  • 传输层:同时支持 Streamable HTTP 与 stdio 两种 MCP 传输方式。

快速上手

环境要求为 Node.js 22+、npm 10+ 以及本地编译工具(macOS 上需 Xcode CLT,Linux 上需 build-essential)。克隆仓库并安装依赖后,执行 bash examples/demo/start.sh 即可启动三个本地后端加 MCP 网关的完整演示。

  • E2E 冒烟测试:python3 tests/demo_e2e.py --start-services
  • 接入 Cursor:在 ~/.cursor/mcp.json 中添加 harbor 服务配置;
  • 接入 Claude Desktop:在 ~/Library/Application Support/Claude/claude_desktop_config.json 中添加对应配置;
  • 开发模式:npm run dev 启动 tsx watch 热重载;
  • 测试:npm test 运行 312 个单元与集成测试;
  • 类型检查与构建:npm run typechecknpm run build

项目仓库位于 github.com/vdssinha/harbor,文档覆盖入门、服务接入、Skill 编写、配置、自定义适配器、OAuth 2.1、架构、工具层、请求生命周期与 FAQ 等主题,并附带 ROADMAP 说明后续规划。

许可与社区

Harbor 采用 Apache License 2.0 开源协议,项目欢迎贡献,并在 CONTRIBUTING.md 中提供了设置、编码规范、PR 流程以及「good first issues」入口。对于已经在使用 MCP、但被「端点爆炸」困扰的团队来说,Code Mode 提供了一条值得评估的工程化路径。

信源