mcpField
R
rundeck-mcp-server

rundeck-mcp-server

本地服务
github.com/mariomorenodev云与基础设施126 周前更新

关于 rundeck-mcp-server

rundeck-mcp-server 将 MCP 兼容助手和客户端连接到 Rundeck,用于作业及基础设施管理。工具涵盖项目和作业、执行监控、节点、密钥、Webhook、访问策略与系统状态。

主要功能

  1. 01项目和作业的增删改查与配置
  2. 02运行、重试和调度作业
  3. 03监控执行并查看日志
  4. 04浏览节点并管理密钥存储
  5. 05管理 Webhook、ACL 策略和系统状态

适用场景

  1. 01运行或重试部署作业
  2. 02检查正在运行的执行并查看日志
  3. 03通过过滤表达式查找节点
  4. 04检查 Rundeck 健康状态和访问策略

MCP 相关

将 Rundeck 操作作为 MCP 工具提供给兼容客户端。通过配置的 Rundeck 地址和 API 令牌连接实例。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mariomorenodev-rundeck": {
"command": "npx",
"args": [
"-y",
"rundeck-mcp-server"
],
"env": {
"RUNDECK_URL": "<RUNDECK_URL>",
"RUNDECK_API_TOKEN": "<RUNDECK_API_TOKEN>",
"RUNDECK_API_VERSION": "<RUNDECK_API_VERSION>",
"RUNDECK_TIMEOUT": "<RUNDECK_TIMEOUT>"
}
}
}
}
启动命令npx -y rundeck-mcp-server
需要配置的环境变量
RUNDECK_URLRundeck server URL (e.g., http://localhost:4440)
RUNDECK_API_TOKEN密钥API token for authentication
RUNDECK_API_VERSIONRundeck API version (default: 41)
RUNDECK_TIMEOUTRequest timeout in milliseconds (default: 30000)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmrundeck-mcp-server1.0.3

工具

50

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

rundeck-mcp-server

npm version License

这是功能最全面的 Rundeck MCP(Model Context Protocol) 服务。可通过 Claude、Cursor 或任何兼容 MCP 的客户端管理作业、执行记录、项目、节点等。

涵盖 7 个领域的 50 个工具——支持完整的增删改查操作、执行监控和系统管理。

功能

  • 项目 — 列出、创建和删除项目,并进行配置
  • 作业 — 列出、创建、运行、重试、导入/导出作业,以及启用/禁用执行和调度
  • 执行记录 — 监控正在运行的作业、获取日志、中止执行,并查询历史记录
  • 节点 — 使用筛选表达式浏览节点清单
  • 系统 — 服务器信息、运行状况检查、指标、执行模式控制
  • 密钥存储 — 管理机密、密码和 SSH 密钥
  • Webhooks — 创建和管理 webhook 触发器
  • ACL 策略 — 对系统访问控制策略执行完整的增删改查操作

快速开始

前提条件
  • Node.js 18+
  • 可访问 API 的 Rundeck 实例
  • Rundeck API 令牌(如何生成)
与 Claude Code 配合使用

添加到 MCP 设置中:

{
  "mcpServers": {
    "rundeck": {
      "command": "npx",
      "args": ["-y", "rundeck-mcp-server"],
      "env": {
        "RUNDECK_URL": "http://your-rundeck-server:4440",
        "RUNDECK_API_TOKEN": "your-api-token"
      }
    }
  }
}
与 Claude Desktop 配合使用

添加到 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"
      }
    }
  }
}
与 Cursor 配合使用

添加到 Cursor MCP 设置(.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"
      }
    }
  }
}

配置

环境变量必需默认值说明
RUNDECK_URL是—Rundeck 服务器 URL(例如,http://localhost:4440)
RUNDECK_API_TOKEN是—用于身份验证的 API 令牌
RUNDECK_API_VERSION否41Rundeck API 版本
RUNDECK_TIMEOUT否30000请求超时时间,单位为毫秒

可用工具

项目(6 个工具)
工具说明
rundeck_list_projects列出所有项目
rundeck_get_project获取项目详情和配置
rundeck_create_project创建新项目
rundeck_delete_project永久删除项目
rundeck_get_project_config获取项目配置属性
rundeck_set_project_config更新项目配置
作业(14 个工具)
工具说明
rundeck_list_jobs按组、名称和标签筛选并列出作业
rundeck_get_job获取完整的作业定义(步骤、选项、计划)
rundeck_get_job_metadata获取作业元数据(作者、日期)
rundeck_run_job使用选项和节点筛选器执行作业
rundeck_retry_job重试失败的执行
rundeck_import_jobs从 JSON/YAML/XML 导入作业
rundeck_export_jobs导出作业定义
rundeck_delete_job删除作业
rundeck_bulk_delete_jobs一次删除多个作业
rundeck_enable_job_execution启用作业执行
rundeck_disable_job_execution禁用作业执行
rundeck_enable_job_schedule启用作业调度
rundeck_disable_job_schedule禁用作业调度
rundeck_get_job_forecast获取即将到来的计划执行时间
执行(8 个工具)
工具描述
rundeck_list_executions按状态和时间筛选条件查询执行记录
rundeck_list_running_executions列出当前正在运行的执行记录
rundeck_get_execution获取执行详情(状态、持续时间、节点)
rundeck_get_execution_output获取执行日志输出
rundeck_abort_execution中止正在运行的执行
rundeck_get_job_executions列出作业的执行历史
rundeck_delete_job_executions删除作业的所有执行记录
rundeck_bulk_delete_executions按 ID 删除多个执行记录
节点(2 个工具)
工具描述
rundeck_list_nodes使用筛选表达式列出节点
rundeck_get_node获取节点详情
系统(12 个工具)
工具描述
rundeck_system_info服务版本、运行时间和系统统计信息
rundeck_get_execution_mode检查主动/被动执行模式
rundeck_set_execution_mode在整个系统范围内启用或禁用执行
rundeck_get_metrics服务性能指标
rundeck_healthcheck系统健康检查
rundeck_list_users列出所有用户
rundeck_get_log_storage日志存储状态
rundeck_list_acl_policies列出 ACL 策略文件
rundeck_get_acl_policy获取 ACL 策略内容
rundeck_create_acl_policy创建 ACL 策略
rundeck_update_acl_policy更新 ACL 策略
rundeck_delete_acl_policy删除 ACL 策略
密钥存储(4 个工具)
工具描述
rundeck_list_keys浏览密钥存储树
rundeck_get_key_metadata获取密钥元数据(不包含密钥值)
rundeck_create_key存储密码、公钥或私钥
rundeck_delete_key删除已存储的密钥
Webhook(4 个工具)
工具描述
rundeck_list_webhooks列出项目中的 Webhook
rundeck_get_webhook获取 Webhook 详情
rundeck_create_webhook创建 Webhook 触发器
rundeck_delete_webhook删除 Webhook

使用示例

完成配置后,你可以使用自然语言与 Rundeck 交互:

  • “列出 Rundeck 中的所有项目”
  • “显示生产项目中正在运行的执行记录”
  • “在预发布项目中运行 deploy-app 作业,版本为 version=2.1.0”
  • “获取执行记录 1234 的日志”
  • “中止执行记录 5678”
  • “显示过去 24 小时内所有失败的执行记录”
  • “列出生产项目中标记为 'web' 的节点”
  • “检查 Rundeck 服务的运行状况”
  • “禁用 cleanup 作业的计划”

开发

# 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

贡献

欢迎贡献!请随时提交 Pull Request。

  1. Fork 此代码库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交更改(git commit -m 'Add amazing feature')
  4. 推送到分支(git push origin feature/amazing-feature)
  5. 发起 Pull Request

许可证

本项目根据 Apache License 2.0 授权,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。