Pengantar
@dineug/erd-editor-mcp adalah server MCP yang memungkinkan agen pemrograman mengedit diagram erd-editor.
Claude Code, Codex, dan klien Model Context Protocol lainnya mendapatkan satu alat untuk setiap operasi pada dokumen: menambahkan tabel, mengganti nama kolom, menghubungkan dua tabel, mengimpor dump DDL, membaca kembali skema sebagai SQL.
Saat dokumen terbuka di ERD Editor pada VS Code, Obsidian, atau IDE JetBrains, agen bergabung dengan editor layaknya seorang kolaborator. Setiap perubahan muncul di kanvas saat terjadi, dan pembatalan oleh agen hanya mengembalikan perubahan yang dibuatnya sendiri. VS Code membiarkan perubahan agen tidak tersimpan hingga agen atau Anda menyimpannya, sedangkan Obsidian dan IDE JetBrains menyimpannya seperti menyimpan perubahan Anda sendiri. Jika tidak ada editor yang memuat dokumen, alat yang sama mengedit file itu sendiri.

Apa yang dapat dilakukan agen
- Membangun atau mengubah skema melalui percakapan: tabel, kolom beserta setiap opsi kolom, hubungan beserta kardinalitas serta tindakan ON DELETE dan ON UPDATE-nya, indeks, memo, warna, dan posisi di kanvas. Lihat Hubungan.
- Mengumpulkan tabel dalam grup tabel: menambahkan grup di sekeliling tabel yang disebutkan agen atau di atas suatu area kanvas, lalu mengganti namanya, memberinya warna, memindahkannya bersama tabelnya, mengubah ukurannya, memasukkan atau mengeluarkan tabel, atau menghapusnya, yang membiarkan tabelnya tetap di tempatnya. Lihat Grup tabel.
- Mengganti dokumen dengan skema yang diurai dari SQL DDL, GraphQL SDL, DBML, atau AML, atau dengan dokumen
.erd.jsonlain. Atau menambahkan skema atau dokumen tersebut di bawah diagram dan mempertahankan semua yang sudah ada, seperti yang dilakukanImport and Adddi editor. Dengan kedua cara itu,TableGroupDBML masuk sebagai grup tabel. Lihat Impor. - Membaca kembali diagram sebagai daftar id, sebagai entitas utuh, sebagai teks
.erd.jsonyang ditulis saat penyimpanan, atau sebagai DDL untuk salah satu dari delapan database, dengan pilihanStatementsdanHeaderdari tab Skema SQL. Pada skema dengan ribuan tabel, agen membaca satu halaman, beberapa tabel, atau tabel dari beberapa grup tabel dalam sekali baca. Lihat Membaca dokumen. - Mengatur database, nama database, serta skrip yang ditulis sebelum dan setelah tabel di Skema SQL, seperti
CREATE EXTENSIONsebelum tabel atauGRANTsetelahnya.erd_readmemberikan skrip saja, atau skrip di dalam DDL seluruh dokumen. Lihat Pengaturan. - Menjalankan beberapa perubahan sebagai satu kesatuan, semua atau tidak sama sekali, yang dikembalikan oleh satu kali pembatalan. Lihat erd_batch.
- Membatalkan dan mengulangi perubahannya sendiri, tidak pernah perubahan Anda.
Yang tidak dilakukan agen:
- Melakukan zoom, menggulir, atau berpindah tab. Hal-hal tersebut milik setiap orang yang melihat diagram, sehingga tidak ada alat yang melakukannya. Impor yang mengganti dokumen tetap memindahkan area pandang, bahkan saat
Viewportterkunci, seperti yang dilakukanImportdi editor: kembali ke awal kanvas pada 100%, atau, denganerd_import_json, ke area pandang dokumen yang dimuatnya, dan juga ke tab dokumen tersebut kecuali jika dokumen itu mengunciCanvas Type. Lihat Impor. - Mengubah
View Option, bahasa dan konvensi penamaan Generator Kode, tipe tanda kutip, atauRelationship DataType Sync,Maximum comment width, danColumn Orderdi tab Pengaturan. Semua itu Anda atur sendiri di editor, dan agen membacanya sebagaimana tersimpan di file. - Mengaktifkan atau menonaktifkan penguncian. Penguncian atau pengaturan di atas hanya diubah oleh
erd_import_jsonyang mengganti seluruh dokumen, menjadi penguncian dan pengaturan dokumen yang dimuatnya. Dokumen tanpa fieldlockSettings, seperti file yang disimpan oleh ekstensi VS Code sebelum4.0.0atau oleh plugin Obsidian atau JetBrains sebelum1.0.0, mengaktifkan setiap penguncian. Membatalkan impor apa pun yang mengganti dokumen mengembalikan pengaturan dan penguncian yang dimiliki dokumen sebelumnya. - Memetakan ulang hubungan ke kolom lain, seperti yang dilakukan
Map Columns. Sebagai gantinya, agen menghapus hubungan, yang membiarkan kolom kunci asingnya tetap di tempatnya, lalu menghubungkan kolom yang diinginkannya denganerd_link_columns, dalam satuerd_batchyang dikembalikan oleh satu kali pembatalan. - Menjalankan Generator Kode.
erd_readmemberikan DDL atau JSON, dan agen sendiri yang menulis kode dari hasil tersebut.
Cara kerjanya
Server ini adalah proses stdio yang dijalankan klien MCP Anda. Pada setiap panggilan, server mencari editor yang memegang dokumen: jendela VS Code, jendela vault Obsidian, atau IDE JetBrains, masing-masing dengan ekstensi atau plugin ERD Editor.
- Live — ada editor yang memiliki dokumen di workspace, vault, atau salah satu proyeknya yang terbuka, atau sedang membukanya. Server bergabung dengan sesi pengeditan editor tersebut dan perubahan masuk ke editor: tidak tersimpan di VS Code, dan tersimpan seperti perubahan Anda sendiri di Obsidian dan IDE JetBrains.
- Headless — tidak ada editor. Server memuat file, menerapkan perubahan, lalu menulis kembali file tersebut.
- Ditolak — ada editor yang memegang dokumen, tetapi hub-nya nonaktif. Server membaca dari disk tetapi tidak menulis apa pun, karena editor yang terbuka dapat menimpa file pada penyimpanan berikutnya. IDE JetBrains yang hub-nya aktif juga menolak mengubah dokumen yang hanya dipegang oleh proyek yang tidak dipercayainya, meskipun agen tetap dapat membacanya. Saat hub editor aktif tetapi ekstensi atau plugin ERD Editor pada editor tersebut menggunakan protokol hub yang berbeda dari server, setiap panggilan pada dokumen ditolak, termasuk pembacaan, dengan
protocolMismatchdan pesan yang menyebutkan sisi yang perlu diperbarui — lihat Memperbarui.
Lihat Live dan headless untuk detailnya.
Persyaratan
| Node.js | 22.12 atau yang lebih baru, untuk menjalankan server |
| Klien MCP | Claude Code, Codex, atau klien apa pun yang dapat menjalankan server stdio |
| VS Code, untuk pengeditan live | 1.101.0 atau yang lebih baru, dengan ekstensi ERD Editor 4.0.0 atau yang lebih baru |
| Obsidian, untuk pengeditan live | Aplikasi desktop 1.5.7 atau yang lebih baru, dengan plugin ERD Editor 1.0.0 atau yang lebih baru |
| IDE JetBrains, untuk pengeditan live | IDE berbasis IntelliJ 2025.2 atau yang lebih baru, dengan plugin ERD Editor 1.0.0 atau yang lebih baru |
Server 1.0.0 dan rilis di atas menggunakan protokol hub 2.
Rilis sebelumnya yang melayani agen menggunakan protokol 1: ekstensi VS Code 3.0.0 hingga 3.1.0, plugin Obsidian 0.1.0 dan 0.2.0, serta plugin JetBrains 0.9.0 dan 0.10.0.
Rilis semacam itu dan server 1.0.0 saling menolak, begitu pula server versi sebelumnya dan rilis di atas — lihat Memperbarui.
Ekstensi VS Code sebelum 3.0.0 atau plugin JetBrains sebelum 0.9.0 tidak memiliki hub, sehingga server tidak melihatnya dan mengedit file di disk, bahkan diagram yang terbuka di dalamnya.
Berikutnya: Instalasi.