AWS CodePipeline MCP Server

by cuongdev
Verified

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.

Integrations

  • Manages environment variables for the MCP server, including AWS credentials and configuration settings.

  • Used for cloning the MCP server repository during the installation process.

  • Enables creation of webhooks for GitHub integration with AWS CodePipeline, supporting features like triggering pipelines based on GitHub events such as commits to specific branches.

AWS CodePipeline MCP 서버

AWS CodePipeline과 통합되는 모델 컨텍스트 프로토콜(MCP) 서버로, Windsurf 및 Cascade를 통해 파이프라인을 관리할 수 있습니다. 이 서버는 AWS CodePipeline 서비스와 상호 작용하기 위한 표준화된 인터페이스를 제공합니다.

저자: Cuong T Nguyen

특징

  • 모든 파이프라인 나열
  • 파이프라인 상태 및 자세한 파이프라인 정의 가져오기
  • 파이프라인 실행 목록
  • 수동 승인 작업 승인 또는 거부
  • 실패한 단계를 다시 시도하세요
  • 파이프라인 실행 트리거
  • 파이프라인 실행 로그 보기
  • 파이프라인 실행 중지
  • 파이프라인 리소스 태그
  • 자동 파이프라인 트리거를 위한 웹훅 생성
  • 파이프라인 성능 지표 가져오기

필수 조건

  • Node.js(v14 이상)
  • CodePipeline 액세스 권한이 있는 AWS 계정
  • CodePipeline, CloudWatch 및 IAM(태그 지정용)에 대한 권한이 있는 AWS 자격 증명
  • Cascade AI 어시스턴트가 포함된 Windsurf IDE

설치

  1. 이 저장소를 복제하세요:

지엑스피1

  1. 종속성 설치:
npm install
  1. .env.example 템플릿을 기반으로 .env 파일을 만듭니다.
cp .env.example .env
  1. AWS 자격 증명과 구성으로 .env 파일을 업데이트합니다.
AWS_REGION=us-east-1 AWS_ACCESS_KEY_ID=your_access_key_id AWS_SECRET_ACCESS_KEY=your_secret_access_key PORT=3000

참고 : 보안을 위해 .env 파일을 버전 제어에 커밋하지 마세요.

용법

프로젝트를 빌드하세요

npm run build

서버를 시작합니다

npm start

자동 재시작을 통한 개발의 경우:

npm run dev

Windsurf와의 통합

이 MCP 서버는 Windsurf와 함께 작동하도록 설계되었으며, Cascade가 자연어 요청을 통해 AWS CodePipeline과 상호 작용할 수 있도록 합니다.

설정 단계

  1. 서버가 실행 중인지 확인하세요.
npm start
  1. ~/.codeium/windsurf/mcp_config.json 에 있는 Windsurf MCP 구성 파일에 서버 구성을 추가합니다.
{ "mcpServers": { "codepipeline": { "command": "npx", "args": [ "-y", "path/to/mcp-codepipeline-server/dist/index.js" ], "env": { "AWS_REGION": "us-east-1", "AWS_ACCESS_KEY_ID": "your_access_key_id", "AWS_SECRET_ACCESS_KEY": "your_secret_access_key" } } } }
  1. 디렉토리가 없으면 생성합니다.
mkdir -p ~/.codeium/windsurf touch ~/.codeium/windsurf/mcp_config.json
  1. 새로운 MCP 서버 구성을 로드하려면 Windsurf를 다시 시작하세요.

Cascade와 함께 사용

구성이 완료되면 Windsurf에서 자연어를 사용하여 AWS CodePipeline과 상호 작용할 수 있습니다. 예:

  • "내 모든 CodePipeline 파이프라인 나열"
  • "'생산-배포' 파이프라인의 현재 상태를 보여주세요"
  • "테스트-빌드 파이프라인을 트리거합니다"
  • "내 '데이터 처리' 파이프라인에 대한 메트릭 가져오기"
  • "프런트엔드 배포 파이프라인에 대한 웹훅을 만듭니다."

Cascade는 이러한 요청을 적절한 MCP 도구 호출로 변환합니다.

MCP 도구

핵심 파이프라인 관리

도구 이름설명매개변수
list_pipelines모든 CodePipeline 파이프라인 나열없음
get_pipeline_state특정 파이프라인의 상태 가져오기pipelineName : 파이프라인의 이름
list_pipeline_executions특정 파이프라인에 대한 실행 목록pipelineName : 파이프라인의 이름
trigger_pipeline파이프라인 실행 트리거pipelineName : 파이프라인의 이름
stop_pipeline_execution파이프라인 실행 중지pipelineName : 파이프라인 이름 executionId : 실행 ID reason : 중지에 대한 선택적 이유

파이프라인 세부 정보 및 메트릭

도구 이름설명매개변수
get_pipeline_details파이프라인의 전체 정의를 알아보세요pipelineName : 파이프라인의 이름
get_pipeline_execution_logs파이프라인 실행에 대한 로그 가져오기pipelineName : 파이프라인 이름 executionId : 실행 ID
get_pipeline_metrics파이프라인에 대한 성능 측정항목 가져오기pipelineName : 파이프라인의 이름 period : 선택적 메트릭 기간(초) startTime : 메트릭의 선택적 시작 시간 endTime : 메트릭의 선택적 종료 시간

파이프라인 작업 및 통합

도구 이름설명매개변수
approve_action수동 승인 작업 승인 또는 거부pipelineName : 파이프라인의 이름 stageName : 단계의 이름 actionName : 작업의 이름 token : 승인 토큰 approved : 승인 또는 거부를 나타내는 부울 comments : 선택 사항
retry_stage실패한 스테이지를 다시 시도하세요pipelineName : 파이프라인의 이름 stageName : 단계의 이름 pipelineExecutionId : 실행 ID
tag_pipeline_resource파이프라인 리소스에 대한 태그 추가 또는 업데이트pipelineName : 파이프라인 이름 tags : 태그 지정을 위한 키-값 쌍 배열
create_pipeline_webhook파이프라인에 대한 웹훅을 만듭니다.pipelineName : 파이프라인의 이름 webhookName : 웹훅의 이름 targetAction : 웹훅의 대상 작업 authentication : 인증 유형 authenticationConfiguration : 선택 사항 인증 구성 filters : 선택 사항 이벤트 필터

문제 해결

일반적인 문제

  1. 연결 거부 오류 :
    • 서버가 지정된 포트에서 실행 중인지 확인하세요.
    • 방화벽으로 포트가 차단되어 있는지 확인하세요
  2. AWS 자격 증명 오류 :
    • .env 파일에서 AWS 자격 증명을 확인하세요.
    • IAM 사용자에게 필요한 권한이 있는지 확인하세요.
  3. Windsurf가 MCP 서버를 감지하지 못합니다 .
    • mcp_config.json 파일 형식을 확인하세요
    • 서버 URL이 올바른지 확인하세요
    • 변경 후 Windsurf를 다시 시작하세요

로그

서버는 콘솔에 정보를 기록합니다. 문제 해결을 위해 다음 로그를 확인하세요.

# Run with more verbose logging DEBUG=* npm start

예시

GitHub 통합을 위한 웹훅 생성

{ "pipelineName": "my-pipeline", "webhookName": "github-webhook", "targetAction": "Source", "authentication": "GITHUB_HMAC", "authenticationConfiguration": { "SecretToken": "my-secret-token" }, "filters": [ { "jsonPath": "$.ref", "matchEquals": "refs/heads/main" } ] }

파이프라인 메트릭 가져오기

{ "pipelineName": "my-pipeline", "period": 86400, "startTime": "2025-03-10T00:00:00Z", "endTime": "2025-03-17T23:59:59Z" }

특허

아이에스씨

-
security - not tested
F
license - not found
-
quality - not tested

AWS CodePipeline과 통합된 모델 컨텍스트 프로토콜 서버로, 사용자는 자연어 명령을 사용하여 Windsurf 및 Cascade를 통해 파이프라인을 관리할 수 있습니다.

  1. Features
    1. Prerequisites
      1. Installation
        1. Usage
          1. Build the project
          2. Start the server
        2. Integration with Windsurf
          1. Setup Steps
          2. Using with Cascade
        3. MCP Tools
          1. Core Pipeline Management
          2. Pipeline Details and Metrics
          3. Pipeline Actions and Integrations
        4. Troubleshooting
          1. Common Issues
          2. Logs
        5. Examples
          1. Creating a Webhook for GitHub Integration
          2. Getting Pipeline Metrics
        6. License
          ID: urm7jwtady