argocd-mcp

by akuity
Apache 2.0
85
10

Integrations

  • Provides comprehensive access to Argo CD resources and operations, allowing management of Argo CD applications through natural language. Enables listing, creating, updating, deleting, and syncing applications, as well as managing application resources, viewing resource trees, logs, events, and executing resource actions.

  • Enables interaction with Kubernetes resources managed by Argo CD, including viewing managed resources, workload logs, resource events, and executing resource actions on Kubernetes objects deployed through Argo CD.

Argo CD MCP サーバー

Argo CD向けのModel Context Protocol (MCP)サーバーの実装。AI アシスタントが自然言語を介して Argo CD アプリケーションと対話できるようになります。このサーバーは、stdio と Server-Sent Events (SSE) の両方のトランスポートプロトコルを介して、Visual Studio Code や他の MCP クライアントとのシームレスな統合を可能にします。

このプロジェクトは、Argo Project の作成者であるAkuityによって管理されています。

AkuityはArgoとKargoのエンタープライズ企業であり、Kubernetes向けのエンドツーエンドのGitOpsに不可欠なプラットフォームを提供しています。Akuityプラットフォームを利用することで、企業はマネージドArgo CDによるデプロイ、Kargoによるシームレスなプロモーション、そしてAkuity Monitoringによるインフラのリアルタイム可視化を実現できます。Akuityは、Argoの開発者であるHong Wang、Jesse Suen、Alexander Matyushentsevによって設立され、プラットフォームチームとアプリケーションチームの両方に、エンタープライズ規模のGitOpsに最適なツールを提供することを使命としています。

特徴

  • トランスポートプロトコル: stdio と SSE トランスポートモードの両方をサポートし、さまざまなクライアントとの柔軟な統合を実現します。
  • 完全なArgo CD API統合: Argo CDのリソースと操作への包括的なアクセスを提供します
  • AIアシスタント対応:AIアシスタントが自然言語でArgo CDと対話するための事前構成済みツール

インストール

前提条件

  • Node.js(v18以上を推奨)
  • pnpm パッケージ マネージャー (開発用)
  • APIアクセスを備えたArgo CDインスタンス

カーソルとの使用

  1. MCP サポートについてはカーソルのドキュメントに従って、プロジェクトに.cursor/mcp.jsonファイルを作成します。
{ "mcpServers": { "argocd-mcp": { "command": "npx", "args": [ "argocd-mcp@latest", "stdio" ], "env": { "ARGOCD_BASE_URL": "<argocd_url>", "ARGOCD_API_TOKEN": "<argocd_token>" } } } }
  1. MCP を使用するには、エージェント モードで会話を開始します。

VSCodeでの使用

  1. VS Code ドキュメントの「MCP サーバーの使用」に従って、プロジェクトに.vscode/mcp.jsonファイルを作成します。
{ "servers": { "argocd-mcp-stdio": { "type": "stdio", "command": "npx", "args": [ "argocd-mcp@latest", "stdio" ], "env": { "ARGOCD_BASE_URL": "<argocd_url>", "ARGOCD_API_TOKEN": "<argocd_token>" } } } }
  1. MCP をサポートする VS Code で AI アシスタントとの会話を開始します。

Claude Desktopでの使用

  1. Claude Desktop ドキュメントの MCPに従って、 claude_desktop_config.json構成ファイルを作成します。
{ "mcpServers": { "argocd-mcp": { "command": "npx", "args": [ "argocd-mcp@latest", "stdio" ], "env": { "ARGOCD_BASE_URL": "<argocd_url>", "ARGOCD_API_TOKEN": "<argocd_token>" } } } }
  1. 設定でこの構成ファイルを使用するように Claude Desktop を構成します。

利用可能なツール

サーバーは次の ArgoCD 管理ツールを提供します。

アプリケーション管理

  • list_applications : すべてのアプリケーションを一覧表示してフィルタリングする
  • get_application : 特定のアプリケーションに関する詳細情報を取得する
  • create_application : 新しいアプリケーションを作成する
  • update_application : 既存のアプリケーションを更新する
  • delete_application : アプリケーションを削除する
  • sync_application : アプリケーションで同期操作をトリガーする

リソース管理

  • get_application_resource_tree : 特定のアプリケーションのリソースツリーを取得する
  • get_application_managed_resources : 特定のアプリケーションの管理対象リソースを取得する
  • get_application_workload_logs : アプリケーション ワークロード (Pod、デプロイメントなど) のログを取得します。
  • get_resource_events : アプリケーションによって管理されるリソースのイベントを取得する
  • get_resource_actions : リソースに対して利用可能なアクションを取得する
  • run_resource_action : リソースに対してアクションを実行する

開発のために

  1. リポジトリをクローンします。
git clone https://github.com/akuity/argocd-mcp.git cd argocd-mcp
  1. プロジェクトの依存関係をインストールします。
pnpm install
  1. ホット リロードを有効にして開発サーバーを起動します。
# For SSE mode with hot reloading pnpm run dev

サーバーが実行されると、Visual Studio Code またはその他の MCP クライアント内で MCP サーバーを利用できるようになります。

ArgoCDタイプのアップグレード

最新の Argo CD API 仕様に基づいて TypeScript 型定義を更新するには:

  1. ArgoCD リリース ページからswagger.jsonファイルをダウンロードします。たとえば、ArgoCD v2.14.11 のswagger.json リンクは次のとおりです。
  2. ダウンロードしたswagger.jsonファイルをargocd-mcpプロジェクトのルート ディレクトリに配置します。
  3. 次のコマンドを実行して、Swagger定義からTypeScript型を生成します。これによりsrc/types/argocd.d.tsファイルが作成または上書きされます。
    pnpm run generate-types
  4. src/types/argocd-types.tsファイルを更新し、新しく生成されたsrc/types/argocd.d.tsから必要な型をエクスポートします。この手順では、必要な型のみが確実に公開されるように、手動での確認が必要になることがよくあります。

Related MCP Servers

View all related MCP servers

ID: z34q2x4q3k