mcpField
D
Diagrammo (dgmo)

Diagrammo (dgmo)

ローカル
github.com/diagrammoメディア・デザイン31 日前に更新

Diagrammo (dgmo) について

Diagrammo (dgmo) は、簡潔な DGMO マークアップから図を生成する MCP サーバーです。MCP 対応 AI ツールの利用者向けで、ローカルで描画し、Diagrammo のエディターへ渡して編集できます。

主な機能

  1. 01図を SVG または PNG で描画
  2. 02マークアップを検証し解析エラーを報告
  3. 03チャートタイプの提案と一覧表示
  4. 04構文リファレンスと例の取得
  5. 05ブラウザーで図をプレビュー
  6. 06図の共有または Diagrammo への保存

活用シーン

  1. 01会話からシーケンス図を作成
  2. 02プロジェクト計画をガントチャート化
  3. 03描画前にマークアップを検証
  4. 04生成した図をエディターに渡す

MCP 対応

DGMO の描画、検証、チャートタイプの案内、例、プレビュー、Diagrammo の共有や Cloud スペース操作を MCP クライアント向けのツールとして公開します。描画はローカルで行われ、明示的に共有しない限り図のマークアップは外部へ送られません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"dgmo": {
"command": "npx",
"args": [
"-y",
"@diagrammo/dgmo-mcp"
]
}
}
}
起動コマンドnpx -y @diagrammo/dgmo-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@diagrammo/dgmo-mcp0.29.13

ツール

11

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
dgmostringはいDGMO 図表マークアップ。小文字の色名を末尾のトークンとして追加するとラベルに色を設定できます(例:"Sales red")。先頭を大文字にすると("Red")、色の単語を文字列として扱います。
formatenumいいえ出力形式svg | png
themeenumいいえカラーテーマlight | dark | transparent
palettestringいいえカラーパレット(slate、atlas、blueprint、tidewater、nord、catppuccin、tokyo-night)

詳細

@diagrammo/dgmo-mcp

会話から実際の図を作成 — AI ツールを離れる必要はありません。

npm version npm downloads license

この MCP サーバーを使うと、Claude(および MCP 互換のあらゆる AI ツール)で、簡潔なテキストマークアップからシーケンス図、フローチャート、ER 図、C4 アーキテクチャ図、ガントチャート、その他 40 種類以上の図を描画し、その結果を本格的なエディターに渡して調整できます。チャットで図を依頼すれば、実際の図が返ってきます。

シーケンス図C4 アーキテクチャ図
ガントチャートフローチャート

できること

自然な言葉で、たとえば「認証フローをシーケンス図にして」「第 3 四半期の計画をガントチャートにして」「サービスを C4 図で描いて」と頼むと、Claude がマークアップを作成して描画します。マークアップは読みやすく、差分も確認できます。

flowchart Mutiny Resolution
direction-tb

[Sail]     Set sail under the captain
{Trouble?} Discontent in the crew?
{Vote}     Crew vote called
[Mutiny]   Seize the ship

(Sail) -> (Trouble?)
(Trouble?) -Yes-> (Vote)
(Vote) -Mutiny-> (Mutiny)

→ 上記のフローチャートとして描画されます。描画処理はすべてローカルで行われ、図のデータがマシンの外に送信されることはありません。

ツール

ツール機能HTTP 経由
render_diagramDGMO マークアップを SVG または PNG としてレンダリングしますはい
validate_diagramマークアップをチェックし、レンダリングせずに解析エラーを報告しますはい
suggest_chart_type説明に適したチャートの種類を提案しますはい
list_chart_typesサポートされているすべてのチャートの種類を、ベータ版を示して一覧表示しますはい
get_language_reference正確な生成に役立つ DGMO 構文のドキュメントを取得しますはい
get_examplesチャートの種類に応じた実用例を取得しますはい
share_diagram共有可能な diagrammo.app の URL を取得します — 図をウェブエディターに渡せますはい
open_in_app編集するために、図を Diagrammo デスクトップアプリに直接 開きますいいえ
check_app_installedデスクトップアプリがインストールされているかどうかを報告しますいいえ
preview_diagram1 つ以上の図をレンダリングし、ブラウザーで HTML プレビュー を開きますいいえ
generate_report目次と任意のソースを含む、洗練された 複数セクションの HTML レポート を作成しますいいえ
put_space_diagramフォルダーとタイトルを指定して、図を Diagrammo Cloud のスペース に書き込みますはい
get_space_diagramID、またはフォルダーとタイトルを指定して、Cloud のスペースから図を読み込みますはい
list_space_diagramsCloud のスペースにあるすべての図を一覧表示しますはい

3 つのスペース用ツールは、図を Diagrammo Cloud に送信します。Diagrammo アカウントページで発行したスペース API キーを、サーバーの環境変数 DGMO_API_KEY として設定する必要があります。ツールの引数として渡すことはありません。これにより、キーが会話ログに残らないようにします。

share_diagram と open_in_app は、チャットの外につなぐための機能です。Claude が生成した図を、調整やスタイルの変更、埋め込みができるものにします — 詳細は以下をご覧ください。

いいえと表示されている 4 つのツールは、ブラウザーを開くか、デスクトップアプリを起動します。HTTP 経由では、あなたのマシンではなくサーバーを実行しているマシン上で動作するため、HTTP 経由では提供されません — HTTP 経由での提供をご覧ください。

MCP サーバーのその先へ

MCP サーバーは、DGMO マークアップを基盤とするエコシステム全体である Diagrammo へのエントリーポイントの 1 つです。チャットで生成し、本格的なエディターで調整して、どこにでも埋め込めます。

  • diagrammo.app — デスクトップアプリです。open_in_app を使うと、AI が生成した図をライブプレビュー、パレット、エクスポート機能とともに、アプリに直接取り込めます。
  • online.diagrammo.app — インストール不要で、ブラウザー上で使えるフル機能のエディターです。share_diagram の URL を開くと、ここに表示されます。
  • ドキュメント連携 — DGMO のフェンス付きコードブロックをドキュメントサイトに追加できます: remark-dgmo、 astro-dgmo、 docusaurus-plugin-dgmo、 fumadocs-dgmo。
  • Obsidian — コミュニティプラグイン Diagrammo Diagrams を使うと、ボルト内で DGMO をレンダリングできます。
  • CLI — npx @diagrammo/dgmo-cli file.dgmo -o out.png を実行するか、npm install -g @diagrammo/dgmo-cli でインストールできます(macOS および Linux)。

1 つのマークアップを、どこでも。 ここで生成した図は、アプリでも、ドキュメントでも、Obsidian でも同じようにレンダリングされます。どれも DGMO に対応しているためです。

→ diagrammo.app で無料で試す

セットアップ

最も簡単 — 1 つのコマンド

dgmo CLI をインストールして、すべての設定を任せます。

npm install -g @diagrammo/dgmo-cli   # macOS and Linux
dgmo install                         # auto-detects Claude Code, Codex, Claude Desktop, Cursor, …

Homebrew または pacman を使いたい場合は、diagrammo.app/dev をご覧ください。

dgmo install は検出した各アシスタントを対話なしで設定し、dgmo mcp を指定します。そのため、別途パッケージをインストールしたり、プロンプトに回答したりする必要はありません。対象を 1 つに絞るには、dgmo install claude-code(または codex、claude-desktop など)を実行します。

手動での設定

自分で設定を編集したい場合は、npx を使って任意の MCP クライアントからサーバーを指定します(グローバルインストールは不要です)。

Claude Code — .claude/settings.local.json;Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "dgmo": {
      "command": "npx",
      "args": ["-y", "@diagrammo/dgmo-mcp"]
    }
  }
}

dgmo CLI がインストール済みの場合は、{ "command": "dgmo", "args": ["mcp"] } も使用できます。保存後にクライアントを再起動すると、ツールが自動的に表示されます。

HTTP での提供

上記の設定では、サーバーを子プロセスとして起動し、標準入力と標準出力を介して通信します。そのため、サーバーとクライアントが同じマシン上にある必要があります。ホスト型エージェントプラットフォームやコンテナーを利用する場合、あるいは複数の人で 1 台のサーバーを共有する場合など、同じマシン上にないときは、代わりに HTTP エンドポイントとして起動します。

npx -y @diagrammo/dgmo-mcp --http            # http://127.0.0.1:3333/mcp
MCP_TRANSPORT=http MCP_PORT=8080 npx -y @diagrammo/dgmo-mcp

どのオプションも、設定に合わせてフラグまたは環境変数のいずれかを指定できます。

フラグ変数デフォルト説明
--httpMCP_TRANSPORT=httpオフstdio の代わりにストリーム可能な HTTP を提供します
--port <n>MCP_PORT3333接続を待ち受けるポート
--host <addr>MCP_HOST127.0.0.1バインドするインターフェイス
--path <path>MCP_PATH/mcpエンドポイントが応答するパス
--allow-host <h>MCP_ALLOWED_HOSTSループバック追加で許可する Host ヘッダー。繰り返し指定できます
--allow-origin <o>MCP_ALLOWED_ORIGINS自身のオリジン許可する Origin ヘッダー。繰り返し指定できます

各リクエストは個別に処理されます。セッションはなく、呼び出し間で保持される情報もありません。そのため、1 つのエンドポイントで複数のクライアントに同時に対応できます。

サーバー自体には認証機能がありません。 デフォルトではループバックにバインドされ、想定するよう指定されていない Host ヘッダーを含むリクエストや、--allow-origin で指定されていない、自身以外の Origin ヘッダーを含むリクエストを拒否します。これで、同じマシン上または同じコンテナー内のクライアントには十分です。より広いネットワークからアクセスできるようにする場合は、手前に独自の認証を設け、アクセスに使用するホスト名を --allow-host で指定する必要があります。ホスト名を指定せずにループバック以外のインターフェイスへバインドすると、その旨を示す警告が表示されます。

--help を実行すると、インストール済みバージョンの内容がすべて表示されます。

プライバシー

すべてのレンダリングはローカルで行われます。図のマークアップと生成された画像がマシンから外部に送信されることはありません。ただし、明示的に share_diagram を呼び出した場合を除きます(図が diagrammo.app の URL にエンコードされます)。プライバシー規約をご覧ください。

開発ハブ(AI チューニングツール)

pnpm hub

1 つのコマンド、1 つのサーバー、1 つのブラウザータブ。ハブを開くと、3 つの AI チューニング開発ツールをタブ付きシェルで利用できます。上部のタブで切り替えられるため、別々のポートやコマンドを覚える必要はありません。

  • トリガーのチューニング — suggest_chart_type を動かすフレーズ/概念の語彙を編集し、プロンプトをリアルタイムで採点して、triggers.json に保存します。
  • LLM ジャッジ — claude -p で、プロンプトに対するチャートタイプの説明を判定します。
  • ガイダンススタジオ — サーバーが提供するタイプ別のスタイリングガイダンス(dgmo の language-reference.md にある `` ブロックを get_language_reference 用に切り出したもの)を作成します。タイプを選び、AI にスタイリングを指示する方法を編集し、コミット済みのデータセットフィクスチャに対してプロンプトを実行して(実行ごとに入力が変わることはありません)、生成された DGMO とレンダリング画像を並べて確認できます。タイプ選択欄はカバレッジバーも兼ねています。「3×で比較」すると、ガイダンスなしの場合と入力したヒントを適用した場合をレンダリングして目視で確認できます。「保存」すると検証後、language-reference.md に書き戻されます。

これらのツールは開発専用であり、公開されるサーバーには含まれません。(単独で実行したい場合は、スタンドアロンの pnpm harness スクリプトと pnpm studio スクリプトを引き続き利用できます。それぞれ 1 つのツールだけを実行します。)

貢献とリリース

開発環境のセットアップとリリースワークフローについては、CONTRIBUTING.md をご覧ください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。