mcpField
R
Redmine

Redmine

本地服务
redmine-cli.dev生产力561 天前更新

关于 Redmine

Redmine 是用于管理 Redmine 项目的命令行客户端,并附带 Agent Skill 和内置 MCP 服务,支持 AI 工作流。其 MCP 工具默认只读,并支持按工具或工具组控制访问。

主要功能

  1. 01管理 Redmine 问题和项目
  2. 02输出机器可读的 JSON
  3. 03使用 jq 表达式筛选输出
  4. 04为 AI Agent 安装 Agent Skill
  5. 05运行内置 MCP 服务

适用场景

  1. 01在终端列出并查看 Redmine 问题
  2. 02在 AI Agent 工作流中使用 Redmine 数据
  3. 03限制 MCP 对特定工具组的访问

MCP 相关

内置 MCP 服务以类型化工具提供 Redmine 操作。它默认只读,并提供按工具组和单个工具设置允许及拒绝列表的功能。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"aarondpn-redmine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"REDMINE_SERVER",
"-e",
"REDMINE_API_KEY",
"-e",
"REDMINE_MCP_ENABLE_WRITES",
"ghcr.io/aarondpn/redmine-mcp:2.15.0"
],
"env": {
"REDMINE_SERVER": "<REDMINE_SERVER>",
"REDMINE_API_KEY": "<REDMINE_API_KEY>",
"REDMINE_MCP_ENABLE_WRITES": "<REDMINE_MCP_ENABLE_WRITES>"
}
}
}
}
启动命令docker run -i --rm -e REDMINE_SERVER -e REDMINE_API_KEY -e REDMINE_MCP_ENABLE_WRITES ghcr.io/aarondpn/redmine-mcp:2.15.0
需要配置的环境变量
REDMINE_SERVERBase URL of your Redmine instance, e.g. https://redmine.example.com
REDMINE_API_KEY密钥Your Redmine API key (My account -> API access key)
REDMINE_MCP_ENABLE_WRITESSet to true to also register create/update/delete tools

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

安装包
ocighcr.io/aarondpn/redmine-mcp:2.15.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

redmine-cli 标志

redmine-cli

用于Redmine项目管理的命令行界面。

English · 简体中文 · 日本語

CI 发布版本 Go 许可证

Redmine 4.x Redmine 5.x Redmine 6.x Redmine 7.x

安装 · 快速入门 · AI Agent

安装

Homebrew(macOS 和 Linux)
brew tap aarondpn/tap
brew install redmine

此外还会安装 bash、zsh 和 fish 的 shell 补全功能。

快速安装脚本
curl -fsSL https://raw.githubusercontent.com/aarondpn/redmine-cli/main/install.sh | bash

自动检测操作系统和架构,下载最新版本并验证校验和,然后安装到 ~/.local/bin。如果已安装并登录较新的 GitHub CLI,脚本还会使用 gh attestation verify 验证版本的构建证明;若验证失败,则拒绝安装。如果没有这样的 gh,脚本只会在校验和检查后安装,并打印一条警告,附上供你自行验证版本的命令。设置 REDMINE_CLI_VERSION=<tag> 可安装指定版本;早于 v2.11.2 的版本没有证明,因此使用已登录的 gh 固定安装这类版本时,还需要设置 REDMINE_CLI_SKIP_ATTESTATION=1。详情请参阅安装文档。

使用 Go 安装
go install github.com/aarondpn/redmine-cli/v2/cmd/redmine@latest
手动下载

从 GitHub Releases 下载适用于你平台的最新版本:

平台架构下载
Linuxx86_64redmine-cli-linux-amd64.tar.gz
LinuxARM64redmine-cli-linux-arm64.tar.gz
macOSIntelredmine-cli-darwin-amd64.tar.gz
macOSApple Siliconredmine-cli-darwin-arm64.tar.gz
Windowsx86_64redmine-cli-windows-amd64.zip
更新
redmine update

下载最新版本,并在替换二进制文件前验证其 SHA256 校验和以及 GitHub 工件证明(来自此仓库发布工作流的 SLSA 来源证明,通过 Sigstore 验证)。任一检查失败都会拒绝更新;--skip-attestation 会在警告后退回到仅验证校验和。

开始使用

# Configure your Redmine server and API key
redmine auth login

# List issues
redmine issues list

# View a specific issue
redmine issues view 123

# Log time
redmine time log

# Script it: JSON output filtered with the built-in --jq
redmine issues list --project myproject --jq '.[].id'
redmine issues get 123 --jq '.status.name'

运行 redmine --help 查看所有可用命令。

-o json 会输出机器可读的 JSON,-q/--jq <expression> 可对其进行筛选(字符串会直接输出,其他内容均以 JSON 格式输出)。错误始终输出到 stderr;在 JSON 模式下,错误会以单行 {"error": {...}} 封装的形式显示在 stderr 的最后一行,stdout 保持为空,退出码为非零。请参阅输出格式。

与 AI Agent 配合使用

redmine-cli 提供 Agent Skill(开放的 SKILL.md 标准,受 35+ 个 Agent 支持)和内置 MCP 服务。二者均不绑定特定厂商——选择与你的工具匹配的一行命令:

工具一行安装命令
任意 Agent(技能)npx skills add aarondpn/redmine-cli
任意 MCP 主机redmine mcp serve(然后添加到主机配置中)
Docker(仅 MCP)docker run -i --rm -e REDMINE_SERVER -e REDMINE_API_KEY ghcr.io/aarondpn/redmine-mcp
Claude Code/plugin marketplace add aarondpn/redmine-cli,然后运行 /plugin install redmine
Codex CLIcodex plugin marketplace add aarondpn/redmine-cli,然后运行 /plugins(从已添加的市场安装 Redmine)
Gemini CLIgemini extensions install https://github.com/aarondpn/redmine-cli

该技能会教 Agent 掌握 CLI 中不明显的部分(输出格式、名称解析、分页和常见工作流)。MCP 服务将相同操作作为类型化工具调用提供,默认只读,并支持按组和按工具设置允许列表与拒绝列表。

完整配置、针对不同主机的配置片段(Claude Desktop、Cursor、Zed、VS Code)以及写入工具的启用控制,请参阅 AI Agent 集成指南。

开发

如需使用 Docker 在真实 Redmine 实例上进行本地端到端测试(支持 Redmine 4.2、5.1、6.1、7.0),请参阅 e2e/README.md。

评论

支持 Markdown

第一次接触 MCP?

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

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