Redmine

Provides Redmine data via MCP for issues, projects, users, and time entries with create/update/delete capabilities where permitted.
  • typescript

0

GitHub Stars

typescript

Language

7 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "mcp-mirror-yonaka15_mcp-server-redmine": {
      "command": "npx",
      "args": [
        "-y",
        "--prefix",
        "/path/to/mcp-server-redmine",
        "mcp-server-redmine"
      ],
      "env": {
        "REDMINE_HOST": "https://your-redmine.example.com",
        "REDMINE_API_KEY": "your-api-key-here"
      }
    }
  }
}

This MCP server provides a bridge between Redmine and Model Context Protocol clients, enabling secure, structured access to Redmine data such as issues, projects, users, and time entries for use by language models and other MCP-enabled tools.

How to use

You run the MCP server locally and connect your MCP client to it. The server exposes Redmine data through MCP endpoints, allowing you to query issues, projects, users, and time entries, as well as perform create, update, and delete operations where permitted by your Redmine credentials. Provide your Redmine host and API key as environment variables, then start the server and point your MCP client at the local process or configured URL.

How to install

Prerequisites you need before installation: Node.js 18 or higher, npm 9 or higher.

Install dependencies and build the server, then run the development server.

# Install dependencies
npm install

# Build the project
npm run build

# Start the development server (example during development)
npm run dev

Configuration and security

Configure how the MCP server connects to Redmine by setting environment variables for the host and API key. The following variables are used by the server when you run it from your MCP client configuration.

{
  "mcp-server-redmine": {
    "command": "npx",
    "args": [
      "-y",
      "--prefix",
      "/path/to/mcp-server-redmine",
      "mcp-server-redmine"
    ],
    "env": {
      "REDMINE_HOST": "https://your-redmine.example.com",
      "REDMINE_API_KEY": "your-api-key-here"
    }
  }
}

Testing

Run unit tests to verify GET-based read operations are functioning safely. You can also verify the runtime using the MCP Inspector to build, set permissions, and launch the inspector against the built server.

# Run tests
npm test

# Build and inspect (example)
npm run build
chmod +x dist/index.js
npx @modelcontextprotocol/inspector dist/index.js

Notes

The server relies on a Redmine REST API, so you must enable REST API access on your Redmine instance and obtain an API key from your user settings. The server supports a wide range of Redmine resources and operations, including issues, projects, time entries, and user management actions that your Redmine permissions allow.

Development

Development requires Node.js 18+ and npm 9+. The project uses MCP SDK, runtime type validation, and a modular structure with separate tools and formatters for each Redmine resource.

Available tools

list_issues

Query issues with optional filters such as project, status, assignee, and keywords.

create_issue

Create a new issue with specified tracker, status, priority, and custom fields; can include comments.

update_issue

Modify an existing issue, updating fields and adding comments.

delete_issue

Remove an issue from Redmine.

list_projects

Search projects with filters like active/archived and keyword matching.

get_project

Get detailed information about a project, including trackers and categories.

create_project

Create a new project with modules, trackers, and member inheritance options.

update_project

Update project details and configurations.

archive_project

Archive or unarchive a project.

delete_project

Delete a project.

list_time_entries

Search time entries by project, user, or date range.

get_time_entry

Get details for a specific time entry.

create_time_entry

Create or update a time entry with activity and optional custom fields.

update_time_entry

Modify an existing time entry.

delete_time_entry

Delete a time entry.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational