StackLok开源ToolHive,用Kubernetes简化MCP服务器编排!解决LLM应用访问数据难题。利用K8s的StatefulSets、RBAC和网络策略,安全管理MCP实例,实现隔离。Anthropic力推MCP,集成Jira、Confluence等服务,Agentic AI社区狂喜!
译自:ToolHive Simplifies MCP Server Orchestration with Kubernetes
作者:Joab Jackson
StackLok 的工作人员开发了一个名为 ToolHive 的命令行实用程序,通过使用 Kubernetes 和 容器,来安全地管理您可能在内部运行的 多上下文协议 (MCP) 服务器。
现在,每个人都在构建 MCP,这允许基于大型语言模型 (LLM) 的应用程序从应用程序访问数据和服务。
然而,设置多个 MCP 服务器可能会导致管理多个软件副本时常遇到的常见问题。
“[设置和维护 MCP 服务器涉及在一个快速变化的领域中导航,该领域具有非常有限的工具、文档和支持,”Craig McLuckie 写道,他是 Kubernetes 的共同创建者之一,也是 StackLok 的首席执行官兼联合创始人,StackLok 是一家以开发者为中心的软件供应链服务提供商,在一篇介绍 ToolHive 的博文中写道。
ToolHive 是一个开源项目,采用 Apache 2.0 许可证。
“[开发人员在安装和配置这些服务器时可能会遇到复杂性,以及管理更新和确保不同版本之间的兼容性,”McLuckie 继续说道。
每个 MCP 服务器都依赖于外部软件包,例如来自 Python 或 Node.js 生态系统的软件包,这些软件包必须在推出新的服务器实例时进行维护和存在。
如果您希望用户登录,那么还必须进行密钥管理。对于跨多个服务器的强大隔离来说,这也是一个好的安全想法(如果不是组织强制要求的话)。必须限制用户只能访问他们应该有权访问的服务器。
简而言之,如果 MCP 服务器没有统一部署,那么由此产生的多样性将成为管理的难题。
幸运的是,McLuckie 指出,我们已经拥有一整套用于大规模部署和管理应用程序的工具。Kubernetes 及其相关的支持技术集合,使其成为管理 MCP 服务器的自然选择。
Chris Burns 是 Stacklok 的站点可靠性工程师,他在另一篇介绍 ToolHive 的博文中写道:“容器化和编排功能为隔离和管理 MCP 实例提供了强大的基础。”
他写道:“Kubernetes 的内置功能,例如基于角色的访问控制 (RBAC)、网络策略和密钥管理,解决了阻止企业的安全问题。”
“此外,Kubernetes 生态系统,包括用于监控、日志记录和自动化部署的工具,为 MCP 服务器提供了一个全面且安全的操作环境。”
ToolHive 可以成为 Kubernetes 和 AI 代理世界之间的连接组织。
ToolHive 用 Go 编写,打包为单个二进制文件,可以从命令行运行。从事该项目工作的团队已经在 GitHub 上提交了 26 个版本,该项目已获得 192 颗星。
为了运行 MCP 服务器集合,ToolHive 使用 Kubernetes 的 StatefulSets,这是一种用于管理有状态应用程序的工作负载 API 对象。应用程序在 YAML 清单中定义,并为了统一性而保存在 开放容器计划格式的容器中。一旦 StatefulSet 和 pod 启动并运行,它们就可以轻松配置。
AI服务提供商Anthropic去年11月推出了MCP作为一个开放标准,旨在将AI助手连接到外部内容源。
虽然最初的版本旨在与基于LLM的服务Claude对接,但Anthropic标榜MCP是一个开放标准,新兴的Agentic AI社区迅速接受了这个想法。
本周早些时候,Anthropic演示了MCP如何在更大的环境中使用。该公司为其自身用户推出了一项名为Integration的新功能,该功能使用MCP将第三方服务融合到其自身的Claude Desktop中。
最初,有10个商业服务被集成到桌面中:Atlassian的Jira和Confluence,Zapier,Cloudflare,Intercom,Asana,Square,Sentry,PayPal,Linear和Plaid。