{"id":12823,"library":"argocd-mcp","title":"Argo CD MCP Server","description":"The `argocd-mcp` package implements an Argo CD server compliant with the Model Context Protocol (MCP), enabling AI assistants to interact with Argo CD applications via natural language. Its current stable version is v0.6.0, with minor releases occurring every few weeks to months, adding new features and tools. Key differentiators include its support for both stdio and HTTP stream transport protocols, allowing flexible integration with various MCP clients like Visual Studio Code. It provides a comprehensive set of pre-configured tools for managing Argo CD applications, resources, and clusters, facilitating AI-driven GitOps workflows. The package aims to bridge the gap between AI assistants and Argo CD's API by offering a structured, machine-readable interface.","status":"active","version":"0.5.0","language":"javascript","source_language":"en","source_url":"https://github.com/argoproj-labs/mcp-for-argocd","tags":["javascript","mcp","argocd","argocd-mcp","argocd-mcp-server","argo-cd","argo-cd-mcp","argo-cd-mcp-server","cicd","typescript"],"install":[{"cmd":"npm install argocd-mcp","lang":"bash","label":"npm"},{"cmd":"yarn add argocd-mcp","lang":"bash","label":"yarn"},{"cmd":"pnpm add argocd-mcp","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"While primarily a CLI tool, the package ships TypeScript types. This placeholder represents a hypothetical programmatic entry point or type definition for the server itself, though direct programmatic import for starting the server is not the primary documented usage pattern (npx is).","symbol":"ArgocdMcpServer","correct":"import type { ArgocdMcpServer } from 'argocd-mcp'"},{"note":"Type definition for the Model Context Protocol tools exposed by the server, such as `list_applications` or `get_application`. Useful for client-side type-checking when interacting with the MCP server API.","symbol":"McpTool","correct":"import type { McpTool } from 'argocd-mcp'"},{"note":"Type definition for the configuration parameters, such as `ARGOCD_BASE_URL` and `ARGOCD_API_TOKEN`, that the server expects. Useful for type-checking configuration objects in programmatic setups.","symbol":"ArgocdConfig","correct":"import type { ArgocdConfig } from 'argocd-mcp'"}],"quickstart":{"code":"import { spawn } from 'child_process';\n\nconst argocdBaseUrl = process.env.ARGOCD_BASE_URL ?? '';\nconst argocdApiToken = process.env.ARGOCD_API_TOKEN ?? '';\n\nif (!argocdBaseUrl || !argocdApiToken) {\n  console.error('Environment variables ARGOCD_BASE_URL and ARGOCD_API_TOKEN must be set.');\n  process.exit(1);\n}\n\n// Command to run the argocd-mcp server via npx\nconst command = 'npx';\nconst args = ['argocd-mcp@latest', 'stdio'];\nconst env = {\n  ...process.env, // Inherit existing environment variables\n  ARGOCD_BASE_URL: argocdBaseUrl,\n  ARGOCD_API_TOKEN: argocdApiToken,\n};\n\nconsole.log(`Starting Argo CD MCP Server with command: ${command} ${args.join(' ')}`);\n\nconst serverProcess = spawn(command, args, {\n  env: env,\n  stdio: ['inherit', 'inherit', 'inherit'], // Redirect stdio to parent process for visibility\n});\n\nserverProcess.on('error', (err) => {\n  console.error('Failed to start argocd-mcp server:', err);\n});\n\nserverProcess.on('exit', (code, signal) => {\n  console.log(`Argo CD MCP Server exited with code ${code} and signal ${signal}`);\n});\n\nconsole.log('Argo CD MCP Server running in stdio mode. Connect your MCP client (e.g., VS Code).');\nconsole.log('Press Ctrl+C to stop the server.');\n\n// Handle graceful shutdown\nprocess.on('SIGINT', () => {\n  console.log('Stopping Argo CD MCP Server...');\n  serverProcess.kill('SIGINT');\n  process.exit(0);\n});\n\nprocess.on('SIGTERM', () => {\n  console.log('Stopping Argo CD MCP Server...');\n  serverProcess.kill('SIGTERM');\n  process.exit(0);\n});","lang":"typescript","description":"Demonstrates how to programmatically start the Argo CD MCP Server in stdio mode, configured with necessary Argo CD API credentials from environment variables, allowing integration with MCP clients."},"warnings":[{"fix":"Update git remotes and documentation links to point to the new repository `https://github.com/argoproj-labs/mcp-for-argocd`.","message":"The project's GitHub repository and primary maintainer organization shifted from `akuity/argocd-mcp` to `argoproj-labs/mcp-for-argocd` around versions v0.3.0/v0.4.0. This change might affect previous links, issue tracking, and general community engagement, requiring users to update their sources for documentation or contributions.","severity":"breaking","affected_versions":">=0.3.0"},{"fix":"Ensure your development and production environments use Node.js v18 or a more recent version. Use a Node Version Manager (nvm, volta) to manage Node.js installations.","message":"The `argocd-mcp` server requires Node.js v18 or higher to run. Older Node.js versions may lead to installation failures or runtime errors.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Provide `ARGOCD_BASE_URL` (e.g., `https://argocd.example.com`) and `ARGOCD_API_TOKEN` as environment variables to the process running `argocd-mcp`. Refer to Argo CD documentation for generating API tokens.","message":"The server's functionality is entirely dependent on having a running Argo CD instance and valid API credentials (`ARGOCD_BASE_URL` and `ARGOCD_API_TOKEN`) configured as environment variables. Without these, the server cannot connect to Argo CD and will be non-functional.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Use `npx argocd-mcp` for running the server as intended. If embedding, use `child_process.spawn` as shown in the quickstart rather than attempting direct module imports for server instantiation.","message":"The package is primarily designed to run as a standalone server process via `npx` (e.g., `npx argocd-mcp@latest stdio`), not typically imported as a library for direct programmatic invocation of its core server logic within another Node.js application. While programmatic spawning is possible, direct `import` for the server itself is not the idiomatic usage.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Update any custom tooling to use the new generated types (if exposed and intended for public consumption) or adjust to the new internal type management. For most users, this change was internal and required no action.","message":"In version 0.1.1, the package transitioned from using a `model.js` file for types to generated types from the Argo CD swagger.json. If any custom tooling or clients were directly consuming `model.js`, this change would break their integration.","severity":"breaking","affected_versions":">=0.1.1"}],"env_vars":null,"last_verified":"2026-04-19T00:00:00.000Z","next_check":"2026-07-18T00:00:00.000Z","problems":[{"fix":"Ensure Node.js (v18+) and its associated `npx` command are correctly installed and available in your system's environment PATH.","cause":"Node.js or `npx` command is not found in the system's PATH.","error":"Error: spawn npx ENOENT"},{"fix":"Set `ARGOCD_BASE_URL` and `ARGOCD_API_TOKEN` environment variables before running the `argocd-mcp` server. Example: `export ARGOCD_BASE_URL='https://your-argocd.com' && export ARGOCD_API_TOKEN='your-token' && npx argocd-mcp@latest stdio`.","cause":"The necessary Argo CD API endpoint URL or authentication token environment variables are missing.","error":"Environment variables ARGOCD_BASE_URL and ARGOCD_API_TOKEN must be set."},{"fix":"Verify that the `ARGOCD_BASE_URL` is correct, the Argo CD instance is running, and network connectivity exists between the `argocd-mcp` server and the Argo CD API.","cause":"The `ARGOCD_BASE_URL` provided is unreachable, incorrect, or the Argo CD server is not running.","error":"Error: request to <ARGOCD_BASE_URL> failed, reason: connect ECONNREFUSED"},{"fix":"Generate a new Argo CD API token with appropriate permissions and ensure it is correctly supplied via the `ARGOCD_API_TOKEN` environment variable.","cause":"The `ARGOCD_API_TOKEN` provided is invalid, expired, or does not have sufficient permissions.","error":"Error: Argo CD API returned 401 Unauthorized"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null}