An MCP (Model Context Protocol) server that integrates with the ArgoCD API, enabling agentic tools to manage ArgoCD through natural language interactions.
This ArgoCD MCP server has moderate definition quality with consistent naming patterns but significant gaps in parameter descriptions, output schema documentation, and error handling guidance. Tool names follow verb_noun conventions (get_*, list_*, create_*, update_*, delete_*, sync_*) which is good. However, parameter descriptions are frequently missing or minimal, output schemas are not documented, and error recovery guidance is absent. The server provides 10 tools with varying quality. Read-only operations are well-named but lack rich descriptions. Write/destructive operations (create_application, update_application, delete_application, sync_application) have basic parameter documentation but no guidance on error handling or confirmation patterns. Six tools (get_user_info, get_settings, get_plugins, get_version, list_applications, get_application_details) have minimal descriptions under 100 characters. Four tools (create_application, update_application, delete_application, sync_application) have longer descriptions but lack information about expected output structure, error cases, or recovery patterns.
Create a new application in ArgoCD
Delete an application from ArgoCD
Get details for a specific application
Get returns Argo CD plugins using api/v1/settings/plugins. This endpoint returns information about available plugins in ArgoCD.
Get returns Argo CD settings using api/v1/settings. This endpoint returns the ArgoCD server settings including configuration related to OIDC, Dex, UI customization, and plugins.
Get the current user's info via session/userinfo. This endpoint returns information about the currently logged-in user, including permissions and groups.
Output schemas not documented. Tools return ArgoCD API responses but no documentation describes the response structure, field types, or nested objects. LLMs cannot plan downstream tool calls or extract relevant fields without knowing what the response contains.
Parameter descriptions are minimal or missing. Parameters like 'refresh' in list_applications describe only the field name without explaining values ('hard' vs 'normal'), behavior, or when to use each option. Parameter descriptions like 'Filter applications by project name' lack information about matching semantics (exact, prefix, substring).
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 58 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 45 | - | v1 |
Version returns version information of the API server using api/version. This endpoint returns version details of the ArgoCD API server including Git commit, version, build date, compiler information, and more.
List applications in ArgoCD with filtering options
Sync an application in ArgoCD
Update an existing application in ArgoCD
No error recovery guidance. Tools like delete_application and create_application lack descriptions of what errors can occur (e.g., 'Application already exists', 'Invalid project', 'Cluster unreachable') and what the LLM should do in response. Error handling must tell agents: can I retry? Should I ask the user? Is this fatal?
Destructive operations lack confirmation/dry-run patterns. delete_application and sync_application can modify or destroy resources but have no dry-run or confirmation capability. Agents cannot preview changes or ask for user approval before executing irreversible actions.
Parameter constraints not formally declared. 'strategy' in sync_application accepts 'apply' or 'hook' but is typed as a bare string, not an enum. 'propagation_policy' in delete_application lists values in the description ('foreground', 'background', 'orphan') instead of as a schema enum. LLMs cannot reliably select valid options without enums.
No pagination guidance. list_applications has no documented limit, offset, or pagination mechanism. If ArgoCD has many applications, the response could be large or incomplete, but the tool provides no way for the agent to request subsequent pages or control result size.
Tool descriptions are generic. 'Create a new application in ArgoCD' and 'Update an existing application in ArgoCD' do not explain WHEN to use these tools, what defaults apply, or what validation occurs. Rich, prompt-engineered descriptions help LLMs decide when to invoke a tool.