Argo CD logo

Argo CD

Organization
akuity

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

Publisherakuity
Repositoryargocd-mcp
LanguageTypeScript
Forks
75
Stars
462
Available tools
0
Transport typestdio
Categories
LicenseApache-2.0
Links
  • Connect tools to AI workflows

    Argo CD exposes MCP capabilities that can be used by compatible AI clients and agents.

  • 0 available tools

    Browse the callable actions below, including names and descriptions when provided by the server.

  • Ready-to-copy setup

    Use the installation snippets to configure this server in your preferred MCP client.

  • Open source signals

    462 stars and 75 forks from the linked repository.

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.


argocd-mcp-demo

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 applications
  • get_application: Get detailed information about a specific application
  • create_application: Create a new application
  • update_application: Update an existing application
  • delete_application: Delete an application
  • sync_application: Trigger a sync operation on an application

Resource Management

  • get_application_resource_tree: Get the resource tree for a specific application
  • get_application_managed_resources: Get managed resources for a specific application
  • get_application_workload_logs: Get logs for application workloads (Pods, Deployments, etc.)
  • get_resource_events: Get events for resources managed by an application
  • get_resource_actions: Get available actions for resources
  • run_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

  1. Follow the Cursor documentation for MCP support, and create a .cursor/mcp.json file in your project:
json
{
  "mcpServers": {
    "argocd-mcp": {
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}
  1. Start a conversation with Agent mode to use the MCP.

Usage with VSCode

  1. Follow the Use MCP servers in VS Code documentation, and create a .vscode/mcp.json file in your project:
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. Start a conversation with an AI assistant in VS Code that supports MCP.

Usage with Claude Desktop

  1. Follow the MCP in Claude Desktop documentation, and create a claude_desktop_config.json configuration file:
json
{
  "mcpServers": {
    "argocd-mcp": {
      "command": "npx",
      "args": [
        "argocd-mcp@latest",
        "stdio"
      ],
      "env": {
        "ARGOCD_BASE_URL": "<argocd_url>",
        "ARGOCD_API_TOKEN": "<argocd_token>"
      }
    }
  }
}
  1. 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_application
  • update_application
  • delete_application
  • sync_application
  • run_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:

bash
node dist/index.js http --stateless

Or with Docker:

bash
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-Id is 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-token headers
  • GET /mcp and DELETE /mcp return 405 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

  1. Clone the repository:
bash
git clone https://github.com/argoproj-labs/mcp-for-argocd.git
cd mcp-for-argocd
  1. Install project dependencies:
bash
pnpm install
  1. Start the development server with hot reloading enabled:
bash
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:

  1. Download the swagger.json file from the ArgoCD release page, for example here is the swagger.json link for ArgoCD v2.14.11.

  2. Place the downloaded swagger.json file in the root directory of the argocd-mcp project.

  3. Generate the TypeScript types from the Swagger definition by running the following command. This will create or overwrite the src/types/argocd.d.ts file:

    bash
    pnpm run generate-types
  4. Update the src/types/argocd-types.ts file to export the required types from the newly generated src/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.

Installation

TypingMind
Prerequisites:

Node.js 18+

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

Use Argo CD MCP with multiple AI models

TypingMind connects MCP tools at the workspace level, so once Argo CD is connected, you can use it with different AI models in TypingMind instead of setting it up separately for each model. This MCP runs locally through the TypingMind MCP connector on your device.

Setup guide to use the local connector

Use this when the MCP server needs access to local files, apps, or private resources on your computer.

1

Open the MCP settings

In TypingMind, go to Settings, Advanced Settings, then Model Context Protocol and choose Setup Connector.

  1. Open TypingMind in your browser.
  2. Click the Settings icon.
  3. Go to Advanced Settings.
  4. Open the Model Context Protocol section.
  5. Click Setup Connector and choose This Device.
TypingMind MCP connector setup screen with This Device selected
2

Run the connector command

Choose This Device, copy the command from TypingMind, and run it in Terminal. Keep the process running while you use MCP.

  1. Copy the setup command shown by TypingMind.
  2. Open Terminal on macOS or Windows Terminal on Windows.
  3. Paste and run the command.
  4. Approve the package install if Terminal asks you to proceed.
  5. Keep the Terminal window running while using MCP tools.
3

Add Argo CD as a server

When the connector status is Ready, click Edit Servers and paste the MCP server configuration.

  1. Wait until the connector status shows Ready.
  2. Click Edit Servers.
  3. Paste the Argo CD MCP server configuration.
  4. Save the server list.
  5. Refresh if you want to confirm the connector is still ready.
TypingMind MCP settings showing active server and Edit Servers button
{
  "mcpServers": {
    "argo-cd": {
      "command": "npx",
      "args": [
        "-y",
        "argocd-mcp"
      ]
    }
  }
}
4

Use it across models

Save the server list, open Plugins, enable the Argo CD MCP tools, then select any supported AI model in TypingMind and use the tools in chat or assign them to an AI agent.

  1. Open the Plugins page in TypingMind.
  2. Enable the Argo CD MCP tools.
  3. Start a chat and choose the AI model you want to use.
  4. Use the MCP tools in chat or assign them to an AI agent.
  5. Switch to another AI model whenever needed without reconnecting MCP.
TypingMind chat using enabled MCP tools with a selected AI model
Can you use Argo CD to help me with this task?
Argo CD
Sure. I read it.
Here is what I found using Argo CD.

Frequently asked questions

What is the Argo CD MCP server used for?

Argo CD is an MCP server that lets compatible AI clients connect to external tools and context. In TypingMind, you can add this MCP server once and make its tools available in your AI workspace.

Can I use Argo CD MCP with multiple AI models in TypingMind?

Yes. TypingMind connects MCP tools at the workspace level, so you can use Argo CD with different AI models such as Claude, ChatGPT, Gemini, or other models you have configured in TypingMind without setting up the MCP server separately for each model.

Why use Argo CD MCP with TypingMind?

TypingMind is one of the best frontends for LLM chat because it brings multiple AI models, prompts, plugins, AI agents, API keys, and MCP tools into one workspace. With Argo CD connected, you can use its MCP tools across your preferred models while keeping your chat workflow organized in TypingMind.

How do I connect Argo CD MCP to TypingMind?

Argo CD runs through the TypingMind local MCP connector. This is best when the MCP server needs access to local files, desktop apps, command-line tools, or private resources on your computer.

What tools does Argo CD MCP provide in TypingMind?

Argo CD exposes MCP capabilities that can be enabled from the TypingMind Plugins page and used in chat or assigned to AI agents.

Do I need to share my API keys with TypingMind to use Argo CD MCP?

No. TypingMind is local-first and lets you keep your model providers, API keys, prompts, and MCP configuration under your control. If Argo CD requires authentication, add the required headers, OAuth settings, or local configuration for that MCP server when you create the connection.

Related MCP Servers

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇