argocd-mcp-server

command module
v0.0.0-...-97fc874 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 10, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

README

Argo CD MCP

Argo CD MCP is a Model Context Protocol Server to converse with Argo CD from a UI such as Anthropic's Claude or Block's Goose

Features

  • Prompts:
    • argocd-unhealthy-application-resources: list the Unhealthy (Degraded and Progressing) Applications in Argo CD
  • Tools:
    • argocd_list_unhealthy_applications: list the unhealthy (Degraded and Progressing) Applications in Argo CD
    • argocd_list_unhealthy_application_resources: list unhealthy resources of a given Argo CD Application

Example:

list the unhealthy applications on Argo CD and for each one, list their unhealthy resources

Building and Installing

Requires Go 1.24 (or higher) and Task

Testing and Linting
task test test-e2e lint

Note: the e2e tests rely on Podman and the podman-compose extension to build images and run containers for the MCP server and a mock instance of Argo CD. See Podman installation and podman-compose extension installtion to setup these tools in your local environment.

Building

Build the binary using the following command:

task install

Build the Container image with the following command:

task build-image

Using the Argo CD MCP Server

Obtaining a token to connect to Argo CD

Create a local account in Argo CD with apiKey capabilities only (not need for login). See Argo CD documentation for more information. Once create, generate a token via the 'Settings > Accounts' page in the Argo CD UI or via the argocd account generate-token command and store the token in a token-file which will be passed as an argument when running the server (see below).

Stdio Transport with Claude Desktop App

On macOS, run the following command:

code ~/Library/Application\ Support/Claude/claude_desktop_config.json

and add the following MCP server definition:

{
    "mcpServers": {
        "argocd-mcp-server": {
            "command": "<path/to/argocd-mcp-server>",
            "args": [
                "--transport",
                "stdio",
                "--argocd-token"
                "<token>",
                "--argocd-url",
                "<url>",
                "--insecure",
                "<true|false>",
                "debug",
                "<true|false>"
            ]
        }
    }
}
Stdio Transport in Cursor

Edit your ~/.cursor/mcp.json file with the following contents:

{
  "mcpServers": {
    "argocd-mcp-server": {
      "command": "<path/to/argocd-mcp-server>",
      "args": [
        "--transport",
        "stdio",
        "--argocd-token",
        "<token>",
        "--argocd-url",
        "<url>",
        "--insecure",
        "<true|false>",
        "--debug",
        "<true|false>"
      ]
    }
  }
}
HTTP Transport with Cursor

Start the Argo CD MCP server from the binary after running task install:

argocd-mcp-server --transport=http --argocd-url=<url> --argocd-token=<token> --debug=<true|false> --listen=<[host]:port>

Or start the Argo CD MCP server as a container after running task build-image:

podman run -d --name argocd-mcp-server --transport http -e ARGOCD_MCP_SERVER_LISTEN_HOST=0.0.0.0 -e ARGOCD_MCP_URL=<url> -e ARGOCD_MCP_TOKEN=<token> -e ARGOCD_MCP_DEBUG=<true|false> -p 8080:8080 argocd-mcp-server:latest

Edit your ~/.cursor/mcp.json file with the following contents:

{
  "mcpServers": {
    "argocd-mcp-server": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

License

The code is available under the Apache License 2.0

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
test

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL