インストール
サーバーは npm に @dineug/erd-editor-mcp として公開されています。
ランタイム依存のない自己完結した 1 つのファイルで、エージェントが初めて起動するときに npx がダウンロードするため、ほかにインストールするものはありません。
Node.js 22.12 以降が必要です。
エージェントにダイアグラムをライブで編集させるには、そのダイアグラムを保持するエディタも設定します。VS Code、Obsidian、JetBrains IDE のいずれかです。 ドキュメントを扱うエディタがない場合、エージェントはディスク上のファイルを編集します。ライブとヘッドレスを参照してください。
Claude Code
プロジェクトのフォルダで実行します。
claude mcp add --transport stdio erd-editor -- npx -y @dineug/erd-editor-mcp
--transport の前に --scope project を加えると、代わりにプロジェクトの .mcp.json にサーバーが書き込まれ、プロジェクトをクローンした全員がそれを使えるようになります。
Codex
~/.codex/config.toml、または信頼済みのプロジェクトの .codex/config.toml に追加します。
[mcp_servers.erd-editor]
command = "npx"
args = ["-y", "@dineug/erd-editor-mcp"]
その他の MCP クライアント
npx -y @dineug/erd-editor-mcp を stdio サーバーとして実行します。コマンドは npx、引数は -y と @dineug/erd-editor-mcp です。
サーバーはドキュメントの相対パスを作業ディレクトリを基準に解決するため、プロジェクトのフォルダで起動してください。
MCP プロトコルのバージョン 2025-06-18、2025-03-26、2024-11-05 に対応し、それより新しいバージョンのクライアントには 2025-06-18 で応答します。
VS Code の設定
VS Code のウィンドウは、ワークスペースのフォルダにあるダイアグラムと、そのウィンドウで開いているダイアグラムを扱います。
- ERD Editor 拡張機能
4.0.0以降をインストールします。VS Code1.101.0以降が必要です。 - プロジェクトのフォルダを開き、ワークスペースを信頼します。拡張機能がエージェントに応えるのは、信頼済みのワークスペースだけです。
dineug.erd-editor.agentHub.enabled設定はオンのままにします。既定でオンです。
3.0.0 から 3.1.0 までの拡張機能とサーバー 1.0.0 は互いを拒否し、3.0.0 より前の拡張機能はエージェントに応えません。アップデートを参照してください。
拡張機能は .erd、.erd.json、.vuerd、.vuerd.json ファイルを含むワークスペースで起動するため、ユーザーがダイアグラムを開く前から、エージェントはそれらのダイアグラムを扱えます。
どれも含まないワークスペースでは、ダイアグラムを開いたときに起動し、それまではエージェントはディスク上で編集します。
| 設定 | 既定値 | 効果 |
|---|---|---|
dineug.erd-editor.agentHub.enabled | true | エージェントの MCP サーバーが、ローカルのソケット(Windows では名前付きパイプ)を通じてこのウィンドウのドキュメントを編集できるようにします。オフにした場合や信頼されていないワークスペースでは、エージェントはこのウィンドウのダイアグラムをディスクから読み取ることはできますが、エディタの裏でファイルに書き込むことは決してありません。 |
Obsidian の設定
Obsidian の保管庫のウィンドウは、その保管庫にあるダイアグラムを扱います。
- ERD Editor プラグイン
1.0.0以降を Community plugins からインストールし、有効にします。デスクトップアプリでのみ動作し、Obsidian1.5.7以降が必要です。 - Settings → ERD Editor → Coding agents はオンのままにします。既定でオンで、設定は保管庫ごとに保持されます。
それより前のプラグインとサーバー 1.0.0 は互いを拒否します。アップデートを参照してください。
保管庫のウィンドウはプラグインが読み込まれた時点からエージェントに応えるため、ユーザーがダイアグラムを開く前から、エージェントはその保管庫のダイアグラムを扱えます。 信頼の手順はありません。 名前がドットで始まるフォルダ内のファイルなど、保管庫が一覧に含めないファイルは ERD Editor で開けないため、そのファイルへの編集は拒否されます。
新しいダイアグラムの名前には .erd を付けるよう、エージェントに頼んでください。
拡張子のない名前には .erd.json が付きますが、Obsidian のファイルエクスプローラーが .erd.json ファイルを表示するのは、Settings → Files and links → Detect all file extensions がオンの間だけです。
| 設定 | 既定値 | 効果 |
|---|---|---|
| Coding agents | オン | エージェントの MCP サーバーが、ローカルのソケット(Windows では名前付きパイプ)を通じてこの保管庫のダイアグラムを編集できるようにします。オフにした場合、エージェントはこの保管庫のダイアグラムをディスクから読み取ることはできますが、エディタの裏でファイルに書き込むことは決してありません。 |
Flathub からインストールした Obsidian は Flatpak のサンドボックス内で動作し、サーバーはそこに届きません。 その場合、プラグインはエージェントに応えず、ロックファイルも置かないため、エージェントはユーザーが開いているダイアグラムであってもディスク上のファイルを編集します。 Obsidian は、外部で行われた変更の後と同じようにダイアグラムを再読み込みし、まだ保存されていないユーザーの編集はエージェントの編集に置き換えられます。 プラグインは、Coding agents をオフにするまで、保管庫を開くたびにそのことを知らせます。
JetBrains IDE の設定
JetBrains IDE は、そこで開いているすべてのプロジェクトのダイアグラムと、その ERD Editor で開いているダイアグラムを扱います。
- ERD Editor プラグイン
1.0.0以降をインストールします。JetBrains Runtime で動作する、IntelliJ ベースの IDE2025.2以降が必要です。 - プロジェクトを開き、信頼します。セーフモードで開いたプロジェクトなど、IDE が信頼していないプロジェクトでは、エージェントはダイアグラムを読み取りますが、変更することは決してありません。
- Settings | Tools | ERD Editor → Coding agents はチェックを入れたままにします。既定でオンで、IDE 全体に適用されます。
プラグイン 0.9.0 または 0.10.0 とサーバー 1.0.0 は互いを拒否し、0.9.0 より前のプラグインはエージェントに応えません。アップデートを参照してください。
IDE は最初のプロジェクトが開いた時点からエージェントに応えるため、ユーザーがダイアグラムを開く前から、エージェントはプロジェクトのダイアグラムを扱えます。
| 設定 | 既定値 | 効果 |
|---|---|---|
| Coding agents | オン | エージェントの MCP サーバーが、ローカルのソケット(Windows では名前付きパイプ)を通じてこの IDE のダイアグラムを編集できるようにします。オフにした場合、エージェントは開いているプロジェクトのダイアグラムをディスクから読み取ることはできますが、エディタの裏でそれを変更することは決してありません。 |
コーディングエージェントを使えない場合は、設定ページにそのことが表示されます。JCEF のない IDE の場合(ERD Editor も動作しません)、Linux で Flatpak としてインストールした IDE の場合、ハブを起動できなかった場合です。 その場合、IDE はロックファイルを置かず、エージェントはディスク上のファイルを編集します。 ERD Editor は、開いている間にディスク上で変更されたダイアグラムを再読み込みせず、そこでユーザーが次に編集するとダイアグラム全体がエージェントの変更の上に書き戻されるため、先にダイアグラムを閉じてください。
試してみる
- ダイアグラムのあるフォルダを開きます。VS Code では信頼したワークスペースとして、Obsidian では保管庫として、JetBrains IDE では信頼したプロジェクトとして開きます。
- 同じフォルダでエージェントを起動し、普段の言葉で頼みます。例えば 「schema.erd.json に reviews テーブルを追加して、users と products に関連付けて」 のように頼みます。
- 変更がキャンバスに反映されるのを確認します。VS Code では、
Ctrl + S(Windows/Linux) または⌘ + S(Mac) で保存するか、エージェントに保存を頼みます。Obsidian と JetBrains IDE はユーザー自身の編集と同じように変更を保存し、エージェントに保存を頼むとすぐに書き込まれます。
まだ開かれていないダイアグラムは、エージェントが最初に編集したときに、キーボードフォーカスを奪わずに ERD Editor で開きます。
エージェントは erd_open_document で新しいドキュメントを作成し、拡張子のない名前には .erd.json が付きます。
アップデート
上記のコマンドはバージョンを指定していないため、エージェントがサーバーを起動するたびに、npx が npm でサーバーの新しいリリースを確認します。
すでに動作しているサーバーは、エージェントが再び起動するまでそのリリースのままです。
サーバーは接続する前に、エディタが使うプロトコルのバージョンを確認します。
両者が異なると、そのエディタに届く呼び出しは、読み取りや erd_list_documents も含めてすべて protocolMismatch で拒否され、何も書き込まれません。
メッセージは更新が必要な側を示します。サーバーか、エディタの ERD Editor のどちらかで、ERD Editor は VS Code では拡張機能、Obsidian と JetBrains IDE ではプラグインです。
サーバー 1.0.0、VS Code の拡張機能 4.0.0、Obsidian のプラグイン 1.0.0、JetBrains のプラグイン 1.0.0 は、プロトコル 2 を使います。
それより前のサーバーはすべてプロトコル 1 を使い、エージェントに応えるそれより前のエディタのリリースもすべて同様です。VS Code の拡張機能 3.0.0 から 3.1.0、Obsidian のプラグイン 0.1.0 と 0.2.0、JetBrains のプラグイン 0.9.0 と 0.10.0 です。
そのようなエディタとサーバー 1.0.0 は互いを拒否し、それより前のサーバーとプロトコル 2 を使うエディタも互いを拒否します。
3.0.0 より前の VS Code の拡張機能や 0.9.0 より前の JetBrains のプラグインはエージェントにまったく応えないため、エージェントは、そこで開いているダイアグラムであってもディスク上のファイルを編集します。
| 組み合わせ | メッセージの末尾 |
|---|---|
サーバー 1.0.0 と、プロトコル 1 を使う拡張機能またはプラグイン | Update the ERD Editor extension or plugin in the editor until its hub speaks protocol 2. |
| それより前のサーバーと、プロトコル 2 を使う拡張機能またはプラグイン | Update the MCP server (npx -y @dineug/erd-editor-mcp@latest) until it speaks protocol 2. |
サーバーと拡張機能またはプラグインは、一緒に更新してください。
ダイアグラムを開くすべての環境で、ERD Editor も更新してください。
現在のリリースが保存したダイアグラムは、エディタで保存したものもエージェントがディスク上で編集したものも、以前のリリースでは主キーのアイコンなしで表示され、そのリリースでファイルを保存するとテーブルグループと Schema SQL のスクリプトが失われます。
VS Code の拡張機能の 3.1.0 より前のバージョン、Obsidian のプラグインの 0.2.0 より前のバージョン、JetBrains のプラグインの 0.10.0 より前のバージョンでは、ファイルを保存するときにダイアグラムの ON DELETE と ON UPDATE のアクションも失われます。
Obsidian では、プラグインを更新した後にアプリを再起動してください。再起動するまで、保管庫のウィンドウは最初に読み込んだバージョンのプラグインの ERD Editor を実行し続けます。