rundeck-mcp-server
Provides tools for managing Rundeck jobs, executions, projects, nodes, system settings, key storage, webhooks, and ACL policies.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rundeck-mcp-serverlist all jobs in the Production project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Related MCP server: Rundeck MCP Server
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 |
| Yes | — | Rundeck server URL (e.g., |
| Yes | — | API token for authentication |
| No |
| Rundeck API version |
| No |
| Request timeout in milliseconds |
Available Tools
Projects (6 tools)
Tool | Description |
| List all projects |
| Get project details and configuration |
| Create a new project |
| Delete a project permanently |
| Get project configuration properties |
| Update project configuration |
Jobs (14 tools)
Tool | Description |
| List jobs with filtering by group, name, tags |
| Get full job definition (steps, options, schedule) |
| Get job metadata (author, dates) |
| Execute a job with options and node filters |
| Retry a failed execution |
| Import jobs from JSON/YAML/XML |
| Export job definitions |
| Delete a job |
| Delete multiple jobs at once |
| Enable job execution |
| Disable job execution |
| Enable job scheduling |
| Disable job scheduling |
| Get upcoming scheduled execution times |
Executions (8 tools)
Tool | Description |
| Query executions with status and time filters |
| List currently running executions |
| Get execution details (status, duration, nodes) |
| Get execution log output |
| Abort a running execution |
| List execution history for a job |
| Delete all executions for a job |
| Delete multiple executions by ID |
Nodes (2 tools)
Tool | Description |
| List nodes with filter expressions |
| Get node details |
System (12 tools)
Tool | Description |
| Server version, uptime, and system stats |
| Check active/passive execution mode |
| Enable or disable executions system-wide |
| Server performance metrics |
| System health check |
| List all users |
| Log storage status |
| List ACL policy files |
| Get ACL policy content |
| Create ACL policy |
| Update ACL policy |
| Delete ACL policy |
Key Storage (4 tools)
Tool | Description |
| Browse key storage tree |
| Get key metadata (not the secret value) |
| Store a password, public key, or private key |
| Delete a stored key |
Webhooks (4 tools)
Tool | Description |
| List webhooks in a project |
| Get webhook details |
| Create a webhook trigger |
| 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 devContributing
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.
Available Tools
50 toolsrundeck_abort_executionA
Abort a running execution. The execution will be marked as 'aborted'.
Inputs: id (required).
rundeck_bulk_delete_executionsB
Delete multiple executions by ID. This cannot be undone.
Inputs: ids (required).
rundeck_bulk_delete_jobsA
Delete multiple jobs at once. This cannot be undone.
Inputs: ids (required).
rundeck_create_acl_policyB
Create a new system ACL policy file with YAML content
Inputs: name (required), content (required).
rundeck_create_keyB
Store a new key (password, public key, or private key) in the key storage
Inputs: path (required), type (required), value (required).
rundeck_create_projectB
Create a new Rundeck project
Inputs: name (required), description, config.
rundeck_create_webhookB
Create a new webhook that triggers a job when called
Inputs: project (required), name (required), jobId (required), enabled, +1 more.
rundeck_delete_acl_policyA
Delete a system ACL policy file. This cannot be undone.
Inputs: name (required).
rundeck_delete_jobA
Permanently delete a job definition. This cannot be undone.
Inputs: id (required).
rundeck_delete_job_executionsA
Delete all execution history for a job. This cannot be undone.
Inputs: id (required).
rundeck_delete_keyA
Delete a key from the key storage. This cannot be undone.
Inputs: path (required).
rundeck_delete_projectA
Permanently delete a project and all its jobs, executions, and configuration. This cannot be undone.
Inputs: name (required).
rundeck_delete_webhookA
Delete a webhook. This cannot be undone.
Inputs: project (required), id (required).
rundeck_disable_job_executionA
Disable execution for a job. The job cannot be run until re-enabled.
Inputs: id (required).
rundeck_disable_job_scheduleA
Disable the schedule for a scheduled job. Manual execution still works.
Inputs: id (required).
rundeck_enable_job_executionB
Enable execution for a job that was previously disabled
Inputs: id (required).
rundeck_enable_job_scheduleC
Enable the schedule for a scheduled job
Inputs: id (required).
rundeck_export_jobsA
Export job definitions from a project in JSON, YAML, or XML format
Inputs: project (required), format, groupPath, jobFilter.
rundeck_get_acl_policyB
Get the content of a specific ACL policy file
Inputs: name (required).
rundeck_get_executionA
Get detailed information for a specific execution including status, duration, and nodes
Inputs: id (required).
rundeck_get_execution_modeA
Check if the server is in active or passive execution mode
Inputs: no named parameters.
rundeck_get_execution_outputB
Get log output from an execution. Use node and stepctx params to filter specific logs.
Inputs: id (required), node, stepctx, maxlines, +1 more.
rundeck_get_jobA
Get full job definition including steps, options, schedule, and notifications
Inputs: id (required), format.
rundeck_get_job_executionsA
List execution history for a specific job
Inputs: id (required), status, max, offset.
rundeck_get_job_forecastB
Get upcoming scheduled execution times for a job
Inputs: id (required), time, max.
rundeck_get_job_metadataB
Get job metadata including creation date, author, and modification info
Inputs: id (required).
rundeck_get_key_metadataA
Get metadata for a stored key (type, name, path). Does NOT return the secret value.
Inputs: path (required).
rundeck_get_log_storageA
Get log storage status including incomplete uploads and storage usage
Inputs: no named parameters.
rundeck_get_metricsA
Get server performance metrics including timers, gauges, and counters
Inputs: no named parameters.
rundeck_get_nodeA
Get detailed information for a specific node in a project
Inputs: project (required), name (required).
rundeck_get_projectC
Get project details including description, configuration, and creation info
Inputs: name (required).
rundeck_get_project_configB
Get the full configuration properties for a project
Inputs: name (required).
rundeck_get_webhookA
Get details for a specific webhook including its configuration and auth token
Inputs: project (required), id (required).
rundeck_healthcheckA
Run a server health check. Returns pass/fail status for system components.
Inputs: no named parameters.
rundeck_import_jobsB
Import job definitions into a project from JSON, YAML, or XML content
Inputs: project (required), content (required), format, dupeOption, +1 more.
rundeck_list_acl_policiesB
List all system-level ACL policy files
Inputs: no named parameters.
rundeck_list_executionsC
Query executions for a project with filters for status, job, and time range
Inputs: project (required), status, jobIdFilter, max, +2 more.
rundeck_list_jobsB
List jobs in a project with optional filtering by group, name, or tags
Inputs: project (required), groupPath, jobFilter, tags, +3 more.
rundeck_list_keysA
List keys and directories at a path in the key storage. Use to browse the key tree.
Inputs: path.
rundeck_list_nodesA
List nodes in a project with optional filter expression. Returns node inventory with hostname, OS, and tags.
Inputs: project (required), filter.
rundeck_list_projectsA
List all projects available in the Rundeck instance
Inputs: no named parameters.
rundeck_list_running_executionsB
List currently running executions in a project
Inputs: project (required).
rundeck_list_usersA
List all Rundeck users with their roles and last activity
Inputs: no named parameters.
rundeck_list_webhooksA
List all webhooks configured in a project
Inputs: project (required).
rundeck_retry_jobB
Retry a failed job execution, optionally only on previously failed nodes
Inputs: id (required), execId (required), failedNodes, options.
rundeck_run_jobB
Execute a job with optional arguments, node filter, and log level. Returns the execution ID for monitoring.
Inputs: id (required), options, nodeFilter, asUser, +2 more.
rundeck_set_execution_modeA
Enable or disable execution mode system-wide. When disabled, no jobs can run.
Inputs: mode (required).
rundeck_set_project_configA
Replace the full configuration for a project with new key-value pairs
Inputs: name (required), config (required).
rundeck_system_infoA
Get Rundeck server version, uptime, JVM stats, and system information
Inputs: no named parameters.
rundeck_update_acl_policyB
Update an existing system ACL policy file
Inputs: name (required), content (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 50 tools
Each tool targets a distinct combination of resource and action. Descriptions clearly differentiate between similar operations like disabling execution vs. disabling schedule, or getting job details vs. job metadata vs. job forecast.
All tools follow the consistent pattern 'rundeck_<verb>_<noun>' in snake_case, with no mixing of styles or irregular names.
50 tools is far above the typical 3-15 range for well-scoped servers. While Rundeck is a comprehensive platform, this many tools feels excessive for a single MCP server; many operations could be consolidated.
The tool surface covers most major Rundeck features but has notable gaps: no direct create_job or update_job (only import/export), no user creation/deletion, and no ad-hoc command execution. The set is functional but not fully complete.
Maintenance
Related MCP Connectors
- DNS-DATA RemoteDeprecatedcom.dns-data
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Deploy, monitor, and manage your OpenClaw AI assistants via natural language.
Manage uptime monitors and incidents and search logs, metrics and traces from an AI assistant.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Related MCP Servers
- FlicenseAqualityFmaintenanceEnables interaction with Rundeck instances to list jobs, execute jobs with options, and retrieve execution status and logs through natural language commands.53-
- AlicenseBqualityDmaintenanceEnables AI-driven interaction with Rundeck via CLI for managing jobs, executions, projects, and nodes without direct command line usage.1059 npm3MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Rundeck automation platform, including project and job management, execution, and system monitoring through the MCP protocol.1MIT
- AlicenseNot gradedqualityDmaintenanceMCP server enabling AI assistants to manage Rundeck projects, jobs, and executions through a standardized interface.MIT