Redmine MCP Server

Redmine MCP Server

A Model Context Protocol server for interacting with Redmine using its REST API, enabling the management of tickets, projects, and user data through integration with LLMs.

yonaka15

Developer Tools
Version Control
Customer Support
Visit Server

Tools

list_issues

List and search Redmine issues. Provides flexible filtering and sorting options. Supports filtering by custom fields using field IDs and patterns. Available since Redmine 1.0

create_issue

Create a new issue. Requires project ID and subject fields. Returns success or validation error status. Available since Redmine 1.0

list_projects

List all accessible projects. Shows both public projects and authorized private projects. Includes trackers, categories, modules and custom fields. Available since Redmine 1.0

update_issue

Update an existing issue. Modify any issue fields as needed. Returns success or validation error status. Available since Redmine 1.0

delete_issue

Delete an issue permanently. This action cannot be undone. Returns success status on completion. Available since Redmine 1.0

add_issue_watcher

Add a user as watcher to an issue. Enables user to receive issue updates. Available since Redmine 1.0

remove_issue_watcher

Remove a user from issue watchers. Stops issue update notifications. Available since Redmine 1.0

show_project

Get detailed project information. Specify using project ID or key. Supports retrieving additional data. Available since Redmine 1.0

create_project

Create a new project. Provide name and key. Configure optional settings like modules and trackers. Available since Redmine 1.0

update_project

Update project settings. Specify ID or key to identify project. Only specified fields will be changed. Available since Redmine 1.0

archive_project

Archive a project. Project becomes read only. Available since Redmine 5.0

unarchive_project

Restore an archived project. Project becomes editable again. Available since Redmine 5.0

delete_project

Delete project permanently. Deletes all project data and subprojects. This action cannot be undone. Available since Redmine 1.0

list_time_entries

List and search logged time records. Filter by user, project and date range. Returns up to 100 entries per request. Available since Redmine 1.1

show_time_entry

Get details of a time record. Returns complete information. Available since Redmine 1.1

create_time_entry

Record spent time on projects or issues. Hours and project or issue ID required. Activity type ID required if no default exists. Available since Redmine 1.1

update_time_entry

Update an existing time record. Modify hours, activity and comments. Cannot change project after creation. Available since Redmine 1.1

delete_time_entry

Delete a time record permanently. This action cannot be undone. Available since Redmine 1.1

list_users

List all users in the system. Shows active and locked accounts. Admin privileges required. Available since Redmine 1.1

show_user

Get details of a specific user. Use 'current' to get your own info. Returned fields depend on privileges. Available since Redmine 1.1

create_user

Create a new user account. Admin privileges required. Returns success or validation error status. Available since Redmine 1.1

update_user

Update an existing user. Admin privileges required. Returns success or validation error status. Available since Redmine 1.1

delete_user

Delete a user permanently. Admin privileges required. This action cannot be undone. Available since Redmine 1.1

README

Redmine MCP Server

This is a Model Context Protocol (MCP) server implementation for Redmine. It integrates with Redmine's REST API to provide ticket and project information to LLMs.

<a href="https://glama.ai/mcp/servers/55eg9u36cg"><img width="380" height="200" src="https://glama.ai/mcp/servers/55eg9u36cg/badge" alt="Redmine Server MCP server" /></a>

Features

Supports stable resources from Redmine REST API:

  • Issues (1.0~)
  • Projects (1.0~)
  • Users (1.1~)
  • Time Entries (1.1~)

Tools

Issues

  • Search Issues
    • Filter by project, status, assignee, etc.
    • Keyword search
    • Custom field support
  • Create/Update Issues
    • Set tracker, status, priority
    • Configure custom fields
    • Add comments
  • Delete Issues

Projects

  • Search Projects
    • Filter by active/archived/closed status
    • Keyword search
  • Get Project Details
    • Include trackers, categories information
  • Create/Update Projects
    • Configure modules and trackers
    • Set member inheritance
  • Archive/Unarchive Projects
  • Delete Projects

Time Entries

  • Search Time Entries
    • Filter by project, user, date range
  • Get Time Entry Details
  • Create/Update Time Entries
    • Record against project or issue
    • Specify activity
    • Custom field support
  • Delete Time Entries

Usage with Claude

To use this server with Claude, configure it as follows:

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

Configuration Options

  • command: Command to execute the npm package
  • args:
    • -y: Auto-respond "yes" to prompts
    • --prefix: Specify installation directory
    • Last argument specifies the package name
  • env: Environment variables
    • REDMINE_HOST: Redmine server URL
    • REDMINE_API_KEY: Your Redmine API key

Setup

Getting an API Key

  1. Enable REST API in Redmine admin settings
  2. Get API key from user settings page

Environment Variables

Set the following environment variables:

  • REDMINE_API_KEY: API key obtained from Redmine user settings
  • REDMINE_HOST: Redmine server URL (e.g., https://redmine.example.com)

Testing

Unit Tests

# Run tests
npm test

For data safety, only GET operations are included in tests.

Inspector Testing

Use MCP Inspector to verify functionality:

# Build
npm run build

# Set execute permission (important)
chmod +x dist/index.js

# Launch inspector
npx @modelcontextprotocol/inspector dist/index.js

Permissions

Some features require administrator privileges:

User-Related Operations

  • list_users: Admin required
  • create_user: Admin required
  • update_user: Admin required
  • delete_user: Admin required

Available information varies based on user permission levels. For details, see Redmine API Documentation.

Development

Requirements

  • Node.js 18 or higher
  • npm 9 or higher

Libraries

  • @modelcontextprotocol/sdk: MCP SDK
  • zod: Schema validation
  • typescript: Type system

Directory Structure

.
├── src/
│   ├── tools/            # Tool definitions
│   │   ├── issues.ts
│   │   ├── projects.ts
│   │   ├── time_entries.ts
│   │   └── index.ts
│   ├── formatters/       # Formatters
│   │   ├── issues.ts
│   │   ├── projects.ts
│   │   ├── time_entries.ts
│   │   └── index.ts
│   ├── lib/             # Common libraries
│   │   ├── client.ts     # Redmine API client
│   │   ├── config.ts     # Configuration management
│   │   └── types.ts      # Type definitions
│   ├── handlers.ts       # Request handlers
│   └── index.ts         # Entry point
├── docs/
│   └── adr/             # Architecture Decision Records
├── package.json         # Project configuration
├── tsconfig.json        # TypeScript configuration
└── README.md           # Documentation

Building

# Install dependencies
npm install

# Build
npm run build

# Start development server
npm run dev

Architecture Decision Records

Major design decisions are documented in docs/adr. Refer to these documents when adding or modifying features.

License

MIT

Related Projects

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
MCP Package Docs Server

MCP Package Docs Server

Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.

Featured
Local
TypeScript
Claude Code MCP

Claude Code MCP

An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.

Featured
Local
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.

Featured
Local
JavaScript
Gitingest-MCP

Gitingest-MCP

An MCP server for gitingest. It allows MCP clients like Claude Desktop, Cursor, Cline etc to quickly extract information about Github repositories including repository summaries, project directory structure, file contents, etc

Featured
Local
Python
Linear MCP Server

Linear MCP Server

Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.

Featured
JavaScript
mermaid-mcp-server

mermaid-mcp-server

A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.

Featured
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP server to provide Jira Tickets information to AI coding agents like Cursor

Featured
TypeScript
Linear MCP Server

Linear MCP Server

A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Featured
JavaScript