Allows interaction with Redmine instances to manage issues, projects, and users, providing tools to create, list, and update issues, as well as retrieve project and user information.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Redmine MCP Serverlist all open issues in the 'Website' project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Redmine MCP Server
A Model Context Protocol (MCP) server for Redmine integration, built with TypeScript following TDD methodology. This server allows AI assistants to interact with Redmine instances to manage issues, projects, and users with comprehensive security and monitoring features.
Features
Issue Management: Create, read, update, and list issues
Project Management: List and view project details
User Management: List and view user information
Error Handling: Comprehensive error handling with meaningful error messages
Type Safety: Full TypeScript implementation with proper type definitions
Installation
Configuration
The server requires two environment variables:
REDMINE_BASE_URL: The base URL of your Redmine instance (e.g.,https://redmine.example.com)REDMINE_API_KEY: Your Redmine API key (found in your account settings)
Usage
Running the Server
Building and Running
Production Deployment
Available Tools
Issue Tools
list-issues: List issues with optional filtering
Parameters:
project_id,status_id,assigned_to_id,limit,offset
create-issue: Create a new issue
Required:
project_id,subjectOptional:
description,tracker_id,status_id,priority_id,assigned_to_id
get-issue: Get details of a specific issue
Required:
id
update-issue: Update an existing issue
Required:
idOptional:
subject,description,status_id,priority_id,assigned_to_id,done_ratio
Project Tools
list-projects: List all projects
get-project: Get details of a specific project
Required:
id(can be numeric ID or string identifier)
User Tools
list-users: List all users
get-user: Get details of a specific user
Required:
id
Development
Running Tests
Running Tests with Coverage
Running in Watch Mode
Linting
Type Checking
Clean Build Directory
API Reference
RedmineClient
The core client for interacting with Redmine's REST API.
RedmineMcpServer
The MCP server that exposes Redmine functionality as MCP tools.
Error Handling
The server provides comprehensive error handling for common scenarios:
Authentication errors (401): Invalid API key
Authorization errors (403): Insufficient permissions
Not found errors (404): Resource doesn't exist
Validation errors (422): Invalid data provided
Server errors (500): Internal server issues
Network errors: Connection timeouts and network issues
Input validation: Client-side validation with detailed error messages
Logging
The server includes structured logging with configurable levels:
DEBUG: Detailed execution information and request/response data
INFO: General operational information (default)
WARN: Warning conditions that don't affect operation
ERROR: Error conditions that require attention
Configure the log level using the LOG_LEVEL environment variable:
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests for new functionality
Run the test suite
Submit a pull request
License
MIT License