home / mcp / argo cd mcp server

Argo CD MCP Server

An implementation of Model Context Protocol (MCP) server for Argo CD.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "argoproj-labs-mcp-for-argocd": {
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}

You run an MCP server that lets AI assistants talk to Argo CD through natural language. This server exposes Argo CD resources and operations over MCP via stdio or HTTP stream transports, so you can control apps, resources, and deployments from your preferred client.

How to use

You connect an MCP client (such as an AI assistant inside your editor or a desktop app) to the Argo CD MCP Server to manage applications, view resources, and trigger actions. The server supports both stdio and HTTP stream transports, so you can choose the transport your client supports. You will supply the Argo CD endpoint URL and API token as environment variables when you start the server. Use the client to list, inspect, create, update, delete, sync applications, and access resource trees, logs, events, and actions.

How to install

Prerequisites you need before installing the MCP server are listed below. Install Node.js version 18 or higher and a compatible package manager to run the MCP server locally. Ensure your Argo CD instance is accessible by the server and that you have an Argo CD API token with the required permissions.

Install and run the MCP server using the provided stdio configuration. The command starts the MCP server in a local, ready-to-use mode and passes the necessary environment variables for Argo CD access.

# Example: start MCP server via npx for stdio transport
npx argocd-mcp@latest stdio
```

Note: You should supply the Argo CD endpoint and API token via environment variables when you start the server in your own shell or script. The exact environment variable names are shown in the configuration examples below.

Usage with Cursor

{
  "mcpServers": {
    "argocd-mcp": {
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}

Usage with VSCode

{
  "servers": {
    "argocd-mcp-stdio": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}

Usage with Claude Desktop

{
  "mcpServers": {
    "argocd-mcp": {
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}

Security and operational notes

If your Argo CD instance uses self-signed certificates or a private CA, you can disable TLS verification for the MCP server during development by setting the environment variable NODE_TLS_REJECT_UNAUTHORIZED to 0. This is insecure and should only be used in controlled, non-production environments.

If you want to prevent the MCP server from modifying resources, run it in ReadOnly mode by setting MCP_READ_ONLY to true. This disables creating, updating, deleting applications and triggering resource actions.

Troubleshooting and tips

Ensure your Argo CD URL and API token are correct and that the token has sufficient permissions for the actions you intend to perform. Verify that the MCP server process has network access to the Argo CD API and that any required network proxies or firewall rules allow traffic between them.

When starting the server, capture logs to identify any authentication or connectivity errors early. Validate that the MCP client is configured with the same environment variable names used in your server run configuration.

Available tools

list_applications

List and filter all Argo CD applications.

get_application

Retrieve detailed information about a specific application.

create_application

Create a new Argo CD application.

update_application

Update an existing Argo CD application.

delete_application

Delete an Argo CD application.

sync_application

Trigger a synchronization of an application.

get_application_resource_tree

Fetch the resource tree for a given application.

get_application_managed_resources

List resources managed by a specific application.

get_application_workload_logs

Retrieve logs for application workloads (pods, deployments, etc.).

get_resource_events

Get events for resources managed by an application.

get_resource_actions

List available actions for resources.

run_resource_action

Execute an action on a resource.