Argo CD
Interact with Argo CD applications through natural language.
Argo CD MCP Server
An implementation of Model Context Protocol (MCP) server for Argo CD, enabling AI assistants to interact with your Argo CD applications through natural language. This server allows for seamless integration with Visual Studio Code and other MCP clients through stdio and HTTP stream transport protocols.
Features
- Transport Protocols: Supports both stdio and HTTP stream transport modes for flexible integration with different clients
- Complete Argo CD API Integration: Provides comprehensive access to Argo CD resources and operations
- AI Assistant Ready: Pre-configured tools for AI assistants to interact with Argo CD in natural language
Available Tools
The server provides the following ArgoCD management tools:
Cluster Management
list_clusters: List all clusters registered with ArgoCD
Application Management
list_applications: List and filter all applicationsget_application: Get detailed information about a specific applicationcreate_application: Create a new applicationupdate_application: Update an existing applicationdelete_application: Delete an applicationsync_application: Trigger a sync operation on an application
Resource Management
get_application_resource_tree: Get the resource tree for a specific applicationget_application_managed_resources: Get managed resources for a specific applicationget_application_workload_logs: Get logs for application workloads (Pods, Deployments, etc.)get_resource_events: Get events for resources managed by an applicationget_resource_actions: Get available actions for resourcesrun_resource_action: Run an action on a resource
Installation
Prerequisites
- Node.js (v18 or higher recommended)
- pnpm package manager (for development)
- Argo CD instance with API access
- Argo CD API token (see the docs for instructions)
Usage with Cursor
- Follow the Cursor documentation for MCP support, and create a
.cursor/mcp.jsonfile in your project:
{
"mcpServers": {
"argocd-mcp": {
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
}
- Start a conversation with Agent mode to use the MCP.
Usage with VSCode
- Follow the Use MCP servers in VS Code documentation, and create a
.vscode/mcp.jsonfile in your project:
{
"servers": {
"argocd-mcp-stdio": {
"type": "stdio",
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
}
- Start a conversation with an AI assistant in VS Code that supports MCP.
Usage with Claude Desktop
- Follow the MCP in Claude Desktop documentation, and create a
claude_desktop_config.jsonconfiguration file:
{
"mcpServers": {
"argocd-mcp": {
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
}
- Configure Claude Desktop to use this configuration file in settings.
Self-signed Certificates
If your Argo CD instance uses self-signed certificates or certificates from a private Certificate Authority (CA), you may need to add the following environment variable to your configuration:
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
This disables TLS certificate validation for Node.js when connecting to Argo CD instances using self-signed certificates or certificates from private CAs that aren't trusted by your system's certificate store.
Warning: Disabling SSL verification reduces security. Use this setting only in development environments or when you understand the security implications.
Read Only Mode
If you want to run the MCP Server in a ReadOnly mode to avoid resource or application modification, you should set the environment variable:
"MCP_READ_ONLY": "true"
This will disable the following tools:
create_applicationupdate_applicationdelete_applicationsync_applicationrun_resource_action
By default, all the tools will be available.
Stateless Mode
By default, the HTTP transport assigns a session ID to each client connection and keeps an in-memory map of active sessions. This works well for single-instance deployments but causes 400 errors when multiple replicas are running without sticky sessions, because a request routed to a different pod will not find the session that was created on the original pod.
To run without session affinity requirements, start the server with the --stateless flag:
node dist/index.js http --stateless
Or with Docker:
docker run -e ARGOCD_BASE_URL=<argocd_url> -e ARGOCD_API_TOKEN=<argocd_token> \
argoprojlabs/mcp-for-argocd http --stateless
In stateless mode:
- No
Mcp-Session-Idis returned or required — any replica can handle any request - ArgoCD credentials must be supplied on every request via environment variables or
x-argocd-base-url/x-argocd-api-tokenheaders GET /mcpandDELETE /mcpreturn405 Method Not Allowed(session-level SSE and termination are not supported)
This mode is recommended for Kubernetes deployments with Horizontal Pod Autoscaling (HPA) where network-level sticky sessions are not available.
For Development
- Clone the repository:
git clone https://github.com/argoproj-labs/mcp-for-argocd.git
cd mcp-for-argocd
- Install project dependencies:
pnpm install
- Start the development server with hot reloading enabled:
pnpm run dev
Once the server is running, you can utilize the MCP server within Visual Studio Code or other MCP client.
Upgrading ArgoCD Types
To update the TypeScript type definitions based on the latest Argo CD API specification:
-
Download the
swagger.jsonfile from the ArgoCD release page, for example here is the swagger.json link for ArgoCD v2.14.11. -
Place the downloaded
swagger.jsonfile in the root directory of theargocd-mcpproject. -
Generate the TypeScript types from the Swagger definition by running the following command. This will create or overwrite the
src/types/argocd.d.tsfile:pnpm run generate-types -
Update the
src/types/argocd-types.tsfile to export the required types from the newly generatedsrc/types/argocd.d.ts. This step often requires manual review to ensure only necessary types are exposed.
Credits
The project was initially created and donated by @jiachengxu, @imwithye, @hwwn, and @alexmt from Akuity.
関連サーバー
Alpha Vantage MCP Server
スポンサーAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Javadoc MCP
A Model Context Protocol (MCP) server for searching Java documentation. This server enables AI assistants to search and retrieve Java API documentation from JSON files.
TeamCity MCP Server
MCP server for JetBrains TeamCity with 87 tools for builds, tests, agents, and CI/CD pipeline management.
Tmux MCP Server
Provides persistent shell execution through tmux sessions.
OPNsense MCP Server
A comprehensive MCP server for managing OPNsense firewalls, offering over 300 tools for configuration and monitoring.
FastMCP ThreatIntel
An AI-powered threat intelligence analysis tool for multi-source IOC analysis, APT attribution, and interactive reporting.
OpenAPI.city
Precise API context for AI agents, via MCP and REST.
Helm MCP
MCP server to work with Helm charts
Devvit
A companion server for building applications on Reddit's developer platform.
Kirby MCP
CLI-first MCP server for composer-based Kirby CMS projects—inspect blueprints/templates/plugins, interact with a real Kirby runtime, and use a bundled Kirby knowledge base.
Apidog tests MCP
Adds possibility to work with testing management via MCP