Plantuml Mcp Server について
Plantuml Mcp Serverは、Claude DesktopとClaude Code向けのPlantUML図生成・共有用MCPサーバーです。図のテキストのエンコードとデコードに加え、構文エラー対応のプロンプトも提供します。
主な機能
- 01SVGまたはPNGのURL付き図の生成
- 02SVG・PNGファイルのローカル保存
- 03PlantUMLテキストのエンコードとデコード
- 04構文エラー対応プロンプトの提供
活用シーン
- 01シーケンス図、クラス図、アーキテクチャ図の作成
- 02エンコードしたURLによる図のテキスト共有
- 03よくあるPlantUML構文の検証と修正
MCP 対応
Claude DesktopやClaude CodeなどのMCPクライアントに、図の生成、エンコード、デコードのツールとplantuml_error_handlingプロンプトを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| plantuml_code | string | はい | PlantUML 図のコードです。図の URL を生成する前に、構文エラーがないか自動検証されます。 |
| format | enum | いいえ | 出力画像形式(SVG または PNG)svg | png |
| output_path | string | いいえ | 任意。図をローカルに保存するパスです。必要な親ディレクトリはすべて自動的に作成されます。デフォルトでは現在の作業ディレクトリ内に制限されます。PLANTUML_ALLOWED_DIRS 環境変数(コロン区切りのパス、または制限なしを示す "*")を設定すると、追加のディレクトリを許可できます。.svg と .png の拡張子のみ使用できます。 |
詳細
PlantUML MCP サーバー
Claude Desktop と Claude Code 向けに、PlantUML 図の生成機能を提供する Model Context Protocol (MCP) サーバーです。
利用可能なツール
generate_plantuml_diagram- 図を生成して埋め込み可能な URL(SVG/PNG)を取得します。必要に応じてローカルに保存できますencode_plantuml- URL 共有用に PlantUML コードをエンコードしますdecode_plantuml- エンコードされた文字列から PlantUML をデコードします
利用可能なプロンプト
plantuml_error_handling- PlantUML の構文エラーへの対処と自動修正ワークフローの実装に関するガイドライン
このプロンプトは、Claude のインスタンスに次の方法を包括的に指示します。
- サーバー標準の検証を使用して PlantUML の構文エラーを検出する
- よくある構文の問題に対して、インテリジェントな自動修正ワークフローを実装する
- 構造化されたエラーレスポンスを解析し、適切な修正を適用する
- 再試行ロジックを用いて、検証の失敗に適切に対処する
このプロンプトにより、タグの不足、無効な矢印構文、キーワードの誤字、引用符の不足など、よくある PlantUML のエラーを Claude が自動的に検出して修正できるため、PlantUML 図の生成の信頼性と使いやすさが向上します。
クイックセットアップ
Claude Code の場合
# Using default PlantUML server
claude mcp add plantuml --scope user --env PLANTUML_SERVER_URL=https://www.plantuml.com/plantuml -- npx plantuml-mcp-server
Claude Desktop の場合
Claude Desktop の MCP 設定(macOS では ~/Library/Application Support/Claude/claude_desktop_config.json)に、次の内容を追加します。
{
"mcpServers": {
"plantuml": {
"command": "npx",
"args": ["plantuml-mcp-server"],
"env": {
"PLANTUML_SERVER_URL": "https://www.plantuml.com/plantuml"
}
}
}
}
独自の PlantUML サーバーを使用するには、PLANTUML_SERVER_URL 環境変数を変更してください。
MCP サーバーを有効にするには、Claude Desktop/Code を再起動してください。
できること
セットアップ後、Claude に次のことを依頼できます。
- PlantUML 図を生成し、埋め込み可能な SVG/PNG の URL を取得する
- シーケンス図、クラス図、アーキテクチャ図を作成する
!includeディレクティブや外部ライブラリなど、PlantUML の高度な機能を使用する- URL 共有用に PlantUML をエンコード/デコードする
- 安全なパス制限のもとで図をローカルに保存する
図をローカルに保存する
generate_plantuml_diagram ツールは、output_path パラメーターを使用して図をローカルファイルに保存できます。
セキュリティ: デフォルトでは、現在の作業ディレクトリ内にのみファイルを保存できます。使用できる拡張子は .svg と .png のみです。
追加のディレクトリを許可するには、PLANTUML_ALLOWED_DIRS 環境変数を設定します。
# Allow specific directories (colon-separated)
PLANTUML_ALLOWED_DIRS=/home/user/diagrams:/tmp/output
# Allow any directory (use with caution)
PLANTUML_ALLOWED_DIRS=*
例
plantuml-mcp-server の C4 図
> add c4 diagram for this project in readme 'C4 diagram for plantuml-mcp-server' section
plantuml-mcp-server のシーケンス図
> add sequence diagram in readme in architecture section
OAuth2 認可コードフロー図
> show me basic oauth2 flow png, open it in browser
開発環境のセットアップ
前提条件
- Node.js 22.12.0 以降
- npm
ローカルインストール
# Clone and setup
git clone https://github.com/mzagar/plantuml-mcp-server.git
cd plantuml-mcp-server
make setup
開発コマンド
# Show all available commands
make help
# Build and run all tests
make clean build test-all
ローカル MCP スモークテスト
このチェックアウト内のコンパイル済みサーバーを、mcpc でテストします。
Node.js 22.12.0 以降、npm、Make、ネットワークアクセスが必要です。
# Install project dependencies, then build and test the local server
npm ci --ignore-scripts --no-audit --no-fund --engine-strict
make test-mcpc
mcpc が PATH にない場合、このターゲットは npm install --global --no-audit --no-fund @apify/mcpc で公式の Apify CLI をインストールします。既存のインストールはアップグレードせずに再利用し、テスト前に mcpc --version を確認します。スモークテストは mcpc 0.6.0 で検証済みです。
これはグローバル CLI のインストールであり、プロジェクトの依存関係ではありません。npm のグローバルプレフィックスへの書き込み権限が必要です。このターゲットで sudo を使用することはありません。インストールに失敗した場合、または CLI が引き続き PATH にない場合、テストは手順を表示して停止します。npm install -g @apify/mcpc で手動インストールすることもできます。
make test-mcp はエイリアスです。make test-all は、単体テストと型チェックに加え、CLI のインストール確認を含むこの MCP テストを実行します。node scripts/test-mcpc.mjs を直接実行しても、CLI はインストールされません。
このテストでは、3 つすべてのツール、プロンプト、Unicode のラウンドトリップ、図の URL、SVG/PNG ファイル、C4 のレンダリング、構文エラー、出力パスの制限を検証します。
合成図は常に https://www.plantuml.com/plantuml を通じてレンダリングするため、ネットワークアクセスが必要です。公開済みの npm サーバーや既存のユーザーセッションは使用しません。
実行プログラムは、独自の一時設定、プライベートな MCPC_HOME_DIR、作業ディレクトリ、出力ディレクトリを作成します。@local セッションはユーザーセッションから分離され、成功、失敗、中断のいずれの場合も終了します。画像と results.json は、コマンドが表示するアーティファクトディレクトリに保持されます。
成功すると PASS local mcpc smoke test が表示され、終了コード 0 で終了します。前提条件の不足、ネットワークエラー、アサーションの失敗、クリーンアップの失敗がある場合は、ゼロ以外の終了コードが返されます。
信頼できる企業 CA を使用する場合は、次のコマンドを実行します。
NODE_EXTRA_CA_CERTS=/absolute/path/to/trusted-ca.pem make test-mcpc
実行プログラムはこの設定をサーバーに転送します。TLS 検証を無効にしないでください。クリーンアップに失敗した場合は、表示されたプライベートホームを使用してください:MCPC_HOME_DIR="<artifact-directory>/mcpc" mcpc close @local。デフォルトの mcpc ホームにあるセッションは終了しないでください。
エージェント向けの手順は AGENTS.md に記載されています。
環境変数
| 変数 | 説明 | デフォルト |
|---|---|---|
PLANTUML_SERVER_URL | PlantUML サーバーの URL | https://www.plantuml.com/plantuml |
PLANTUML_ALLOWED_DIRS | output_path に指定できる追加ディレクトリ(コロン区切り、または任意のディレクトリを許可する *) | CWD のみ |
ライセンス
MIT License — 詳細は LICENSE ファイルを参照してください。
MCP レジストリへの掲載
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。