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と統合されたModel Context Protocol(MCP)サーバーであり、WindsurfとCascadeを介してパイプラインを管理できます。このサーバーは、AWS CodePipelineサービスとやり取りするための標準化されたインターフェースを提供します。
著者: Cuong T Nguyen
特徴
- すべてのパイプラインを一覧表示する
- パイプラインの状態と詳細なパイプライン定義を取得する
- パイプライン実行の一覧
- 手動承認アクションを承認または拒否する
- 失敗したステージを再試行する
- パイプライン実行をトリガーする
- パイプライン実行ログを表示する
- パイプラインの実行を停止する
- パイプラインリソースのタグ付け
- パイプラインの自動トリガー用のWebhookを作成する
- パイプラインのパフォーマンス指標を取得する
前提条件
- Node.js (v14以降)
- CodePipeline にアクセスできる AWS アカウント
- CodePipeline、CloudWatch、IAM(タグ付け用)の権限を持つAWS認証情報
- Cascade AIアシスタント搭載Windsurf IDE
インストール
- このリポジトリをクローンします:
- 依存関係をインストールします:
.env.example
テンプレートに基づいて.env
ファイルを作成します。
- AWS の認証情報と設定を使用して
.env
ファイルを更新します。
注意: セキュリティ上の理由から、
.env
ファイルをバージョン管理にコミットしないでください。
使用法
プロジェクトを構築する
サーバーを起動する
自動再起動を使用した開発の場合:
Windsurfとの統合
この MCP サーバーは Windsurf と連携するように設計されており、Cascade が自然言語リクエストを通じて AWS CodePipeline と対話できるようにします。
セットアップ手順
- サーバーが実行中であることを確認します。
~/.codeium/windsurf/mcp_config.json
にある Windsurf MCP 構成ファイルにサーバー構成を追加します。
- ディレクトリが存在しない場合は作成します。
- Windsurfを再起動して新しいMCPサーバー構成をロードします
カスケードと併用
設定が完了すると、Windsurf の自然言語を使って AWS CodePipeline を操作できるようになります。例えば、以下のようになります。
- 「すべての CodePipeline パイプラインを一覧表示する」
- 「『production-deploy』パイプラインの現在の状態を教えてください」
- 「「テストビルド」パイプラインをトリガーする」
- 「データ処理パイプラインのメトリクスを取得する」
- 「frontend-deploy」パイプライン用のWebhookを作成する
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 | パイプラインのWebhookを作成する | pipelineName : パイプラインの名前webhookName : ウェブフックの名前targetAction : ウェブフックのターゲットアクションauthentication : 認証タイプauthenticationConfiguration : オプションの認証設定filters : オプションのイベントフィルター |
トラブルシューティング
よくある問題
- 接続拒否エラー:
- 指定されたポートでサーバーが実行中であることを確認する
- ポートがファイアウォールによってブロックされていないか確認する
- AWS 認証情報エラー:
.env
ファイルで AWS 認証情報を確認する- IAMユーザーに必要な権限があることを確認する
- Windsurf が MCP サーバーを検出しません:
mcp_config.json
ファイルの形式を確認する- サーバーのURLが正しいことを確認してください
- 変更を加えたらWindsurfを再起動してください
ログ
サーバーはコンソールに情報を記録します。トラブルシューティングのために以下のログを確認してください。
例
GitHub 統合用の Webhook の作成
パイプラインメトリクスの取得
ライセンス
ISC
This server cannot be installed
AWS CodePipeline と統合されたモデルコンテキストプロトコル サーバー。ユーザーは自然言語コマンドを使用して Windsurf および Cascade を通じてパイプラインを管理できます。
- Features
- Prerequisites
- Installation
- Usage
- Integration with Windsurf
- MCP Tools
- Troubleshooting
- Examples
- License