mcp-redmine
MCP server for Redmine that lets coding agents read and write Redmine: search issues, view histories, comment, log time, browse wiki, and download attachments. Enforces explicit user permission for any write operations.
README
Redmine MCP Server
An MCP server that lets a coding agent read and write your Redmine: search tickets, read full issue histories, post notes, log time, browse the wiki, and download attachments. Works with Claude Code, Codex, Claude Desktop, and any other MCP client.
It ships with a built-in safety rule: the agent will never create, update, comment on, or log time against a ticket unless you explicitly tell it to in that conversation.
Setup
Step 1: Install uv
uv runs the server and handles its Python dependencies for you.
curl -LsSf https://astral.sh/uv/install.sh | sh
On Windows, use powershell -c "irm https://astral.sh/uv/install.ps1 | iex".
Step 2: Download this server
git clone https://github.com/beborico1/mcp-redmine.git
cd mcp-redmine
uv sync
Note the full path you cloned into. You need it in step 4:
pwd
Step 3: Get your Redmine API key
- Log in to your Redmine.
- Go to My account (top right).
- In the right-hand sidebar, find API access key and click Show.
- Copy the key.
If you do not see that panel, your administrator has not enabled the REST API. Ask them to tick Enable REST web service under Administration → Settings → API.
Step 4: Connect it to your agent
Pick the one you use. In every case, substitute your Redmine address, your API key, and the path from step 2.
Claude Code
claude mcp add redmine \
--env REDMINE_URL=https://redmine.example.com \
--env REDMINE_API_KEY=paste_your_key_here \
-- uv --directory /full/path/to/mcp-redmine run mcp-redmine
Codex
Open ~/.codex/config.toml (create it if it does not exist) and add:
[mcp_servers.redmine]
command = "uv"
args = ["--directory", "/full/path/to/mcp-redmine", "run", "mcp-redmine"]
[mcp_servers.redmine.env]
REDMINE_URL = "https://redmine.example.com"
REDMINE_API_KEY = "paste_your_key_here"
Claude Desktop, or any other MCP client
Add this to the client's MCP config file:
{
"mcpServers": {
"redmine": {
"command": "uv",
"args": ["--directory", "/full/path/to/mcp-redmine", "run", "mcp-redmine"],
"env": {
"REDMINE_URL": "https://redmine.example.com",
"REDMINE_API_KEY": "paste_your_key_here"
}
}
}
}
Step 5: Check that it works
Restart the agent, then ask it:
What's on my Redmine dashboard?
You should get your open tickets back. That is it, you are done.
Configuration
| Variable | Required | Description |
|---|---|---|
REDMINE_URL |
yes | Base URL of your Redmine, no trailing slash |
REDMINE_API_KEY |
yes | Your personal API access key from My account |
Your API key is read from the environment only. It is never written to disk by this server, and it must never be committed to a repository.
What you can ask for
Reading
redmine_my_dashboard- your open tickets, at a glanceredmine_get_issue- one ticket in full, with its comment historyredmine_search_issues- filter by author, assignee, project, status, datesredmine_list_projects- every project you can seeredmine_list_wiki_pages,redmine_get_wiki_page- project wikisredmine_get_time_entries- logged timeredmine_download_attachment- save a ticket's files locallyredmine_find_user,redmine_get_users- resolve a name to a user IDredmine_get_statuses,redmine_get_trackers,redmine_get_priorities- reference IDs
Writing (each one needs your explicit go-ahead)
redmine_create_issue- open a new ticket, attachments includedredmine_update_issue- change status, assignee, or any fieldredmine_add_note- post a commentredmine_edit_journal- edit a comment you already postedredmine_log_time- record hours against a ticket
Ask in plain language. "Show me ticket 12345", "find everything Yuko opened this month", "draft a status update for 12345" all work; the agent picks the tool.
Troubleshooting
Every call fails with a 401. The API key is wrong, or REDMINE_API_KEY did not
reach the server. Re-copy it from My account and re-run the claude mcp add command.
Every call fails with a 404. Check REDMINE_URL. It should be the site root
(https://redmine.example.com), not a project or issue page, and it should have no
trailing slash.
The tools are not available. Restart the client after adding the server, then confirm
it is connected with claude mcp list or codex mcp list.
Searching by a person's name returns a 500. Redmine only accepts me or a numeric
user ID in author and assignee filters. Ask the agent to look the person up with
redmine_find_user first.
Requirements
Python 3.13 or newer, and a Redmine with the REST API enabled.
Recommended Servers
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.
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.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.