stacklok/toolhive
GitHub: stacklok/toolhive
ToolHive 是一个 MCP 服务器全生命周期管理平台,通过容器化隔离和统一网关实现安全、可扩展的 AI 工具部署与治理。
Stars: 1636 | Forks: 186
[][release] [][ci]
[][coveralls]
[][license]
[][stars] [][discord]
# ToolHive - 简化并保护 MCP 服务器
**运行任何模型上下文协议 (MCP) 服务器:安全、即时、随处。**
ToolHive 包含在生产环境中使用 MCP 服务器所需的一切。无需自己构建或组合组件,使用 ToolHive 的 Registry Server、Runtime、Gateway 和 Portal 即可快速安全地启动并运行。
ToolHive 让您完全掌控您的 MCP 资产。在几秒钟内集成流行的客户端,并通过单击或命令在锁定的容器中部署经过预先审查的 MCP 服务器。ToolHive 提供桌面应用程序、Web 应用程序、CLI 和 Kubernetes operator。
## 为什么选择 ToolHive?
- **即时部署:** 使用 Docker 或 Kubernetes,通过单击或命令启动任何 MCP 服务器。
- **默认安全:** 每个服务器都在隔离的容器中运行,仅拥有所需的权限。Secrets 均经过安全管理,绝不以明文形式存储。
- **随处运行:** 使用 UI 和 CLI 进行本地开发,或使用 Kubernetes Operator 进行生产和大规模部署。
- **无缝集成:** ToolHive 自动配置流行的客户端,如 GitHub Copilot、Cursor、VS Code Server 等。
|
|
## 快速链接
- 📥 [下载](https://toolhive.dev/download/)
- 📚 [文档](https://docs.stacklok.com/toolhive/)
- 🚀 快速入门指南:
- [桌面应用程序](https://docs.stacklok.com/toolhive/tutorials/quickstart-ui)
- [CLI](https://docs.stacklok.com/toolhive/tutorials/quickstart-cli)
- [Kubernetes Operator](https://docs.stacklok.com/toolhive/tutorials/quickstart-k8s)
- 💬 [Discord](https://discord.gg/stacklok)
- 🤝 [贡献](#contributing)
## 核心功能
**ToolHive 架构:Gateway、Registry Server、Runtime 和 Portal**
ToolHive 基于[模块化架构](./docs/arch/README.md)构建,旨在简化安全的 MCP 服务器管理和集成。以下是主要组件的工作原理。
### 🔌 Gateway
定义专用端点,您的团队可以通过这些端点安全高效地访问工具。
- 使用确定性工作流引擎将多个工具编排为虚拟 MCP
- 定义访问策略和网络端点
- 集中控制安全策略、身份验证、授权、审计等
- 与您的 IdP 集成以实现 SSO(兼容 OIDC/OAuth)
- 自定义和过滤工具及描述,以提高性能并减少 token 使用量
- 与 Claude Desktop、Cursor、VS Code 和 VS Code Server 等本地客户端连接
### 📦 [Registry Server](https://github.com/stacklok/toolhive-registry-server)
策划受信任服务器的目录,您的团队可以快速发现并部署这些服务器。
- 与官方 MCP registry 集成
- 添加自定义 MCP 服务器
- 根据角色或用例对服务器进行分组
- 通过 API 驱动的界面管理您的 registry(或嵌入现有工作流以实现无缝集成和治理)
- 通过内置安全控制验证来源并对服务器进行签名
- 预设配置和权限,实现流畅的用户体验
### ⚙️ Runtime
在本地或 Kubernetes 集群中部署、运行和管理具有安全防护措施的 MCP 服务器。
- 通过 Kubernetes 在云中部署 MCP 服务器,实现企业级可扩展性
- 通过 Docker 或 Podman 在本地运行 MCP 服务器
- 安全地代理远程 MCP 服务器以实现统一管理
- Kubernetes Operator 用于集群和资源管理
- 利用 OpenTelemetry 和 Prometheus 进行监控和审计日志记录
### 💻 Portal
为企业中的开发人员和知识工作者简化 MCP 的采用
- 跨平台[桌面应用程序](https://github.com/stacklok/toolhive-studio)和基于浏览器的[云端 UI](https://github.com/stacklok/toolhive-cloud-ui)
- 让管理员能够轻松策划 MCP 服务器和工具
- 自动化服务器发现
- 一键安装 MCP 服务器
- 兼容数百种 AI 客户端
### 协同工作原理
1. **管理员** 在 **Registry** 中策划和组织 MCP 服务器,配置访问权限和策略。
2. **用户** 从 **Portal** 发现并请求 MCP 服务器,ToolHive 编排安装和访问。
3. **Runtime** 在本地和云环境中安全地部署和管理 MCP 服务器,与现有 SDLC 工作流无缝集成,导出分析数据,并执行细粒度的访问控制。
4. **Gateway** 处理所有入站流量,保护上下文和凭据安全,优化工具选择,并应用组织策略。
## 灵活部署
### 桌面体验
个人开发者可以在几分钟内通过桌面 UI 或 CLI 入门,然后在企业环境中应用相同的概念。
**主要特性:**
- 从容器镜像运行任何 MCP 服务器,或从常见的包管理器动态构建一个
- 使用简单的本地工具管理加密 secrets 并控制网络隔离
- 使用内置工具(如官方 MCP Inspector)测试和验证 MCP 服务器
- 使用 MCP Optimizer 优化 token 使用量和工具执行
**通过 UI 入门:**[快速入门](https://docs.stacklok.com/toolhive/tutorials/quickstart-ui),[操作指南](https://docs.stacklok.com/toolhive/guides-ui)
**通过 CLI 入门:**[快速入门](https://docs.stacklok.com/toolhive/tutorials/quickstart-cli),[操作指南](https://docs.stacklok.com/toolhive/guides-cli),[命令参考](https://docs.stacklok.com/toolhive/reference/cli/thv)
[**MCP 指南**](https://docs.stacklok.com/toolhive/guides-mcp):了解如何使用 ToolHive 运行常见的 MCP 服务器
### Kubernetes Operator
团队和组织使用熟悉的 Kubernetes 工作流集中管理 MCP 服务器和 registry。
**主要特性:**
- 为 MCP 服务器、registry 和其他 ToolHive 组件提供 Custom Resource Definitions
- 通过基于容器的隔离和多命名空间支持实现安全执行
- 自动化服务创建和发现,并通过 ingress 集成实现安全访问
- 企业级的安全性和可观测性:OIDC/OAuth SSO、安全 token 交换、审计日志、OpenTelemetry 和 Prometheus 指标
- 混合 registry server:从上游 registry 策划,动态注册本地 MCP 服务器,或代理受信任的远程服务
**入门:**[快速入门](https://docs.stacklok.com/toolhive/tutorials/quickstart-k8s),[操作指南](https://docs.stacklok.com/toolhive/guides-k8s),[CRD 参考](https://docs.stacklok.com/toolhive/reference/crd-spec),[示例清单](./examples/operator/)
### 混合模式
ToolHive 为团队和企业提供的完整解决方案支持跨所有环境的 MCP 服务器:在开发人员机器上、在您的 Kubernetes 集群内,或由受信任的 SaaS 提供商在外部托管。
最终用户通过安全的、基于浏览器的云端 UI 访问经批准的 MCP 服务器。开发人员还可以使用 ToolHive CLI 或桌面 UI 进行连接,以实现高级集成和测试工作流。
企业团队还可以利用 ToolHive 将 MCP 服务器集成到自定义内部工具、Agentic 工作流或基于聊天界面中,使用相同的 runtime 和访问控制。
## 贡献
我们欢迎社区的贡献和反馈!
- 🐛 [报告问题](https://github.com/stacklok/toolhive/issues)
- 💬 [加入我们的 Discord](https://discord.gg/stacklok)
如果您有想法、建议或想参与其中,请查看我们的贡献指南或提出问题。加入我们,让 ToolHive 变得更好!
|
贡献到 CLI、API 和 Kubernetes Operator(此仓库):
- 🤝 [贡献指南](./CONTRIBUTING.md)
- 📖 [开发者指南](./docs/README.md)
- 📐 [架构文档](./docs/arch/README.md)
贡献到 UI、registry 和文档:
- 💻 [桌面 UI 仓库](https://github.com/stacklok/toolhive-studio)
- ☁️ [云端 UI 仓库](https://github.com/stacklok/toolhive-cloud-ui)
- 📦 [ToolHive registry server 仓库](https://github.com/stacklok/toolhive-registry-server)
- 🛠️ [ToolHive 内置 registry](https://github.com/stacklok/toolhive-catalog)
- 📚 [文档仓库](https://github.com/stacklok/docs-website)
|
|
## 许可证
本项目基于 [Apache 2.0 License](./LICENSE) 授权。
标签:AI基础设施, AI网关, Cursor, DevSecOps, Docker安全, EVTX分析, GitHub Copilot, Kubernetes Operator, LLM集成, MCP服务器, Model Context Protocol, VS Code, 上游代理, 大模型工具链, 子域名突变, 容器化部署, 应用封装, 微服务网关, 日志审计, 服务器管理, 桌面应用, 沙箱隔离, 注册表服务, 生产环境就绪, 用户代理, 知识图谱, 自动化运维, 自定义请求头, 请求拦截