云原生MCP服务器

一个高性能的模型上下文协议(MCP)服务器,用于Kubernetes和云原生基础设施管理,提供16个集成服务和381个工具。

  • by mahmut-Abi
  • Go
  • 混合部署
  • 2 星标
  • 更新于
在 GitHub 查看 mahmut-Abi/cloud-native-mcp-server

使用说明

云原生MCP服务器

🇨🇳 中文文档 | 🇬🇧 英语

用于Kubernetes和云原生基础设施管理的高性能模型上下文协议(MCP)服务器,具有16个集成服务和381个工具。


特性

  • 16综合服务:Kubernetes、Grafana、Prometheus、Loki、Kibana、Elasticsearch、Helm、Argo CD、Alertmanager、Jaeger、Nacos、Langfuse、Sentry、Dify、OpenTetry、实用程序
  • 381 MCP工具:基础设施运营的综合工具集
  • 内置MCP提示:为代理预先编写的故障排除和补救工作流程
  • 多协议支持:SSE和可流式传输的http模式
  • 智能缓存:具有TTL支持的LRU缓存,可实现最佳性能
  • 性能优化:JSON编码池、响应大小控制、智能限制
  • 增强身份验证:API密钥(具有复杂性要求)、承载令牌(JWT验证)、基本认证
  • 秘密管理:安全的凭证存储和轮换
  • 输入消毒:防止注射攻击
  • 审计日志:跟踪所有工具调用和操作
  • LLM优化:摘要工具和分页以防止上下文溢出

LLM工具调用技巧

  • 首选摘要和分页工具,然后仅在需要时切换到完整细节工具。
  • 当参数表示对象或列表时,发送结构化JSON对象和数组;为了兼容性,许多处理程序仍然接受传统的JSON字符串。
  • Prometheus和跟踪时间字段使用RFC3339时间戳。
  • 对于Kubernetes,省略 namespace 对于集群范围的资源,并将其包含在命名空间资源中。
  • 一些MCP客户端包装器已经将工具结果解包为对象。调用前检查原始返回值 JSON.parse(...).
  • 对于Kibana,一些处理程序接受两者 camelCase 和 snake_case 参数别名,但模式名称仍然是首选形式。

服务概述

服务 工具 说明
Kubernetes 34 核心容器编排和资源管理
舵 34 应用程序包管理和部署
石墨烯 55 可视化、监控仪表板和警报
普罗米修斯 20 指标收集、查询和监控
洛基 7 LogQL查询、标签发现和流检查
基巴纳 73 日志分析、可视化和数据探索
ArgoCD 7 Argo CD应用、项目、集群和舱单检查
弹性搜索 12 日志存储、搜索和数据索引
警报管理器 16 警报规则管理和通知
猎手 8 分布式跟踪和性能分析
纳科斯 9 Nacos命名空间、配置、服务发现和节点检查
浪涌 37 LLM可观察性、提示、跟踪、分数、数据集、模型、指标、项目、成员资格和API密钥管理
哨兵 9 错误监控、问题分类和问题事件检查
迪菲 46 Dify控制台管理(应用程序、工作流、数据集)和服务API(聊天、完成、对话)
开放遥测 12 收集器运行状况、配置、管道分析和遥测诊断
公用事业 6 通用工具

总计:381件工具


快速开始

二进制

# Download the latest release
curl -LO https://github.com/mahmut-Abi/cloud-native-mcp-server/releases/latest/download/cloud-native-mcp-server-linux-amd64
chmod +x cloud-native-mcp-server-linux-amd64

# Run in SSE mode (default)
./cloud-native-mcp-server-linux-amd64 --mode=sse --addr=0.0.0.0:8080

码头工人

docker run -d \
  --name cloud-native-mcp-server \
  -p 8080:8080 \
  -v ~/.kube:/root/.kube:ro \
  mahmutabi/cloud-native-mcp-server:latest

来源

git clone https://github.com/mahmut-Abi/cloud-native-mcp-server.git
cd cloud-native-mcp-server

make build
./cloud-native-mcp-server --mode=sse --addr=0.0.0.0:8080

API终点

SSE模式

端点 描述
/api/aggregate/sse 所有服务(推荐)
/api/kubernetes/sse Kubernetes服务
/api/helm/sse Helm服务
/api/grafana/sse Grafana服务
/api/prometheus/sse 普罗米修斯服务
/api/loki/sse 洛基服务
/api/kibana/sse Kibana服务
/api/elasticsearch/sse Elasticsearch服务
/api/alertmanager/sse 警报管理器服务
/api/jaeger/sse Jaeger服务
/api/argocd/sse Argo CD服务
/api/nacos/sse Nacos服务
/api/langfuse/sse 廊坊服务
/api/sentry/sse 哨兵服务
/api/opentelemetry/sse 开放遥测服务
/api/utilities/sse 公用事业服务

流式HTTP模式

使用 --mode=streamable-http 暴露MCP可流式传输的HTTP端点,例如:

  • /api/aggregate/streamable-http

SSE烟雾测试

验证SSE握手和 initialize 与正在运行的服务器端到端:

# without auth
make sse-smoke BASE_URL=http://127.0.0.1:8080

# with API key auth
API_KEY=your-key make sse-smoke BASE_URL=http://127.0.0.1:8080

文档


构建

# Build for current platform
make build

# Run tests
make test

# Code linting
make lint

# Docker build
make docker-build

贡献

欢迎投稿!请阅读我们的投稿指南并提交pull请求。


许可证

MIT许可证-请参阅 许可证 了解详情。