ArgoCD MCP ‐ The Networking Aspects - olga-mir/playground GitHub Wiki
The purpose of this demo is to explore MCP's underlying networking flows when end-user applications such as AI chat or agentic copilots interact with resources via configured MCP tools. It will explore stdio
and hosted MCP variants.
Akuity released an official ArgoCD MCP Server: https://github.com/akuity/argocd-mcp. The setup instructions are provided in the repo and are very standard once you've set up one or two MCP tools in the past. I'll copy the configuration here because we'll need a closer look to understand the flow.
"argocd-mcp": {
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "$ARGOCD_SERVER",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
The token is obtained from the ArgoCD server:
$ curl $ARGOCD_SERVER/api/v1/session -d $'{"username":"<USER>","password":"<PASSWORD>"}'

This list continues, with a summary of Unhealthy and OutOfSync applications. Let's have a closer look at one of these:
Where is this https://github.com/akuity/argocd-mcp MCP code executed and what is it doing?
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],

So behind the scenes, it's just plain boring HTTP requests from our point of view. ArgoCD isn't even aware of what higher-level flow the requests are coming from. These are just standard REST API endpoints.

This is an example of a stdio MCP server. Next, let's look at an MCP server hosted in the cluster.
ArgoCD server is already exposed on an endpoint accessible from corporate network, and as we seen the requests are just HTTP requests and the access is governed with standard RBAC at the very least.
However the authentication in this basic setup is not suited for enterprises.
TODO
Note: SSE is being deprecated in favor of HTTP streaming.