io.github.mariomorenodev/rundeck-mcp-server
50 tools to manage Rundeck jobs, executions, projects, nodes, and system via MCP
Ask AI about io.github.mariomorenodev/rundeck-mcp-server
Powered by Claude Β· Grounded in docs
I know everything about io.github.mariomorenodev/rundeck-mcp-server. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
rundeck-mcp-server
The most comprehensive MCP (Model Context Protocol) server for Rundeck. Manage jobs, executions, projects, nodes, and more from Claude, Cursor, or any MCP-compatible client.
50 tools across 7 domains β full CRUD operations, execution monitoring, and system management.
Features
- Projects β List, create, delete, and configure projects
- Jobs β List, create, run, retry, import/export, enable/disable execution and scheduling
- Executions β Monitor running jobs, get logs, abort executions, query history
- Nodes β Browse node inventory with filter expressions
- System β Server info, health checks, metrics, execution mode control
- Key Storage β Manage secrets, passwords, and SSH keys
- Webhooks β Create and manage webhook triggers
- ACL Policies β Full CRUD for system access control policies
Quick Start
Prerequisites
- Node.js 18+
- A Rundeck instance with API access
- A Rundeck API token (how to generate one)
Using with Claude Code
Add to your MCP settings:
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Using with Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Using with Cursor
Add to your Cursor MCP settings (.cursor/mcp.json):
{
"mcpServers": {
"rundeck": {
"command": "npx",
"args": ["-y", "rundeck-mcp-server"],
"env": {
"RUNDECK_URL": "http://your-rundeck-server:4440",
"RUNDECK_API_TOKEN": "your-api-token"
}
}
}
}
Configuration
| Environment Variable | Required | Default | Description |
|---|---|---|---|
RUNDECK_URL | Yes | β | Rundeck server URL (e.g., http://localhost:4440) |
RUNDECK_API_TOKEN | Yes | β | API token for authentication |
RUNDECK_API_VERSION | No | 41 | Rundeck API version |
RUNDECK_TIMEOUT | No | 30000 | Request timeout in milliseconds |
Available Tools
Projects (6 tools)
| Tool | Description |
|---|---|
rundeck_list_projects | List all projects |
rundeck_get_project | Get project details and configuration |
rundeck_create_project | Create a new project |
rundeck_delete_project | Delete a project permanently |
rundeck_get_project_config | Get project configuration properties |
rundeck_set_project_config | Update project configuration |
Jobs (14 tools)
| Tool | Description |
|---|---|
rundeck_list_jobs | List jobs with filtering by group, name, tags |
rundeck_get_job | Get full job definition (steps, options, schedule) |
rundeck_get_job_metadata | Get job metadata (author, dates) |
rundeck_run_job | Execute a job with options and node filters |
rundeck_retry_job | Retry a failed execution |
rundeck_import_jobs | Import jobs from JSON/YAML/XML |
rundeck_export_jobs | Export job definitions |
rundeck_delete_job | Delete a job |
rundeck_bulk_delete_jobs | Delete multiple jobs at once |
rundeck_enable_job_execution | Enable job execution |
rundeck_disable_job_execution | Disable job execution |
rundeck_enable_job_schedule | Enable job scheduling |
rundeck_disable_job_schedule | Disable job scheduling |
rundeck_get_job_forecast | Get upcoming scheduled execution times |
Executions (8 tools)
| Tool | Description |
|---|---|
rundeck_list_executions | Query executions with status and time filters |
rundeck_list_running_executions | List currently running executions |
rundeck_get_execution | Get execution details (status, duration, nodes) |
rundeck_get_execution_output | Get execution log output |
rundeck_abort_execution | Abort a running execution |
rundeck_get_job_executions | List execution history for a job |
rundeck_delete_job_executions | Delete all executions for a job |
rundeck_bulk_delete_executions | Delete multiple executions by ID |
Nodes (2 tools)
| Tool | Description |
|---|---|
rundeck_list_nodes | List nodes with filter expressions |
rundeck_get_node | Get node details |
System (12 tools)
| Tool | Description |
|---|---|
rundeck_system_info | Server version, uptime, and system stats |
rundeck_get_execution_mode | Check active/passive execution mode |
rundeck_set_execution_mode | Enable or disable executions system-wide |
rundeck_get_metrics | Server performance metrics |
rundeck_healthcheck | System health check |
rundeck_list_users | List all users |
rundeck_get_log_storage | Log storage status |
rundeck_list_acl_policies | List ACL policy files |
rundeck_get_acl_policy | Get ACL policy content |
rundeck_create_acl_policy | Create ACL policy |
rundeck_update_acl_policy | Update ACL policy |
rundeck_delete_acl_policy | Delete ACL policy |
Key Storage (4 tools)
| Tool | Description |
|---|---|
rundeck_list_keys | Browse key storage tree |
rundeck_get_key_metadata | Get key metadata (not the secret value) |
rundeck_create_key | Store a password, public key, or private key |
rundeck_delete_key | Delete a stored key |
Webhooks (4 tools)
| Tool | Description |
|---|---|
rundeck_list_webhooks | List webhooks in a project |
rundeck_get_webhook | Get webhook details |
rundeck_create_webhook | Create a webhook trigger |
rundeck_delete_webhook | Delete a webhook |
Usage Examples
Once configured, you can interact with Rundeck using natural language:
- "List all projects in Rundeck"
- "Show me the running executions in the production project"
- "Run the deploy-app job in the staging project with version=2.1.0"
- "Get the logs from execution 1234"
- "Abort execution 5678"
- "Show me all failed executions in the last 24 hours"
- "List the nodes tagged as 'web' in the production project"
- "Check the Rundeck server health"
- "Disable the cleanup job schedule"
Development
# Clone the repository
git clone https://github.com/mariomorenodev/rundeck-mcp-server.git
cd rundeck-mcp-server
# Install dependencies
npm install
# Build
npm run build
# Run in development mode
RUNDECK_URL=http://localhost:4440 RUNDECK_API_TOKEN=your-token npm run dev
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the Apache License 2.0 β see the LICENSE file for details.
