Rundeck Mcp Server — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Rundeck Mcp Server (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server for Rundeck, enabling AI assistants to manage projects, jobs, and executions through a standardized interface.
Install and run directly with uvx (no clone needed):
uvx rundeck-mcp --enable-write-toolsOr install from GitHub:
uv pip install git+https://github.com/justynroberts/rundeck-mcp-server.git| Variable | Required | Default | Description |
|---|---|---|---|
RUNDECK_API_TOKEN | Yes | - | Rundeck API authentication token |
RUNDECK_URL | No | http://localhost:4440 | Rundeck server base URL |
RUNDECK_API_VERSION | No | 41 | Rundeck API version |
From a local clone:
git clone https://github.com/justynroberts/rundeck-mcp-server.git
claude mcp add rundeck \
-e RUNDECK_API_TOKEN=<your-api-token> \
-e RUNDECK_URL=http://your-rundeck-server:4440 \
-- uv run --directory /path/to/rundeck-mcp-server rundeck-mcp --enable-write-toolsOr add manually to ~/.claude/settings.json:
{
"mcpServers": {
"rundeck": {
"command": "uv",
"args": [
"run", "--directory", "/path/to/rundeck-mcp-server",
"rundeck-mcp", "--enable-write-tools"
],
"env": {
"RUNDECK_API_TOKEN": "<your-api-token>",
"RUNDECK_URL": "http://your-rundeck-server:4440"
}
}
}
}From PyPI (once published):
claude mcp add rundeck \
-e RUNDECK_API_TOKEN=<your-api-token> \
-e RUNDECK_URL=http://your-rundeck-server:4440 \
-- uvx rundeck-mcp --enable-write-toolsAdd to your Claude Desktop MCP configuration:
{
"mcpServers": {
"rundeck": {
"command": "uvx",
"args": ["rundeck-mcp", "--enable-write-tools"],
"env": {
"RUNDECK_API_TOKEN": "<your-api-token>",
"RUNDECK_URL": "http://your-rundeck-server:4440"
}
}
}
}Add to .cursor/mcp.json:
{
"mcpServers": {
"rundeck": {
"command": "uvx",
"args": ["rundeck-mcp", "--enable-write-tools"],
"env": {
"RUNDECK_API_TOKEN": "<your-api-token>",
"RUNDECK_URL": "http://your-rundeck-server:4440"
}
}
}
}Add to .vscode/mcp.json:
{
"servers": {
"rundeck": {
"command": "uvx",
"args": ["rundeck-mcp", "--enable-write-tools"],
"env": {
"RUNDECK_API_TOKEN": "<your-api-token>",
"RUNDECK_URL": "http://your-rundeck-server:4440"
}
}
}
}git clone https://github.com/justynroberts/rundeck-mcp-server.git
cd rundeck-mcp-server
uv sync --group devuv run pytestuv run ruff check .
uv run pyrightexport RUNDECK_API_TOKEN=<your-token>
export RUNDECK_URL=http://localhost:4440
uv run rundeck-mcp --enable-write-tools| Tool | Description |
|---|---|
list_projects | List all Rundeck projects |
get_project | Get details for a specific project |
list_jobs | List jobs in a project with optional filtering |
get_job | Get full job definition including options and steps |
get_execution | Get current status of a job execution |
list_executions_for_job | List recent executions for a job |
get_execution_output | Get log output from an execution |
--enable-write-tools)| Tool | Description |
|---|---|
create_project | Create a new Rundeck project |
import_job_yaml | Import a job from YAML definition |
delete_job | Delete a job |
run_job | Execute a job with optional parameters |
abort_execution | Abort a running execution |
The server enforces a safe execution pattern:
get_job to retrieve the job definition and its optionsrun_job is called with the collected option valuesget_execution and get_execution_output to track progressMIT License - Copyright (c) fintonlabs.com
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.