MCP Argo Server
@jakkaj
An MCP server for running Argo workflows, written in Golang
概要
What is MCP Argo Server?
MCP Argo Server is a lightweight CLI tool that wraps Argo Workflows, providing an MCP-compliant JSON-RPC interface over STDIN/STDOUT for launching workflows, checking status, and retrieving results. It is written in Go and uses Foxy Contexts and client-go to interact with Kubernetes and Argo resources.
How to use MCP Argo Server?
Open the project in a dev container or clone and run go mod tidy. Use make cluster to install a k3d cluster and set up Argo. Then run make run to start the MCP server. Alternatively, use the included Python test client by running make install and python test_with_autogen.py in the python/ directory.
Key features of MCP Argo Server
- MCP-compliant server for Argo Workflows
- JSON-RPC communication over STDIN/STDOUT
- Launch workflows, check status, retrieve results
- Lightweight CLI tool written in Golang
- Integrates with Kubernetes via client-go
- Includes Python test client for demonstration
Use cases of MCP Argo Server
- Automating Argo Workflow submission from MCP clients
- Monitoring workflow status programmatically
- Integrating workflow management into AI agents or tools
- Testing and debugging Argo workflows in a dev container
FAQ from MCP Argo Server
What is the runtime requirement?
It runs inside a development container with pre-installed dependencies, or locally with Go. It requires a k3d cluster and Argo installation.
How does the server communicate?
It uses JSON-RPC over STDIN/STDOUT, leveraging Foxy Contexts for RPC handling.
Where are workflow data stored?
Workflows are managed by Argo Workflows on a Kubernetes cluster.
What transport does the server use?
The server uses STDIN/STDOUT transport for MCP.
Is there an authentication mechanism?
The README does not mention authentication; it is intended for local development or within a trusted environment.