ArgoCD MCP サーバー
ArgoCD API と統合された MCP (モデル コンテキスト プロトコル) サーバー。AI アシスタントと大規模言語モデルが自然言語の対話を通じて ArgoCD アプリケーションとリソースを管理できるようになります。
特徴
- 認証とセッション管理:
- ArgoCD APIからのユーザー情報取得
- ArgoCD によるトークンベースの認証
- サーバー設定と構成へのアクセス
- プラグイン情報の取得
- バージョン情報の取得
- アプリケーション管理:
- プロジェクト、名前、名前空間でアプリケーションを一覧表示およびフィルタリングします
- 詳細な申請情報を入手する
- アプリケーションの作成、更新、削除
- 設定可能なオプションでアプリケーションを同期する
- 堅牢なAPIクライアント:
- URLの正規化とインテリジェントなエンドポイント処理
- 包括的なエラー処理と詳細なエラーメッセージ
- 設定可能なタイムアウトとSSL検証
- トークンのセキュリティ保護とマスキング
- 開発者エクスペリエンス:
- mypy による完全な静的型チェック
- 詳細なドキュメントと例
- 環境ベースの構成
クイックスタート
設定
サーバーの起動
サーバーは環境変数を介して設定されます。利用可能な設定オプションは次のとおりです。
環境変数 | 説明 | デフォルト値 |
---|---|---|
ARGOCD_TOKEN | ArgoCD APIトークン | なし |
ARGOCD_API_URL | ArgoCD APIエンドポイント | https://argocd.example.com/api/v1 |
ARGOCD_VERIFY_SSL | SSL証明書を検証する | 真実 |
サーバーはいくつかの方法で起動できます。
トークンが環境変数経由で提供される場合、Claude はコマンドごとにトークンを指定しなくてもそれを使用できます。
クロードとのつながり
Claude Code CLIの使用
Claudeデスクトップの使用
claude_desktop_config.json
構成ファイルを作成します。
パスと構成値を実際の値に置き換えます。
- uv 実行ファイルへのフルパスを使用します(macOS/Linux では
which uv
、Windows ではwhere uv
で検索します) - argocd-mcpのインストールディレクトリへの正しいパスを設定します
- ArgoCD APIトークンを追加する
- 必要に応じて他の環境変数を設定します
この構成は、Claude Desktop に、特定の環境設定で MCP サーバーを自動的に起動する方法を指示します。
利用可能なツール
セッションツール
get_user_info
: api/v1/session/userinfo 経由で現在のユーザーの情報を取得します。
設定ツール
get_settings
: UI、OIDC、その他の構成を含む ArgoCD サーバーの設定を取得します。get_plugins
: 設定された ArgoCD プラグインに関する情報を取得します
バージョンツール
get_version
: APIサーバーのバージョン情報を取得する
アプリケーション管理ツール
list_applications
: フィルタリングオプションを使用してすべてのアプリケーションを取得しますget_application_details
: 特定のアプリケーションに関する詳細情報を取得するcreate_application
: 新しいアプリケーションを作成するupdate_application
: 既存のアプリケーションを更新するdelete_application
: アプリケーションを削除するsync_application
: アプリケーションで同期操作をトリガーする
会話の例
ユーザー情報の確認
ArgoCDバージョンの取得
ArgoCD設定の取得
アプリケーションの管理
発達
要件
- Python 3.12以上
- MCP(FastMCPと開発ツールを含む)
- uv パッケージ マネージャー (推奨) または pip
- ArgoCD APIトークン
型チェック
このプロジェクトでは、静的型チェックに mypy を使用して、コードの品質を向上させ、型関連のバグを早期に検出します。
型チェックの設定はpyproject.toml
とmypy.ini
両方で利用できます。この設定では、以下の厳格な型付けルールが適用されます。
- 型指定のない定義を禁止する
- Any型を返す際の警告
- 関数定義の完全性を確認する
- 名前空間パッケージのサポート
- モジュール固有の構成
プロジェクト構造
コードはモジュール構造に編成されています。
サーバーの拡張
新しい機能を追加するには:
tools
ディレクトリ内の適切なモジュールに新しいツールを追加しますserver.py
に新しいツールを登録する- パラメータ検証とエラー処理の既存のパターンに従う
- README.md のドキュメントを更新します
- 新しい機能のテストを追加する
トラブルシューティング
問題が発生した場合:
- サーバーログを確認します(情報ログはデフォルトで有効になっています)
Processing request of type CallToolRequest
エラーではなく情報であることに注意してくださいmcp dev server.py
を使用する場合、デバッグのために MCP インスペクタがhttp://localhost:5173で自動的に開きます。- サーバーログを使用してAPI呼び出しと応答をデバッグする
- 自己署名証明書の SSL 証明書の問題の場合:
- 必要な環境変数がすべて適切に設定されているかどうかを確認します。
貢献
貢献を歓迎します!このプロジェクトに貢献したい場合は、問題を開くか、プルリクエストを送信してください。
貢献する際は、以下のガイドラインに従ってくださ��。
- すべてのコードに適切な型ヒントが含まれていることを確認する
- PR を送信する前に mypy の型チェックを実行する
- 新しい機能のテストを追加する
- 新しい機能や変更があった場合はドキュメントを更新します
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.
ArgoCD API と統合された MCP (モデル コンテキスト プロトコル) サーバー。AI アシスタントと大規模言語モデルが自然言語の対話を通じて ArgoCD アプリケーションとリソースを管理できるようになります。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that allows AI agents like Claude to interact with the Aligo SMS API to send text messages and retrieve related information.Last updated -1JavaScriptMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that allows AI assistants like Claude to interact with Go's Language Server Protocol (LSP) and benefit from advanced Go code analysis features.Last updated -37GoApache 2.0
- -securityAlicense-qualityA high-performance Model Context Protocol (MCP) server designed for large language models, enabling real-time communication between AI models and applications with support for session management and intelligent tool registration.Last updated -2PythonMIT License
- AsecurityFlicenseAqualityAn all-in-one Model Context Protocol (MCP) server that connects your coding AI to numerous databases, data warehouses, data pipelines, and cloud services, streamlining development workflow through seamless integrations.Last updated -2Python