你有没有遇到过这种场景:自己在本地折腾了一个 MCP 服务,能连 Cursor 了、能查数据库了、能操作文件了,开心得不行。然后同事问"你这个怎么连的?"——接着你就陷入了端口转发、内网穿透、TLS 证书、API 鉴权的一地鸡毛里?
把本地 MCP 服务分享给团队,本来不该这么痛苦。
最近发现了一个很有意思的开源项目 MCPZERO,一句话概括就是:把你的本地 MCP 服务通过一条加密隧道发布出去,别人拿个 HTTP URL + API Key 就能用。不用开端口,不用配域名,不用折腾 TLS。
项目地址:https://github.com/mcpzero/mcpzero
MCP 共享为什么是个麻烦事?
Model Context Protocol(MCP)是今年 AI 工具链里最火的一套标准。它让 AI 客户端(Cursor、Claude、Codex 这些)能通过统一的接口调用外部工具——查数据库、读文件、运行脚本、访问 API。
但 MCP 标准本身只定义了通信协议,没解决连接问题。
目前的 MCP 场景基本分两类:
- 本地 stdio 模式:AI 客户端直接启动 MCP 服务进程。简单直接,但只能本机用,别人连不上。
- HTTP/SSE 模式:MCP 服务跑在某个 HTTP 端点上。可以远程访问,但你要自己搞定域名、TLS、鉴权、防火墙。
换句话说,从"我本地能用"到"团队都能用",中间隔着好几层基础设施的活儿。每个团队都得自己造一遍轮子。
而 MCPZERO 就是来填这个坑的。
MCPZERO 是什么?
先看它的定位:MCP 聚合网关(Aggregation Gateway)。
不是什么新协议、不是替代 MCP 标准,就是在你的 MCP 服务和外部客户端之间加了一层。它有四个核心能力:
1. 零配置隧道
在本地跑一条命令 mcpzero tunnel start,它会自动读取你已有的 mcp.json 配置,把所有的 stdio MCP 服务通过一条加密 WebSocket 隧道连接到 MCPZERO 网关。然后网关给你一个公开的 HTTPS 端点。不需要开端口、不需要配域名、不需要管 TLS 证书。
2. 语义聚合
你本机可能跑了 5 个 MCP 服务:Postgres 查询、文件系统操作、浏览器自动化、GitHub API、Slack 消息。MCPZERO 把它们聚合成一个端点,每个服务有独立的路径。客户端可以直接访问 /v1/ep_xxx/postgres 或 /v1/ep_xxx/filesystem,也可以访问根路径让网关自动路由。
3. 渐进式发现
这个设计很聪明。AI 客户端不需要一开始就加载所有服务的 tool schema——网关支持 meta_search 和 meta_call_tool,让 Agent 根据意图动态匹配工具,节省上下文 token。
4. 零信任安全
每一个公开端点都在网关侧强制鉴权。客户端用 Authorization: Bearer <API Key> 认证,解码时间在 5ms 以内。你的 MCP 服务本身不需要知道谁来调用了它——身份验证和授权完全由网关处理。
一个实战案例:暴露本地 SQLite 数据库
光说概念不过瘾,我们直接上一个真实可跑的案例。
假设你本地有一个 SQLite 数据库 demo.db,里头有客户数据。你想让 Cursor 能通过 AI 对话查询这个数据库——但不暴露数据库文件本身,也不开任何端口。
第一步:安装 CLI
brew install mcpzero/tap/mcpzero-cli
# 或者 curl -fsSL https://mcpzero.io/install-cli.sh | sh
# 或者 npm install -g mcpzero-cli
第二步:注册账号,创建一个端点
去 https://mcpzero.io/app 注册,创建一个 endpoint,拿到 ep_abc123 这样的 ID。
第三步:启动隧道
mcpzero tunnel start \
--endpoint ep_abc123 \
--mcp-cmd "uvx mcp-server-sqlite --db-path $(pwd)/demo.db"
看到 tunnel registered 后,你的 SQLite 数据库就已经发布到公网了。但数据库文件从来没离开过你的机器——只有查询结果通过加密隧道流出去。
第四步:生成 API Key,测试调用
在 Dashboard 里生成一个 mz_live_xxx 的 API Key,然后用 curl 测试:
curl -s https://gw.mcpzero.io/v1/ep_abc123 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mz_live_xxx" \
-d '{
"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{
"name":"read_query",
"arguments":{"query":"SELECT name, email FROM customers LIMIT 3"}
}
}'
第五步:连到 Cursor
在 ~/.cursor/mcp.json 里加一行:
{
"mcpServers": {
"my-sqlite": {
"url": "https://gw.mcpzero.io/v1/ep_abc123",
"headers": { "Authorization": "Bearer mz_live_xxx" }
}
}
}
搞定。现在你和你的团队都可以在 Cursor 里直接通过自然语言查询这个数据库了。整个过程不需要写一行网络配置代码。
为什么说 MCPZERO 值得关注?
说实话,做 MCP 网关的项目不少,但 MCPZERO 有几个让我觉得「有点意思」的设计:
开源 + 商业的清晰边界 CLI 和 SDK 全部 MIT 开源,可以自己研究甚至自建。免费版够 solo 开发者用(每月 3 万次请求),Team 版($199/月)加上了团队共享和审计日志。商业和开源没有模糊地带。
多语言 SDK 官方提供 TypeScript、Go、Python、Rust 四套 SDK——不管你团队用什么技术栈,都能集成。这对需要把 MCP 能力嵌入自家产品的团队很友好。
企业级安全功能
Team 以上版本带 Semantic WAF——不仅能鉴权,还能检查每个 tools/call 的参数有没有恶意注入。在 AI Agent 越权攻击越来越常见的今天,这个功能不是锦上添花,是必需品。
流量可观测 Dashboard 上能看到每次调用的工具名、延迟、状态码。调试阶段这个功能省大事了——不用再抓包猜问题。
写在最后
我一直认为,MCP 协议本身是个好东西,但它目前最大的瓶颈不是能力不够,而是连接和共享太麻烦。每个团队都在重复造轮子:写端口转发脚本、配 Nginx、折腾认证。
MCPZERO 解决的就是这个"最后一公里"的问题。它不发明新协议,不做魔改,就是在现有 MCP 生态上加了一层 engineering-friendly 的基础设施。这正是开源工具该有的样子——解决一个具体问题,解决得漂亮。
如果你正在把 MCP 引入团队协作场景,值得给 MCPZERO 一个周末的时间试试看。毕竟,让 AI 工具链从「我本地能跑」到「团队都能用」,差的就是一个靠谱的网关。
p.s. 免费版永久可用,没有时间限制。打开浏览器去 https://mcpzero.io 注册就行。
Tags: MCP, MCPZERO, 开源, AI代理, 网关, 团队协作, Cursor, Claude