Redmine MCP Server
# Сервер Redmine MCP
Сервер протокола контекста модели (MCP), который подключается к Redmine для получения деталей задачи по её ключу (например, PROJECT-123).
## Назначение
Этот сервер MCP действует как мост между ИИ-ассистентами и Redmine, позволяя инструментам ИИ получать подробную информацию о задачах Redmine. Когда ИИ-ассистент сталкивается с ключом задачи (например, PROJECT-123) в коде или разговоре, он может использовать этот сервер для получения полного контекста этой задачи, включая:
- Идентификатор и ключ задачи
- Название трекера (например, Ошибка, Функция)
- Тему и описание
- Комментарии/журнал
- Прямую ссылку на задачу
Это позволяет ИИ-ассистентам предоставлять более информированные ответы, понимая полный контекст упомянутых задач.
## Требования к запуску
- Node.js 20+
## Установка
Перед использованием вам надо собрать проект:
```bash
npm install
npm run build
```
## Использование
## API
Сервер предоставляет один инструмент:
### `redmine_get_issue_context`
Получить задачу Redmine по ключу.
**Параметры**:
- `taskKey` (строка): Ключ задачи, например PROJECT-123
**Возвращает**:
```json
{
"key": "PROJECT-123",
"id": 123,
"trackerName": "Feature",
"subject": "Implement new feature",
"description": "Detailed description of the feature...",
"comments": [
"First comment...",
"Second comment..."
],
"url": "https://project.my-redmine.com/issues/123"
}
```
## Настройка клиента
### Для Qwen Code
Добавьте следующее в файл конфигурации Qwen Code `settings.json`:
```json
{
"mcpServers": {
"redmine": {
"command": "node",
"args": ["dist/server.js"],
"cwd": "/path/to/redmine-mcp/folder",
"env": {
"REDMINE_BASE_URL": "https://project.my-redmine.com",
"REDMINE_API_KEY": "your_api_key_here"
},
"timeout": 60000,
"trust": true
}
}
}
```
Замените:
- `cwd` на путь до репозитория с этим MCP сервером
- `REDMINE_BASE_URL` на `https://project.cdek.ru`
- `REDMINE_API_KEY` на ваше ключ доступа
## Разработка
```bash
# Сборка
npm run build
# Режим наблюдения
npm run build:watch
```
TDQS
Scored across 1 tool
With only a single tool, there is no possibility of confusion between tools. The tool's purpose is clearly scoped to retrieving Redmine issue context by task key.
The tool name follows a clear snake_case verb_noun pattern with a server-specific prefix. With only one tool, there are no mixed conventions or inconsistencies to penalize.
A single tool for a Redmine server is far too few for the implied scope. The server name suggests a broader integration, and one tool provides minimal utility, making the count inappropriate.
The tool surface is severely incomplete for a Redmine integration. It only offers a read operation, lacking create, update, delete, list, search, or comment functionality, which are essential for meaningful issue management.