ArgoCD MCP Server
Features
- **Authentication & Session Management**: - User info retrieval from ArgoCD API - Token-based authentication with ArgoCD - Server settings and configuration access - Plugin information retrieval - Version information retrieval
- **Application Management**: - List and filter applications by project, name, namespace - Get detailed application information - Create, update, and delete applications - Sync applications with configurable options
- **Robust API Client**: - URL normalization and intelligent endpoint handling - Comprehensive error handling and detailed error messages - Configurable timeouts and SSL verification - Token security protection and masking
- **Developer Experience**: - Full static type checking with mypy - Detailed documentation and examples - Environment-based configuration
Quick Start
Setup
Starting the Server
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Connecting with Claude
Using Claude Code CLI
Using Claude Desktop
- Use the full path to the uv executable (find it with `which uv` on macOS/Linux or `where uv` on Windows)
- Set the correct directory path to your argocd-mcp installation
- Add your ArgoCD API token
- Configure other environment variables as needed
Available Tools
Session Tools
- `get_user_info`: Get the current user's info via api/v1/session/userinfo
Settings Tools
- `get_settings`: Get ArgoCD server settings including UI, OIDC, and other configurations
- `get_plugins`: Get information about configured ArgoCD plugins
Version Tools
- `get_version`: Get version information of the API server
Application Management Tools
- `list_applications`: Get all applications with filtering options
- `get_application_details`: Get detailed information about a specific application
- `create_application`: Create a new application
- `update_application`: Update an existing application
- `delete_application`: Delete an application
- `sync_application`: Trigger a sync operation on an application
Example Conversations
Checking User Information
Getting ArgoCD Version
Getting ArgoCD Settings
Managing Applications
Development
Requirements
- Python 3.12+
- MCP (includes FastMCP and development tools)
- uv package manager (recommended) or pip
- ArgoCD API token
Type Checking
- Disallowing untyped definitions
- Warning on returning Any types
- Checking completeness of function definitions
- Namespace packages support
- Module-specific configurations
Project Structure
Extending the Server
- Add new tools to the appropriate module in the `tools` directory
- Register new tools in `server.py`
- Follow the existing patterns for parameter validation and error handling
- Update documentation in README.md
- Add tests for new functionality
Troubleshooting
- Check server logs (info logging is enabled by default)
- Note that `Processing request of type CallToolRequest` is informational, not an error
- If using `mcp dev server.py`, the MCP Inspector will automatically open at http://localhost:5173 for debugging
- Use the server logs to debug API calls and responses
- For SSL certificate issues with self-signed certificates:
- Check if all required environment variables are properly set:
Contributing
- Ensure all code includes proper type hints
- Run mypy type checking before submitting PRs
- Add tests for new functionality
- Update documentation for any new features or changes