这是一个轻量级且高效的服务器,实现了亚马逊弹性 Kubernetes 服务 (EKS) 的模型上下文协议。它为 GenAI 代理与 EKS 集群的交互提供了标准接口,极大地提升了交互的便利性和规范性。
文档未提供安装步骤,暂不展示此章节。
文档未提供使用示例代码,暂不展示此章节。
以下是项目的完整文件结构:
eks-mcp-server/
├── main.py # 主程序
├── app/
│ ├── schemas/ # 数据验证模式
│ ├── models/ # 业务模型
│ └── endpoints/ # API 端点处理
├── config/ # 配置管理
├── tests/ # 测试用例
└── requirements.txt # 依赖管理
以下是服务器提供的所有 API 端点:
GET http://3.90.45.69:8000/healthGET http://3.90.45.69:8000/mcp/v1/operations以下是服务器支持的所有 EKS 操作:
list_clusters:列出所有 EKS 集群。describe_cluster:获取指定集群的详细信息。list_nodegroups:列出指定集群中的所有节点组。create_nodegroup:创建新的节点组。delete_nodegroup:删除指定的节点组。submit_job:在 EKS 集群中提交作业。list_jobs:列出所有已提交的作业。describe_job:获取指定作业的详细信息。cancel_job:取消正在运行的作业。使用 AWS SDK 进行认证,需要在应用程序中配置有效的 AWS 凭据。具体步骤如下:
import boto3
session = boto3.Session(region_name="us-east-1")
client = session.client('eks')
将 ECS 任务角色添加到 EKS 集群的 aws-auth ConfigMap 中。具体步骤如下:
echo $TASK_ROLE_ARN
- groups: []
kind: User
name: task.amazonaws.com
permissions:
- all
userArn: $TASK_ROLE_ARN
该服务器当前在 ECS 上运行,并可通过以下地址访问:
http://3.90.45.69:8000http://3.90.45.69:8000/healthhttp://3.90.45.69:8000/mcp/v1/operations在 EKS 集群中包含以下测试命名空间:
mcp-test-namespace:包含一个带有 2 个 nginx 副本的部署mcp-test-namespace-2:包含一个带有 3 个 nginx 副本的部署文档未提供技术实现细节,暂不展示此章节。
本项目采用 MIT 许可证。