ポートフォリオに戻る

プロジェクト詳細 ①

Redmine連携 AI分析エージェント

Redmine連携 AI分析エージェント

自然言語でRedmineのプロジェクト情報を問い合わせ、LLMが進捗・遅延要因・品質状況を分析して返すAIツール。MCPをLLMと業務システムの接続層として設計した、最初のAI活用案件です。

Python LLM (OpenAI API) MCP Redmine API REST API Prompt Engineering

プロジェクト概要

チャットから自然言語で聞くと、LLMがRedmineの状況を分析して返す仕組み。

プロジェクト管理に必要な情報はRedmineに蓄積されますが、人が毎回チケットを見て整理するのは負荷が高い作業でした。そこでMCP(Model Context Protocol)をLLMとRedmine APIの接続層として設計し、必要なデータをLLMが取得・分析できるようにしました。単なるデータ閲覧ではなく、状況を整理して意思決定を支援することを狙った社内PoCです。

背景・課題

  • 情報はRedmineにあるが人手整理の負荷が高い
  • 進捗・遅延・品質を都度確認するのが手間
  • チケットデータをLLMが扱える形に整える必要

主な機能

  • チャットからの自然言語問い合わせ
  • プロジェクト進捗の確認
  • 遅延要因の分析
  • 品質状況の把握・要約

担当(役割)

  • MCPツールの設計・開発
  • Redmine API連携(データ取得処理)
  • プロジェクト分析用プロンプト設計
  • チャットからのAI分析機能の実装

アーキテクチャ

システム構成

チャットの質問を起点に、LLMがMCP経由でRedmineのデータを取得し、分析結果を返すまでの流れです。

flowchart LR
    C["Chat UI(自然言語)"]
    L["LLM(分析・要約)"]
    M["MCP ツール層"]
    A["Redmine API"]
    D["チケット / プロジェクトデータ"]
    O["分析結果:進捗 / 遅延要因 / 品質"]
    C --> L
    L <--> M
    M <--> A
    A --> D
    L --> O

MCPを接続層にした理由

LLMとRedmineを直接つなぐのではなく、MCPを間に置くことで、取得できるデータと操作を明確に定義し、LLMが安全に業務データを扱える形にしました。

プロンプト設計の勘所

自然言語の質問に対し「どのデータを取得し、どう分析させるか」を設計する部分が肝で、取得結果をLLMが分析しやすい形へ整えることを重視しました。