Token导航 LogoToken导航TokenDH.com
Eks MCP Server New logo
运维云端stdio官方级别未说明来源级核验

Eks MCP Server New

MCP Server

一个轻量级高效的服务器,实现了EKS操作的模型上下文协议,为GenAI代理提供与EKS集群交互的标准化接口。

工具数

12

提示词数

0

GitHub Stars

0

资源数

0
容器化部署Python自动化运维

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

mahmoudsalah84

提供方

mahmoudsalah84

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

EKS模型上下文协议(MCP)服务器

一个轻量级、高效的服务器,为EKS操作实现模型上下文协议。该服务器为GenAI代理与EKS集群交互提供了一个标准化的接口。

特性

  • 响应时间快,超时处理得当
  • 全面的EKS运营支持
  • Kubernetes资源管理(Pod、服务、部署等)
  • EKS集群的多种身份验证方法
  • 强大的错误处理和日志记录
  • Docker容器化,易于部署
  • ECS部署支持

项目结构

  • main.py:使用FastAPI实现主服务器
  • eks_operations.py:EKS API操作实现
  • k8s_operations.py:Kubernetes API操作实现
  • k8s_operations_sdk_v4.py:基于SDK的Kubernetes操作实现
  • k8s_operations_kubectl.py:基于Kubectl的Kubernetes操作,具有适当的身份验证
  • k8s_auth_config.py:Kubernetes的身份验证配置
  • direct_k8s_client.py:直接实现Kubernetes API客户端
  • test_*.py:针对不同实现的各种测试脚本
  • DockerfileDockerfile.amd64:Docker配置文件
  • docker-compose.yml:Docker编写配置
  • requirements.txt:Python依赖关系
  • client/:客户端实现目录(客户端自述)
  • ecs-deployment/:ECS部署脚本和配置(ECS部署自述)

API终点

  • GET /health -健康检查端点
  • GET /mcp/v1/operations -列出可用操作
  • POST /mcp/v1/query -执行MCP操作

支持的操作

EKS集群操作

  • list_clusters -列出某个地区的EKS集群
  • describe_cluster -获取有关群集的详细信息
  • list_nodegroups -列出集群的节点组
  • describe_nodegroup -获取节点组的详细信息

Kubernetes操作

  • list_namespaces -列出Kubernetes命名空间
  • list_pods -在命名空间中列出Pod
  • describe_pod -获取pod的详细信息
  • get_deployments -列出命名空间中的部署
  • describe_deployment -获取有关部署的详细信息
  • get_services -在命名空间中列出服务
  • describe_service -获取有关服务的详细信息
  • get_pod_logs -从pod获取日志

身份验证方法

服务器支持EKS集群的多种身份验证方法:

  1. AWS SDK身份验证:使用AWS SDK与EKS进行身份验证并获取集群信息
  2. Kubectl与生成的Kubeconfig:创建临时kubeconfig文件并使用kubectl
  3. 直接调用Kubernetes API:对Kubernetes API服务器进行直接的API调用

当前的实现使用具有适当身份验证的Kubectl方法,这提供了最可靠的结果。

入门指南

先决条件

  • 码头工人
  • AWS凭据(用于生产)
  • Python 3.8+(用于本地开发)

本地运行

# Install dependencies
pip install -r requirements.txt

# Run the server
python main.py

使用Docker运行

# Build the Docker image
docker build -t eks-mcp-server .

# Run the container
docker run -d -p 8000:8000 --name mcp-server eks-mcp-server

使用Docker Compose运行

# Start the server
docker-compose up -d

# Stop the server
docker-compose down

部署到ECS

请参阅 ECS部署自述 详细说明。

# Deploy to ECS
cd ecs-deployment
./deploy.sh

# Update existing ECS deployment
./update-service.sh

测试

使用附带的测试脚本验证服务器是否正常工作:

# Basic tests
python test_mcp.py

# Comprehensive operation tests
python test_mcp_operations.py

# Test namespace integration
python test_mcp_namespace.py
python test_mcp_namespace_2.py

# Test kubectl integration
python test_kubectl_operations.py

# Test SDK v3 operations
python test_v3_operations.py

# Test SDK v4 operations
python test_v4_operations.py

客户端使用情况

该项目包括一个客户端实现,该实现使用Amazon Bedrock与MCP服务器进行对话交互。请参阅 客户端自述 了解详情。

# Run the client
cd client
python mcp_chat_client_v6.py

请求示例

列出集群

curl -X POST http://localhost:8000/mcp/v1/query \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
    "operation": "list_clusters",
    "parameters": {
      "region": "us-east-1"
    }
  }'

列出Pod

curl -X POST http://localhost:8000/mcp/v1/query \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your-api-key" \
  -d '{
    "operation": "list_pods",
    "parameters": {
      "cluster_name": "my-cluster",
      "namespace": "default",
      "region": "us-east-1"
    }
  }'

建筑

该服务器使用FastAPI构建,并使用同步和异步操作的组合来提高性能。它包括:

  • AWS API调用的超时处理
  • EKS集群的多种身份验证方法
  • 综合录井
  • 响应时间跟踪
  • 带有详细错误代码的错误处理

EKS身份验证

为了使服务器能够与EKS集群进行身份验证,需要将ECS任务角色添加到EKS集群的aws-auth ConfigMap中。请参阅 ECS部署自述 详细说明。

当前部署

服务器当前已部署到ECS,可在以下位置访问:

  • 端点:http://3.90.45.69:8000
  • 健康检查:http://3.90.45.69:8000/health
  • 操作发现:http://3.90.45.69:8000/mcp/v1/operations

测试命名空间

该项目包括EKS集群中的测试命名空间:

  • mcp-test-namespace:包含一个带有2个nginx Pod的部署
  • mcp-test-namespace-2:包含3个nginx Pod的部署

许可证

麻省理工学院

目录标签

目录标签

容器化部署Python自动化运维EKS管理本地部署Kubernetes接口AWS服务集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

12

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP