rundeck-mcp-server

rundeck-mcp-server

MCP server enabling AI assistants to manage Rundeck projects, jobs, and executions through a standardized interface.

Category
Visit Server

README

Rundeck MCP Server

A Model Context Protocol (MCP) server for Rundeck, enabling AI assistants to manage projects, jobs, and executions through a standardized interface.

Prerequisites

  • Python 3.12+
  • uv package manager
  • A Rundeck instance with API access
  • A Rundeck API Token (generate under User Profile > API Tokens in the Rundeck UI)

Quick Start

Install and run directly with uvx (no clone needed):

uvx rundeck-mcp --enable-write-tools

Or install from GitHub:

uv pip install git+https://github.com/justynroberts/rundeck-mcp-server.git

Environment Variables

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

MCP Client Configuration

Claude Code

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-tools

Or 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-tools

Claude Desktop

Add 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"
      }
    }
  }
}

Cursor

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"
      }
    }
  }
}

VS Code

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"
      }
    }
  }
}

Local Development

git clone https://github.com/justynroberts/rundeck-mcp-server.git
cd rundeck-mcp-server
uv sync --group dev

Run tests

uv run pytest

Lint and type check

uv run ruff check .
uv run pyright

Run locally

export RUNDECK_API_TOKEN=<your-token>
export RUNDECK_URL=http://localhost:4440
uv run rundeck-mcp --enable-write-tools

Available Tools

Read Tools (always available)

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

Write Tools (require --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

Job Execution Workflow

The server enforces a safe execution pattern:

  1. Discover: Use get_job to retrieve the job definition and its options
  2. Present: The AI presents option names, descriptions, defaults, required flags, and allowed values to the user
  3. Collect: The user provides values for required and desired optional parameters
  4. Execute: run_job is called with the collected option values
  5. Monitor: Use get_execution and get_execution_output to track progress

License

MIT License - Copyright (c) fintonlabs.com

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured