关于 mcp-ephemeral-k8s
mcp-ephemeral-k8s 是用于在 Kubernetes 上创建临时 MCP 服务的 Python 库,也可作为 MCP 服务运行。它支持 Node.js 和 Python 运行时,并提供 SSE 连接及本地或集群内 Kubernetes 配置。
主要功能
- 01在 Kubernetes 上创建临时 MCP 服务
- 02支持通过 npx 使用 Node.js、通过 uvx 使用 Python
- 03通过 SSE 连接
- 04使用本地 kubeconfig 或集群内配置
- 05可作为 MCP 服务运行
适用场景
- 01在 Kubernetes 中启动短期 MCP 服务实例
- 02通过 SSE 暴露 Node.js 或 Python MCP 运行时
- 03使用本地或集群内 Kubernetes 配置运行服务
MCP 相关
它会在 Kubernetes 上创建临时 MCP 服务,并通过 SSE 向 MCP 客户端提供连接。它本身也可作为 MCP 服务运行。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-ephemeral-k8s
一个 Python 库,可使用服务器发送事件(SSE)在 Kubernetes 上启动临时 Model Context Protocol(MCP)服务。
- Github:https://github.com/BobMerkus/mcp-ephemeral-k8s/
- 文档:https://BobMerkus.github.io/mcp-ephemeral-k8s/docs/
功能
- 支持多种运行时:
- Node.js(通过
npx) - Python(通过
uvx)
- Node.js(通过
- 可与 mcp-proxy 配合使用,支持
uvx或npx运行时 - 支持本地 kubeconfig 和集群内配置
- 可作为 MCP 服务运行
用法
运行 MCP 服务
uvx mcp-ephemeral-k8s
使用该库
import asyncio
from mcp_ephemeral_k8s import KubernetesSessionManager, presets
async def main():
async with KubernetesSessionManager() as session_manager:
mcp_server = await session_manager.create_mcp_server(
presets.K8S_MCP_SERVER, wait_for_ready=True, expose_port=True
)
print(mcp_server.sse_url)
if __name__ == "__main__":
asyncio.run(main())
Job 'mcp-ephemeral-k8s-proxy-1762291156-x17zuayy' in unknown state, waiting...
http://mcp-ephemeral-k8s-proxy-1762291156-x17zuayy.default.svc.cluster.local:8080/sse
安装
前置条件
选项 1:使用 uvx(推荐)
uvx mcp-ephemeral-k8s
要连接到 MCP 服务,请使用以下配置:
{
"mcp-ephemeral-k8s": {
"url": "http://localhost:8000/sse",
"transport": "sse"
}
}
选项 2:作为 Python 包安装
pip install mcp-ephemeral-k8s
mcp-ephemeral-k8s
选项 3:使用 Helm Chart
要安装 Helm chart,请运行:
helm repo add mcp-ephemeral-k8s https://BobMerkus.github.io/mcp-ephemeral-k8s/
helm repo update
helm install mcp-ephemeral-k8s mcp-ephemeral-k8s/mcp-ephemeral-k8s
要升级 Helm chart,请运行:
helm upgrade -i mcp-ephemeral-k8s mcp-ephemeral-k8s/mcp-ephemeral-k8s
要安装特定版本,请运行:
helm install mcp-ephemeral-k8s mcp-ephemeral-k8s/mcp-ephemeral-k8s --version <replace-with-version>
要卸载 Helm chart,请运行:
helm uninstall mcp-ephemeral-k8s
选项 4:从源代码安装
-
克隆仓库
git clone https://github.com/BobMerkus/mcp-ephemeral-k8s.git cd mcp-ephemeral-k8s -
设置开发环境
make install -
运行 pre-commit hooks
make check -
运行测试
make test -
构建 Docker 镜像
make docker-build-local make docker-build-local-proxy -
将镜像加载到集群
kind load docker-image ghcr.io/bobmerkus/mcp-ephemeral-k8s:latest kind load docker-image ghcr.io/bobmerkus/mcp-ephemeral-k8s-proxy:latest -
安装 Helm chart
helm upgrade -i mcp-ephemeral-k8s charts/mcp-ephemeral-k8s --set image.tag=latest -
转发 MCP 服务端口
kubectl port-forward svc/mcp-ephemeral-k8s 8000:8000 -
访问 FastAPI 服务
npx @modelcontextprotocol/inspector --sse http://localhost:8000/sse
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。