はじめに
とある案件でredmineの情報をjsonで出力しそれをRAG化してAIに読ませるというプロジェクトに参画していたのですが、
昨今のMCPを使えばそのままRedmineにAIが接続できるのではという発想から実際にやってみました。
MCPとは?
Model Context Protocol(MCP)とは、Anthropicが提唱したLLM(大規模言語モデル)と外部のデータソースやツールを連携させるためのオープンソース標準プロトコルです。AIシステムがデータやツールを「AI用のUSB-Cポート」のように利用できるようにすることで、手動設定の削減、AIの関連性の向上、開発の効率化を目指します。
※詳しくはこちらを参照下さい。
Model Context Protocol(MCP)とは?生成 AI の可能性を広げる新しい標準
導入手順
①、まずは接続確認用のRedmineを立てます。
compose.yaml
version: '3'
services:
redmine:
image: redmine:latest
ports:
- "3000:3000"
environment:
# 接続先のMySQLを指定
REDMINE_DB_MYSQL: ${REDMINE_DB_MYSQL:-localhost}
REDMINE_DB_PASSWORD: ${REDMINE_DB_PASSWORD:-root}
REDMINE_DB_USERNAME: ${REDMINE_DB_USERNAME:-root}
REDMINE_DB_DATABASE: ${REDMINE_DB_DATABASE:-redmine}
volumes:
redmine_data:
②、MCPを使う為のimageを作る
※今回はこちらを使いました。
mcp-redmine
※dockerを使って接続をします
git clone git@github.com:runekaagaard/mcp-redmine.git cd mcp-redmine docker build -t mcp-redmine .
③、mcp.jsonに設定を追加する
"mcpServers": {
"redmine": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e", "REDMINE_URL",
"-e", "REDMINE_API_KEY",
"-e", "REDMINE_REQUEST_INSTRUCTIONS",
"-v", "/path/to/instructions.md:/app/INSTRUCTIONS.md",
"mcp-redmine"
],
"env": {
"REDMINE_URL": "https://your-redmine-instance.example.com",
"REDMINE_API_KEY": "your-api-key",
"REDMINE_REQUEST_INSTRUCTIONS": "/app/INSTRUCTIONS.md"
}
}
}
}
実際に確認してみます。
今回はGithub Copilotから接続を試してみます。
まずは、Redmineに仮チケットを作成します。

Github Copilotに確認してみます。

ちゃんとチケットを取得することができました。

まとめ
AIとRedmineの連携において、従来のRAG(Retrieval-Augmented Generation)方式に代わる、Model Context Protocol(MCP)を活用した新しいアプローチを紹介しました。
従来のRAG方式は、RedmineのデータをJSONとして定期的に出力し、AIに読み込ませる手間がありました。
一方で、MCP方式では、AIが「AI用のUSB-Cポート」のようにRedmineに直接接続し、リアルタイムで最新の情報を取得できます。
これにより、データの出力・更新作業が不要になります。
AIが単に情報を「読む」だけでなく、外部システムからリアルタイムで情報を「参照・操作」する新たなアプローチが可能となります。