Servidor MCP de AWS CodePipeline
Este es un servidor de Protocolo de Contexto de Modelo (MCP) que se integra con AWS CodePipeline, lo que le permite administrar sus pipelines mediante Windsurf y Cascade. El servidor proporciona una interfaz estandarizada para interactuar con los servicios de AWS CodePipeline.
Autor: Cuong T Nguyen
Características
- Listar todas las tuberías
- Obtener el estado de la tubería y definiciones detalladas de la tubería
- Lista de ejecuciones de pipeline
- Aprobar o rechazar acciones de aprobación manual
- Reintentar etapas fallidas
- Ejecuciones de canalización de activación
- Ver registros de ejecución de canalizaciones
- Detener las ejecuciones de tuberías
- Recursos de canalización de etiquetas
- Crear webhooks para la activación automática de pipelines
- Obtenga métricas de rendimiento del pipeline
Prerrequisitos
- Node.js (v14 o posterior)
- Cuenta de AWS con acceso a CodePipeline
- Credenciales de AWS con permisos para CodePipeline, CloudWatch e IAM (para etiquetado)
- IDE de Windsurf con asistente de IA en cascada
Instalación
- Clonar este repositorio:
- Instalar dependencias:
- Cree un archivo
.env
basado en la plantilla.env.example
:
- Actualice el archivo
.env
con sus credenciales y configuración de AWS:
Nota : por seguridad, nunca envíe su archivo
.env
al control de versiones.
Uso
Construir el proyecto
Iniciar el servidor
Para desarrollo con reinicio automático:
Integración con Windsurf
Este servidor MCP está diseñado para funcionar con Windsurf, lo que permite que Cascade interactúe con AWS CodePipeline a través de solicitudes de lenguaje natural.
Pasos de configuración
- Asegúrese de que el servidor esté ejecutándose:
- Agregue la configuración del servidor a su archivo de configuración Windsurf MCP en
~/.codeium/windsurf/mcp_config.json
:
- Crea el directorio si no existe:
- Reinicie Windsurf para cargar la nueva configuración del servidor MCP
Uso con Cascade
Una vez configurado, puede interactuar con AWS CodePipeline usando lenguaje natural en Windsurf. Por ejemplo:
- "Enumerar todos mis pipelines de CodePipeline"
- "Muéstrame el estado actual de mi flujo de producción-implementación"
- Activar el flujo de trabajo de prueba y compilación
- Obtener métricas para mi flujo de trabajo de 'procesamiento de datos'
- "Crear un webhook para mi pipeline 'frontend-deploy'"
Cascade traducirá estas solicitudes en las llamadas de herramientas MCP adecuadas.
Herramientas MCP
Gestión de tuberías centrales
Nombre de la herramienta | Descripción | Parámetros |
---|---|---|
list_pipelines | Listar todos los pipelines de CodePipeline | Ninguno |
get_pipeline_state | Obtener el estado de una tubería específica | pipelineName : Nombre del pipeline |
list_pipeline_executions | Lista de ejecuciones para una canalización específica | pipelineName : Nombre del pipeline |
trigger_pipeline | Activar la ejecución de una canalización | pipelineName : Nombre del pipeline |
stop_pipeline_execution | Detener la ejecución de una canalización | pipelineName : Nombre de la canalización executionId : ID de ejecución reason : Motivo opcional para detenerse |
Detalles y métricas del pipeline
Nombre de la herramienta | Descripción | Parámetros |
---|---|---|
get_pipeline_details | Obtenga la definición completa de una tubería | pipelineName : Nombre del pipeline |
get_pipeline_execution_logs | Obtener registros de la ejecución de una canalización | pipelineName : Nombre de la canalización executionId : ID de ejecución |
get_pipeline_metrics | Obtener métricas de rendimiento para una canalización | pipelineName : Nombre del pipeline period : Periodo de métrica opcional en segundos startTime : Hora de inicio opcional para las métricas endTime : Hora de finalización opcional para las métricas |
Acciones e integraciones de pipeline
Nombre de la herramienta | Descripción | Parámetros |
---|---|---|
approve_action | Aprobar o rechazar una acción de aprobación manual | pipelineName : Nombre del pipeline stageName : Nombre de la etapa actionName : Nombre de la acción token : Token de aprobación approved : Booleano que indica aprobación o rechazo comments : Comentarios opcionales |
retry_stage | Reintentar una etapa fallida | pipelineName : Nombre de la canalización stageName : Nombre de la etapa pipelineExecutionId : ID de ejecución |
tag_pipeline_resource | Agregar o actualizar etiquetas para un recurso de canalización | pipelineName : Nombre de la canalización tags : Matriz de pares clave-valor para etiquetado |
create_pipeline_webhook | Crear un webhook para una canalización | pipelineName : Nombre de la canalización webhookName : Nombre del webhook targetAction : Acción de destino para el webhook authentication : Tipo de autenticación authenticationConfiguration : Configuración de autenticación opcional filters : Filtros de eventos opcionales |
Solución de problemas
Problemas comunes
- Error de conexión rechazada :
- Asegúrese de que el servidor se esté ejecutando en el puerto especificado
- Compruebe si el puerto está bloqueado por un firewall
- Errores de credenciales de AWS :
- Verifique sus credenciales de AWS en el archivo
.env
- Asegúrese de que su usuario de IAM tenga los permisos necesarios
- Verifique sus credenciales de AWS en el archivo
- Windsurf no detecta el servidor MCP :
- Verifique el formato del archivo
mcp_config.json
- Asegúrese de que la URL del servidor sea correcta
- Reiniciar Windsurf después de realizar cambios
- Verifique el formato del archivo
Registros
El servidor registra información en la consola. Consulte estos registros para solucionar problemas:
Ejemplos
Creación de un webhook para la integración de GitHub
Obtención de métricas de pipeline
Licencia
ISC
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor de protocolo de contexto de modelo que se integra con AWS CodePipeline, lo que permite a los usuarios administrar canalizaciones a través de Windsurf y Cascade utilizando comandos de lenguaje natural.
- Características
- Prerrequisitos
- Instalación
- Uso
- Integración con Windsurf
- Herramientas MCP
- Solución de problemas
- Ejemplos
- Licencia
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that enables Claude to execute Python code using boto3 to query and manage AWS resources directly from conversations.Last updated -6PythonMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server implementation that enables Claude to perform AWS operations on S3 and DynamoDB services through natural language commands.Last updated -2392PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server allowing Claude AI to interact with AWS resources through natural language, enabling users to query and manage AWS services without using the traditional AWS Console or CLI.Last updated -TypeScript
- -securityAlicense-qualityA Node.js package providing Model Context Protocol server infrastructure for AWS Lambda functions with streaming response capabilities through Server-Sent Events.Last updated -1129TypeScriptMIT License