Lewati ke konten

Mengendalikan Restorm lewat MCP

Restorm mengekspos sebuah server MCP (Model Context Protocol). Karena itu sebuah agen AI — Claude Code, Cursor, atau klien MCP mana pun — dapat membaca proyek Anda, membuat dan menjalankan permintaan, serta mengendalikan antarmukanya.

Inilah yang memungkinkan Anda meminta “impor Swagger ini, buatlah sebuah skenario yang menguji alur pemesanannya, lalu jalankan” dan memperoleh hasil yang dapat diverifikasi, di dalam sebuah aplikasi yang tetap Anda lihat.

Servernya aktif secara bawaan. Ada dua tata kelolanya:

  • setelan Pengaturan ▸ MCP ▸ Aktifkan server MCP;
  • sebuah aturan mutlak: pada mesin tanpa tampilan, server MCP-nya tidak pernah dijalankan, apa pun setelannya. Jadi sebuah server CI tidak akan berakhir dengan mengekspos sebuah titik masuk.

Indikator MCP pada bilah status berkedip pada setiap panggilan yang masuk. Popovernya memungkinkan Anda menjeda atau melanjutkan servernya untuk sesi itu, serta membuka log MCP.

Indikator MCP pada bilah status beserta popovernya: port pendengaran servernya, nama sesi yang tersambung, dan aksi “Hentikan server MCP” serta “Lihat log”

Saat dijalankan, Restorm memilih sebuah port yang bebas, menghasilkan sebuah token akses khusus untuk prosesnya, lalu menulis sebuah file penemuan di direktori sementara sistem. Server JSON-RPC-nya mendengarkan di 127.0.0.1:<port>/mcphanya pada loopback lokal: setiap pemanggil dari luar menerima sebuah 403.

Sebuah proksi kecil menjembatani masukan standar klien MCP Anda dengan server HTTP milik Restorm:

{
"mcpServers": {
"restorm": {
"command": "node",
"args": ["scripts/mcp-launcher.mjs"]
}
}
}

Proksi itu menemukan instans yang sedang berjalan, menyuntikkan tokennya, dan tidak pernah menjalankan Restorm secara diam-diam: sebuah instans yang server MCP-nya Anda matikan akan tetap mati, disertai pesan galat yang jelas.

Bacalah port dan tokennya dari file penemuannya, lalu kirimkan permintaan JSON-RPC Anda dengan header Authorization: Bearer <token>.

Beberapa Restorm dapat berjalan secara paralel. Setiap panggilan menerima sebuah kunci khusus __session untuk menunjuk instans yang dituju. Alat list-instances, create_instance, dan terminate_instance melengkapi gambarannya.

Pembacaan · navigasi · proyek · penulisan · lingkungan dan rahasia · impor · eksekusi · skenario · instans · otomatisasi antarmuka (tangkapan layar, kueri DOM, masukan, pintasan, tema, tata letak).

Empat sumber daya juga diekspos: restorm://project, restorm://tree, restorm://active-tab, dan restorm://request/{id}.

Inventaris lengkapnya: Alat MCP.

Server MCP-nya sendiri tidak pernah dibatasi. Setiap alat memeriksa kapabilitasnya sendiri pada saat dipanggil.

  • Edisi Community — seluruh pengendalian permintaan: menjalankan, membatalkan, membaca respons dan riwayatnya, membaca aliran, mengirim pesan, mengimpor dari sebuah URL, membuka dan menutup tab, mengelola proyek, menulis ke dalam pohon, mengelola lingkungan dan variabel, pengaturan cepat, favorit, serta keenam alat firewall.
  • Edisi Pro — ranah skenario (termasuk pembacaannya), tangkapan layar, seluruh otomatisasi antarmuka, tema, mini browser, tata letak workbench, instans ganda, dan alat git.

Sebuah alat yang dibatasi tetap terdaftar — judulnya membawa akhiran (Restorm Pro) — dan mengembalikan galat yang jelas serta terbaca mesin alih-alih menghilang.

  • Loopback lokal dan token: servernya hanya mendengarkan di 127.0.0.1, dan tokennya dibandingkan dalam waktu yang konstan.
  • Rahasia: sebuah agen menerima nilai hasil resolusi dari sebuah rahasia, sama seperti bagian aplikasi lainnya — agen itu mengendalikan Restorm atas nama Anda, dengan rahasia Anda sendiri. Apa yang dijamin tipe Rahasia tetap berlaku: nilainya tidak masuk ke dalam proyek, tidak ke dalam sebuah ekspor, dan tidak menuju layanan pihak ketiga yang tidak diizinkan.
  • Efek jaringan yang nyata: run_request benar-benar memanggil sasarannya. Alur persetujuan klien MCP Anda-lah yang berperan sebagai pengaman — biarkan tetap aktif.
  • Firewall tetap berlaku: sebuah panggilan yang dipicu agen menuju origin yang tidak dikenal akan memunculkan permintaan izin yang sama seperti panggilan Anda sendiri.
  • Pencatatan: setiap panggilan muncul di dalam log MCP, lengkap dengan permintaan dan responsnya.