An MCP server that gives AI assistants full control over ArgoCD from app discovery to deployment.
605
A comprehensive Model Context Protocol (MCP) server for managing Kubernetes workloads via ArgoCD using GitOps principles. This image allows AI assistants (like Claude) to perform secure, production-grade ArgoCD operations, including repository onboarding, application deployments, rollbacks, and intelligent debugging.
CrashLoopBackOff, Exceptions), and fetch Kubernetes event histories.AppProject or v1/Secret) to commit back to Git.This Docker image is designed to be used as an MCP server. It requires access to your ArgoCD API server and authentication credentials.
Run the container mapping port 8770 so clients can connect locally:
docker run --rm -it \
-p 8770:8770 \
-e ARGOCD_SERVER_URL="https://host.docker.internal:8080" \
-e ARGOCD_AUTH_TOKEN="your-token-here" \
-e MCP_PORT=8770 \
-e MCP_PATH="/mcp" \
-e ARGOCD_INSECURE="true" \
-e GIT_PASSWORD="your-github-pat" \
-e MCP_ALLOW_WRITE=true \
-e GIT_USERNAME="your-github-username" \
talkopsai/argocd-mcp-server:latest
Then configure your MCP client to connect over HTTP/SSE:
{
"mcpServers": {
"argocd-mcp-server": {
"serverUrl": "http://localhost:8770/mcp",
"disabled": false,
"disabledTools": []
}
}
}
Authentication is entirely handled via environment variables to keep your credentials secure. At a minimum, you must provide ARGOCD_SERVER_URL and ARGOCD_AUTH_TOKEN. If you plan on having the AI onboard private git repositories, you should also provide GIT_USERNAME and GIT_PASSWORD.
To use this image securely over stdio transport directly inside Claude Desktop, format the invocation like this:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"argocd-mcp-server": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "ARGOCD_SERVER_URL=https://host.docker.internal:8080",
"-e", "ARGOCD_AUTH_TOKEN=your_argocd_token",
"-e", "ARGOCD_INSECURE=true",
"-e", "GIT_USERNAME=your_git_username",
"-e", "GIT_PASSWORD=YOUR_GITHUB_PAT",
"-e", "MCP_ALLOW_WRITE=true",
"-e", "MCP_LOG_LEVEL=INFO",
"-e", "MCP_TRANSPORT=stdio",
"talkopsai/argocd-mcp-server:latest"
]
}
}
}
The image supports several environment variables for authentication and advanced configuration:
| Variable | Default | Description |
|---|---|---|
ARGOCD_SERVER_URL | None | (Required) The URL of your ArgoCD server API |
ARGOCD_AUTH_TOKEN | None | (Required) Bearer token or Session token for API authentication |
ARGOCD_INSECURE | false | Set to true to disable TLS verification (for self-signed certs) |
GIT_USERNAME | None | Username for HTTPS Git repository onboarding |
GIT_PASSWORD | None | Password/Personal Access Token for HTTPS Git repo onboarding |
SSH_PRIVATE_KEY_PATH | ~/.ssh/id_rsa | Path inside the container to the SSH key for Git repo onboarding |
MCP_TRANSPORT | http | Transport protocol (stdio or http/sse) |
MCP_HOST | 0.0.0.0 | Host interface to bind to (if HTTP transport) |
MCP_PORT | 8770 | Port to bind to (if HTTP transport) |
MCP_LOG_LEVEL | INFO | Logging level (DEBUG, INFO, WARNING, ERROR) |
GIT_PASSWORD environment variable rather than your actual Git account password.ARGOCD_AUTH_TOKEN belongs to an ArgoCD Service Account or Role that is strictly scoped (via ArgoCD RBAC) to the projects and permissions the AI needs. Do not provide a cluster-admin token if not necessary.If you find this MCP server useful, consider leaving a ⭐ on the GitHub repository!
Content type
Image
Digest
sha256:615cf7efe…
Size
78.7 MB
Last updated
4 months ago
docker pull talkopsai/argocd-mcp-server