mcp-server-redmine

Redmine の API を model-context-protocol (MCP) ツールとして公開するサーバ。LLM エージェントがチケット(issue)の検索・取得・操作を Tool Call 経由で行えるようにする。TypeScript 製。

拡張作業

公開時点では実装途中で、チケット操作は一覧(list_issues)しかなかった。そこで search_issue / show_issue(コメント = journals を include で取得)などの Tool を自前で追加した。MCP の Tool 定義・Tool ハンドラ・Redmine API client が層として綺麗に分離されており、追加は容易だったと記録されている。

Tool 定義は JSON Schema(inputSchema)で記述し、ハンドラは { content: [{type, text}], isError } 形式の ToolResponse を返す。

既知の落とし穴

  • inputSchema のトップレベルに oneOf / allOf / anyOf を置くと、Anthropic API 経由の goose-mcp-agent400 Bad Requestinput_schema does not support oneOf...)になる。

関連実装

API 網羅性では OpenAPI spec を読み込む別実装 mcp-redmine(runekaagaard)の方が広い、と後に評価されている。クライアントとしては roo-codegoose-mcp-agent・mcp-client-cli で検証された。

関連: model-context-protocolhuman-as-mcp-tool