详细介绍
MCPJungle 是一个自托管的模型上下文协议(MCP)网关,旨在集中管理多个 MCP 服务器,为 AI 代理提供统一的工具访问接口。它支持多种传输协议,包括 STDIO 和 Streamable HTTP,并提供工具分组、访问控制、可观测性等功能,适用于开发和生产环境。
核心功能
MCPJungle 提供以下核心功能,帮助用户集中管理 MCP 服务器并提升 AI 代理的工具访问效率:
- 集中式 MCP 服务器注册:提供统一的注册中心,管理所有 MCP 服务器及其工具。
- 多传输协议支持:支持 STDIO 和 Streamable HTTP 两种传输协议,兼容多种 MCP 服务器。
- 工具分组管理:允许创建工具组,仅向特定客户端暴露选定的工具子集,提升性能和安全性。
- 企业级访问控制:在生产模式下提供细粒度的访问控制和安全策略,确保只有授权客户端可以访问特定服务器。
- 可观测性支持:集成 OpenTelemetry,提供 Prometheus 兼容的监控指标,便于监控和性能分析。
安装方法
MCPJungle 可通过 Homebrew 或 Docker 安装,支持本地开发和生产部署。
brew install mcpjungle/mcpjungle/mcpjungle此外,MCPJungle 提供了 Docker 镜像,适用于运行注册表服务器:
docker pull mcpjungle/mcpjungle使用 Docker Compose 快速启动服务器:
curl -O https://raw.githubusercontent.com/mcpjungle/MCPJungle/refs/heads/main/docker-compose.yaml
docker compose up -d对于生产环境,推荐使用 docker-compose.prod.yaml 并指定 stdio 标签的镜像以支持 STDIO 服务器。
使用方法
MCPJungle 提供了丰富的 CLI 命令,支持注册、管理、调用和监控 MCP 服务器。
mcpjungle register --name context7 --url https://mcp.context7.com/mcp注册一个 MCP 服务器后,可以通过以下命令列出所有可用工具:
mcpjungle list tools调用特定工具的示例:
mcpjungle invoke calculator__multiply --input '{"a": 100, "b": 50}'创建工具组的示例:
mcpjungle create group -c ./claude-tools-group.json工具组配置文件示例如下:
{
"name": "claude-tools",
"description": "This group only contains tools for Claude Desktop to use",
"included_tools": [
"filesystem__read_file",
"deepwiki__read_wiki_contents",
"time__get_current_time"
]
}使用场景
MCPJungle 适用于以下场景:
- 开发人员需要集中管理多个 MCP 服务器,简化工具访问。
- AI 代理需要通过统一接口访问多个工具,提高开发效率。
- 组织需要集中监控和管理所有 MCP 服务器的调用情况,确保安全性和性能。
- 生产环境中需要细粒度的访问控制和安全策略,防止未授权访问。
注意事项
使用 MCPJungle 时需注意以下事项:
- MCPJungle 目前处于 Beta 阶段,功能仍在不断完善。
- 每次调用 STDIO 服务器时会创建新进程,有一定性能开销。
- 目前不支持 OAuth 认证流程,相关功能正在开发中。
- 在生产模式下,只有管理员可以创建工具组。
MCPJungle 为 AI 代理和开发人员提供了一个强大而灵活的 MCP 管理网关,帮助用户集中管理工具、提升安全性和性能。