About rundeck-mcp-server
rundeck-mcp-server connects MCP-compatible assistants and clients to Rundeck for job and infrastructure operations. Its tools cover project and job management, execution monitoring, nodes, secrets, webhooks, access policies, and system status.
Key features
- 01Project and job CRUD and configuration
- 02Run, retry, and schedule jobs
- 03Monitor executions and inspect logs
- 04Browse nodes and manage key storage
- 05Manage webhooks, ACL policies, and system status
Use cases
- 01Run or retry a deployment job
- 02Check running executions and read logs
- 03Find nodes using filter expressions
- 04Review Rundeck health and access policies
MCP support
Exposes Rundeck operations as MCP tools for compatible clients. It connects to a configured Rundeck instance using its URL and API token.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y rundeck-mcp-serverRUNDECK_URLRundeck server URL (e.g., http://localhost:4440)RUNDECK_API_TOKENSecretAPI token for authenticationRUNDECK_API_VERSIONRundeck API version (default: 41)RUNDECK_TIMEOUTRequest timeout in milliseconds (default: 30000)Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
50Saved tool list · updated 2w ago
This tool takes no parameters.
Details
From the project READMErundeck-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.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.