Redmine MCP Server
RedmineMCPサーバー
概要
RedmineMCPサーバーは、AIエージェントがRedmine APIを使用してRedmineプロジェクト管理ツールと連携するためのMCPサーバーです。
動作要件
Node.js 18.0.0 以上
セットアップ
1. 依存関係のインストール
npm install2. 環境変数の設定
方法A: macOS Keychain を使う(推奨)
API キーをディスクに平文で保存せず、macOS Keychain で安全に管理します。
Step 1: REDMINE_BASE_URL を ~/.zshrc に登録
echo 'export REDMINE_BASE_URL="https://tech-saisoncard.cloudmine.jp"' >> ~/.zshrc
source ~/.zshrcStep 2: REDMINE_API_KEY を Keychain に登録
# 対話形式で登録(API キーがシェル履歴に残らない)
security add-generic-password -s "redmine-api-key" -a "$USER" -w
# → プロンプトが表示されたら API キーを貼り付けて Enter登録確認:
security find-generic-password -s "redmine-api-key" -wKeychain の管理コマンド
# 削除
security delete-generic-password -s "redmine-api-key"
# 再登録
security add-generic-password -s "redmine-api-key" -a "$USER" -w3. MCP設定(.mcp.json)
Claude Codeから使用するには、対象プロジェクトのルートに .mcp.json を作成します:
{
"mcpServers": {
"redmine": {
"command": "npx",
"args": ["tsx", "/path/to/redmine-mcp-saerver/src/server.ts", "--", "--project=yumee"],
"cwd": "/path/to/redmine-mcp-saerver"
}
}
}4. Claude Code の起動
Keychain から API キーを取得して起動します:
REDMINE_API_KEY=$(security find-generic-password -s "redmine-api-key" -w) claude便利なエイリアスを設定しておくと楽です:
# ~/.zshrc に追加
alias claude-redmine='REDMINE_API_KEY=$(security find-generic-password -s "redmine-api-key" -w) claude'利用可能なツール
list_issues
Redmineのチケット一覧を取得します。
パラメータ:
status_id(任意): ステータスID(open,closed,*など)assigned_to_id(任意): 担当者ID(meで自分)limit(任意): 取得件数(デフォルト25、最大100)offset(任意): オフセット
get_issue
Redmineのチケット詳細を取得します。
パラメータ:
issue_id(必須): チケットIDinclude(任意): 追加情報(children,attachments,relations,journalsなど、カンマ区切り)
create_issue
Redmineに新しいチケットを作成します。
パラメータ:
subject(必須): チケットの題名description(任意): チケットの説明tracker_id(任意): トラッカーID(1: バグ, 2: 機能, 3: サポート など)status_id(任意): ステータスIDpriority_id(任意): 優先度ID(1: 低め, 2: 通常, 3: 高め, 4: 急いで, 5: 今すぐ)assigned_to_id(任意): 担当者IDparent_issue_id(任意): 親チケットIDstart_date(任意): 開始日(YYYY-MM-DD形式)due_date(任意): 期日(YYYY-MM-DD形式)estimated_hours(任意): 予定工数(時間)
update_issue
Redmineのチケットを更新します。
パラメータ:
issue_id(必須): チケットIDsubject(任意): チケットの題名description(任意): チケットの説明tracker_id(任意): トラッカーIDstatus_id(任意): ステータスIDpriority_id(任意): 優先度IDassigned_to_id(任意): 担当者IDdone_ratio(任意): 進捗率(0-100)notes(任意): コメント(更新時のメモ)
add_comment
Redmineのチケットにコメントを追加します。
パラメータ:
issue_id(必須): チケットIDnotes(必須): コメント内容
search_issues
Redmineのチケットをキーワードで検索します。
パラメータ:
query(必須): 検索キーワードstatus_id(任意): ステータスID(open,closed,*など)limit(任意): 取得件数(デフォルト25、最大100)
list_attachments
チケットに添付されているファイル一覧を取得します。
パラメータ:
issue_id(必須): チケットID
download_attachment
添付ファイルをダウンロードしてローカルに保存します。保存後、Claude CodeのReadツールで内容を確認できます(画像も対応)。
パラメータ:
issue_id(必須): チケットIDattachment_id(必須): 添付ファイルID(list_attachmentsで確認可能)
保存先: /tmp/redmine-attachments/{issue_id}_{attachment_id}_{filename}
セキュリティ
--projectで指定したプロジェクト以外のチケットにはアクセスできません起動時にプロジェクトの存在確認を行い、存在しない場合はエラーで終了します
APIキーは macOS Keychain で管理することを推奨します(「環境変数の設定」参照)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/utinou1860938/redmine-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server