使用说明
项目简介
AWS CodePipeline MCP服务器是一个基于Model Context Protocol (MCP) 构建的应用后端,旨在通过标准化的接口,向LLM客户端(如Windsurf和Cascade)提供AWS CodePipeline服务的上下文信息和操作能力。它允许用户通过自然语言指令,借助LLM客户端,实现对AWS CodePipeline流水线的管理、监控和自动化。
主要功能点
- 流水线信息查询: 列出所有CodePipeline流水线,获取指定流水线的状态和详细定义。
- 流水线执行管理: 查看流水线执行历史,触发新的流水线执行,停止正在运行的执行。
- 人工审批处理: 审批或拒绝人工审批操作,允许LLM介入人工决策流程。
- 阶段重试: 重试失败的流水线阶段,提高流水线稳定性和自动化修复能力。
- 日志和指标查看: 获取流水线执行日志,查看流水线性能指标,辅助问题排查和性能优化。
- Webhook集成: 创建Webhook,实现基于事件的流水线自动触发,例如代码提交触发CI/CD。
- 资源标签管理: 为流水线资源添加或更新标签,方便资源分类和管理。
安装步骤
-
克隆仓库:
git clone https://github.com/cuongdev/mcp-codepipeline-server.git cd mcp-codepipeline-server -
安装依赖:
npm install -
配置环境变量:
- 复制 '.env.example' 文件并重命名为 '.env'。
- 编辑 '.env' 文件,填入您的AWS凭证和区域信息。
AWS_REGION=您的AWS区域 (例如: us-east-1) AWS_ACCESS_KEY_ID=您的AWS访问密钥ID AWS_SECRET_ACCESS_KEY=您的AWS秘密访问密钥 PORT=服务器端口号 (默认: 3000)
请注意: '.env' 文件包含敏感信息,请勿提交到版本控制系统。
-
构建项目:
npm run build
服务器配置
对于MCP客户端(如Windsurf),您需要配置MCP服务器的连接信息。以下是一个 'mcp_config.json' 示例配置,用于Windsurf客户端:
{ "mcpServers": { "codepipeline": { "command": "npx", "args": [ "-y", "path/to/mcp-codepipeline-server/dist/index.js" ], "env": { "AWS_REGION": "您的AWS区域 (例如: us-east-1)", "AWS_ACCESS_KEY_ID": "您的AWS访问密钥ID", "AWS_SECRET_ACCESS_KEY": "您的AWS秘密访问密钥" } } } }
配置参数说明:
- server name (codepipeline): MCP服务器名称,Windsurf客户端通过此名称引用该服务器。您可以自定义名称。
- command (npx): 启动MCP服务器的命令,通常使用 'npx' 执行Node.js程序。
- args: 启动命令的参数列表。
- "-y": 'npx' 参数,自动确认执行。
- "path/to/mcp-codepipeline-server/dist/index.js": MCP服务器入口文件路径,请替换为实际路径。
- env: 启动命令的环境变量。
- AWS_REGION: AWS区域,必须与您的CodePipeline所在的区域一致。
- AWS_ACCESS_KEY_ID: AWS访问密钥ID,用于AWS API认证。
- AWS_SECRET_ACCESS_KEY: AWS秘密访问密钥,用于AWS API认证。
请根据您的实际安装路径和AWS配置,修改上述 'mcp_config.json' 文件。 Windsurf客户端会读取此配置文件,并根据配置信息连接到MCP服务器。
基本使用方法
-
启动服务器:
npm start或在开发模式下使用自动重启:
npm run dev -
在Windsurf中使用:
- 确保Windsurf已正确配置 'mcp_config.json' 文件,并已重启Windsurf加载配置。
- 在Windsurf中,可以使用自然语言指令与AWS CodePipeline进行交互,例如:
- "列出所有我的 CodePipeline 流水线"
- "显示 'production-deploy' 流水线的当前状态"
- "触发 'test-build' 流水线"
- "获取 'data-processing' 流水线的指标"
- "为 'frontend-deploy' 流水线创建 webhook"
Windsurf (或 Cascade) 会将这些自然语言请求转换为对MCP服务器的工具调用,从而实现对AWS CodePipeline的管理操作。
信息
分类
开发者工具