akuity
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"argocd-mcp": {
"args": [
"argocd-mcp@latest",
"stdio"
],
"command": "npx",
"env": {
"ARGOCD_API_TOKEN": "\u003cargocd_token\u003e",
"ARGOCD_BASE_URL": "\u003cargocd_url\u003e"
}
}
}
}
可用工具 (13 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
list_applications
list_applications returns list of applications
该工具无需必填参数,直接调用即可
get_application
get_application returns application by application name
该工具无需必填参数,直接调用即可
create_application
create_application creates application
该工具无需必填参数,直接调用即可
update_application
update_application updates application
该工具无需必填参数,直接调用即可
delete_application
delete_application deletes application
该工具无需必填参数,直接调用即可
sync_application
sync_application syncs application
该工具无需必填参数,直接调用即可
get_application_resource_tree
get_application_resource_tree returns resource tree for application by application name
该工具无需必填参数,直接调用即可
get_application_managed_resources
get_application_managed_resources returns managed resources for application by application name
该工具无需必填参数,直接调用即可
get_application_workload_logs
get_application_workload_logs returns logs for application workload (Deployment, StatefulSet, Pod, etc.) by application name and resource ref
该工具无需必填参数,直接调用即可
get_application_events
get_application_events returns events for application by application name
该工具无需必填参数,直接调用即可
get_resource_events
get_resource_events returns events for a resource that is managed by an application
该工具无需必填参数,直接调用即可
get_resource_actions
get_resource_actions returns actions for a resource that is managed by an application
该工具无需必填参数,直接调用即可
run_resource_action
run_resource_action runs an action on a resource
该工具无需必填参数,直接调用即可
服务介绍
Argo CD MCP 服务器
这是为 Argo CD 实现的 Model Context Protocol (MCP) 服务器,它使 AI 助手能够通过自然语言与您的 Argo CD 应用程序进行交互。该服务器允许通过 stdio 和 Server-Sent Events (SSE) 传输协议与 Visual Studio Code 及其他 MCP 客户端无缝集成。
该项目由 Akuity 维护,Akuity 是 Argo 项目的创建者。
Akuity 是 Argo 和 Kargo 的企业公司,提供 Kubernetes 端到端 GitOps 的关键平台。借助 Akuity 平台,企业可以使用托管的 Argo CD 进行部署,通过 Kargo 无缝推广,并使用 Akuity 监控实时查看其基础设施。Akuity 由 Argo 的创建者 Hong Wang、Jesse Suen 和 Alexander Matyushentsev 创立,旨在为企业规模的 GitOps 提供最佳工具,赋能平台和应用团队。
特性
- 传输协议:支持 stdio 和 SSE 传输模式,以便灵活地与不同客户端集成
- 完整的 Argo CD API 集成:提供对 Argo CD 资源和操作的全面访问
- AI 助手就绪:预配置的工具,使 AI 助手能够以自然语言与 Argo CD 交互
安装
前提条件
- Node.js(推荐 v18 或更高版本)
- pnpm 包管理器(用于开发)
- 具有 API 访问权限的 Argo CD 实例
- Argo CD API 令牌(请参阅 文档中的说明)
使用 Cursor
- 按照 Cursor 文档中的 MCP 支持指南,并在项目中创建一个
.cursor/mcp.json文件:
json
{
"mcpServers": {
"argocd-mcp": {
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
}2. 通过代理模式启动对话以使用MCP。
在VSCode中使用
-
遵循在VS Code中使用MCP服务器的文档,并在项目中创建一个
.vscode/mcp.json文件:
json
{
"servers": {
"argocd-mcp-stdio": {
"type": "stdio",
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
} -
在支持MCP的VS Code中与AI助手开始对话。
在Claude Desktop中使用
-
遵循Claude Desktop中的MCP文档,并创建一个
claude_desktop_config.json配置文件:
json
{
"mcpServers": {
"argocd-mcp": {
"command": "npx",
"args": [
"argocd-mcp@latest",
"stdio"
],
"env": {
"ARGOCD_BASE_URL": "<argocd_url>",
"ARGOCD_API_TOKEN": "<argocd_token>"
}
}
}
} -
在设置中配置Claude Desktop以使用此配置文件。
可用工具
该服务器提供了以下ArgoCD管理工具:
应用程序管理
list_applications: 列出并筛选所有应用程序get_application: 获取特定应用程序的详细信息create_application: 创建新应用程序update_application: 更新现有应用程序delete_application: 删除应用程序sync_application: 触发应用程序上的同步操作
资源管理
get_application_resource_tree: 获取特定应用程序的资源树get_application_managed_resources: 获取特定应用程序的托管资源get_application_workload_logs: 获取应用程序工作负载(Pods、Deployments等)的日志get_resource_events: 获取由应用程序管理的资源的事件get_resource_actions: 获取资源可用的操作run_resource_action: 对资源执行操作
开发指南
-
克隆仓库:
bash
git clone https://github.com/akuity/argocd-mcp.git
cd argocd-mcp -
安装项目依赖项:
bash
pnpm install -
启动带有热重载功能的开发服务器:
bash
HTTP模式下启用热重载
pnpm run dev
SSE模式下启用热重载
pnpm run dev-sse
一旦服务器运行起来,您就可以在Visual Studio Code或其他MCP客户端中使用MCP服务器了。
升级ArgoCD类型
要根据最新的Argo CD API规范更新TypeScript类型定义:
-
从ArgoCD发布页面下载
swagger.json文件,例如这里是ArgoCD v2.14.11的swagger.json链接。 -
将下载的
swagger.json文件放置在argocd-mcp项目的根目录中。 -
通过运行以下命令从Swagger定义生成TypeScript类型。这将创建或覆盖
src/types/argocd.d.ts文件:
bash
pnpm run generate-types -
更新
src/types/argocd-types.ts文件,以从新生成的src/types/argocd.d.ts导出所需的类型。此步骤通常需要手动审查,以确保只暴露必要的类型。