一个符合MCP标准的用Golang编写的运行Argo工作流的服务器。
MCP Argo Server 是一个轻量级的CLI工具,它通过STDIN/STDOUT上的JSON-RPC封装了Argo工作流。该项目利用Foxy Contexts进行RPC处理,并使用client-go与Kubernetes和Argo工作流资源交互。项目提供了启动工作流、检查工作流状态以及获取结果的工具。
此项目配置为在开发容器内运行。只需在支持开发容器的编辑器(如VS Code Remote - Containers)中打开仓库,所有依赖项都会预先安装。 如果您希望本地运行,请克隆仓库并执行:
go mod tidy
在开发容器中打开项目。
运行 make cluster,这将安装k3d集群并设置Argo。
您可以通过键入 kubectl cluster-info 来检查是否成功。
您可以运行测试工作流,键入 argo submit -n argo --watch ./kube/argo-hello-world.yaml。
您可以在 https://localhost:2746/workflows/argo/ 查看Argo界面。
您可以通过键入 make run 来检查应用程序是否正在构建且MCP正常工作。
项目包括一个Python测试客户端,演示如何与MCP Argo服务器交互。测试客户端位于 python/test_with_autogen.py,展示了以下内容:
要运行Python测试:
确保已安装Python依赖项:
cd python
make install
运行测试脚本:
python test_with_autogen.py
或者... 直接调试以逐步执行。
该脚本将:
kube/argo-hello-world.yaml 提交一个示例工作流欢迎贡献!请打开问题并提交拉取请求。在提交更改之前,请确保遵循项目的编码规范并且所有测试都通过。
本项目采用MIT许可证。详情见 LICENSE 文件。