Biarkan agen coding Anda menggunakan browser tempat Anda sudah login.
WebBrain MCP menghubungkan Codex, Claude Code, Cursor, OpenClaw, OpenCode, dan klien stdio MCP lainnya ke profil Chromium asli Anda. Setelah pengaturan sekali jalan, cukup jelaskan tugas browser dalam bahasa alami. Agen coding Anda akan memilih dan memanggil alat WebBrain yang tepat; WebBrain menjalankan target di dalam browser dengan mode, izin per sumber, dan kontrol berhenti yang terlihat yang sama seperti di bilah sisi.
Ucapkan "gunakan WebBrain untuk merangkum dasbor yang sudah terbuka di browser saya" atau "perbarui formulir ini dengan mode Act WebBrain". Klien MCP Anda akan menerjemahkan permintaan itu menjadi panggilan alat dan mengembalikan hasilnya dalam percakapan yang sama. Contoh berformat fungsi di bagian belakang panduan ini terutama untuk debugging atau bagi pengembang klien.
Jembatan memerlukan dokumen offscreen dari ekstensi, jadi gunakanlah Chrome, Edge, Brave, Opera, atau Vivaldi. Ekstensi Firefox tetap dapat digunakan secara mandiri, tetapi tidak dapat terhubung ke server MCP ini.
Apa dimulai di mana
Klien MCP Anda meluncurkan paket npm sebagai proses anak lokal melalui stdio. Proses ini hanya mendengarkan di 127.0.0.1:17374. Ekstensi menghubungi proses tersebut, lalu menjalankan setiap tugas melalui loop agen WebBrain di tab browser yang dipilih.
Server ini bukan browser kedua dan tidak menyalin cookie. Server ini adalah titik pengalihan lokal antara klien MCP dan ekstensi. Profil browser — maka sesi terautentikasi — tidak pernah berpindah.
Sebelum menghubungkan
| Persyaratan | Yang diperiksa |
|---|---|
| Browser Chromium | Chrome, Edge, Brave, Opera, atau Vivaldi dengan ekstensi WebBrain terkini yang terpasang. |
| Node.js | Node 20 atau lebih baru. npx akan mengunduh dan meluncurkan paket. |
| Klien MCP | Klien yang mendukung server stdio lokal, seperti Codex, Claude Code, Cursor, OpenClaw, atau OpenCode. |
| Satu port lokal yang kosong | 17374 tidak boleh sudah ditempati oleh proses WebBrain MCP lain. |
| Penyedia WebBrain yang aktif | Ekstensi tetap memerlukan model WebBrain Compass, lokal, atau berbasis API yang sudah dikonfigurasi untuk menjalankan tugas yang didelegasikan. |
Daftarkan server ke klien MCP Anda
Gunakan salah satu konfigurasi khusus klien di bawah ini, cukup sekali. Ini adalah perintah pemasangan, bukan cara Anda meminta tugas browser. Setelah pendaftaran, klien akan memulai server untuk Anda dan Anda melanjutkan obrolan seperti biasa; jangan menjalankan salinan manual secara bersamaan pada port yang sama.
Aplikasi, CLI, atau ekstensi IDE Codex
codex mcp add webbrain -- npx -y @webbrain/mcp-serverCodex menyimpan server MCP di dalam ~/.codex/config.toml; aplikasi, CLI, dan ekstensi IDE pada host Codex yang sama berbagi konfigurasi tersebut. Untuk tugas browser yang panjang, buka berkas itu dan beri alat lebih banyak waktu daripada anggaran standar sekali panggil Codex:
[mcp_servers.webbrain]
command = "npx"
args = ["-y", "@webbrain/mcp-server"]
tool_timeout_sec = 360Mulai ulang aplikasi atau ekstensi IDE setelah mengubah berkas. Di CLI, jalankan codex mcp list untuk mengonfirmasi entri, dan gunakan /mcp dalam sesi Codex untuk memeriksa server yang terhubung. Lihat panduan MCP Codex resmi untuk konfigurasi host bersama dan semua opsi yang didukung.
Claude Code
claude mcp add --transport stdio webbrain -- npx -y @webbrain/mcp-serverTransport eksplisit cocok dengan konfigurasi MCP Claude Code saat ini. Setelah menambahkan, jalankan claude mcp list untuk memeriksa kesehatan server.
Cursor
Tambahkan server stdio lokal di pengaturan MCP Cursor, atau letakkan konten ini di berkas JSON MCP yang digunakan Cursor. Formatnya mengikuti format server MCP lokal Cursor:
{
"mcpServers": {
"webbrain": {
"command": "npx",
"args": ["-y", "@webbrain/mcp-server"]
}
}
}OpenCode
Tambahkan entri ini ke ~/.config/opencode/opencode.json, gunakan format server MCP lokal milik OpenCode:
{
"mcp": {
"webbrain": {
"type": "local",
"command": ["npx", "-y", "@webbrain/mcp-server"]
}
}
}OpenClaw
Daftarkan WebBrain di OpenClaw sebagai server MCP keluar. Jangan gunakan openclaw mcp serve untuk integrasi ini: perintah itu membuat OpenClaw sendiri yang berperan sebagai server, arahnya berlawanan.
openclaw mcp add webbrain \
--command npx \
--arg -y \
--arg @webbrain/mcp-server \
--timeout 360mcp add akan mendeteksi server stdio sebelum menyimpannya. Jalankan openclaw mcp status --verbose untuk memeriksa definisi yang tersimpan. Profil alat coding dan messaging yang biasa menyertakan server MCP yang terkonfigurasi; profil minimal, penolakan bundle-mcp eksplisit, atau kebijakan alat sandbox mungkin menyembunyikannya. Lihat panduan MCP OpenClaw untuk detail registri dan kebijakan saat ini.
Menjalankan secara manual
Peluncuran manual berguna untuk mendiagnosis listener, tetapi tidak diperlukan dalam penggunaan MCP yang normal:
npx -y @webbrain/mcp-serverBiarkan terminal itu tetap terbuka. Menutupnya akan menutup listener jembatan. Dari checkout sumber, jalankan npm install, npm run build, lalu npm start di dalam mcp-server/.
Arahkan WebBrain ke listener lokal
- Mulai atau mulai ulang klien MCP Anda. Server WebBrain-nya harus berjalan sebelum ekstensi dapat terhubung.
- Buka Pengaturan WebBrain. Masuk ke Pengaturan → Bridge.
- Pasang URL yang tepat. Masukkan
ws://127.0.0.1:17374/extension. - Tempel kunci pasangan. Jalankan
npx -y @webbrain/mcp-server pairing-keydi terminal (atau buka~/.webbrain/bridge-key) dan tempel kunci ke kolom Kunci pasangan. Server hanya mempercayai browser yang dapat membuktikan memegang kunci itu. Jika kolom tidak tersedia, perbarui WebBrain terlebih dahulu. - Aktifkan jembatan cloud. Status harus berubah dari "Menghubungkan" menjadi "Terhubung". Namanya karena alasan historis: target ini lokal.
- Verifikasi koneksi end-to-end. Minta klien MCP memanggil
webbrain_connection. "Connected" membuktikan klien, server lokal, listener WebSocket, dan jabat tangan ekstensi telah siap.
Ekstensi memegang satu soket jembatan keluar: WebBrain Cloud di 17373, server MCP ini di 17374, atau plugin LM Studio di 17375. Mengubah URL akan mengganti target, bukan melakukan multiplexing.
Jelaskan tugas browser dalam bahasa alami
Di Codex, Claude Code, Cursor, OpenClaw, atau OpenCode, tulis permintaan seperti menugaskannya kepada rekan kerja. Menyebut WebBrain membuat maksud Anda tegas tanpa ambigu; sertakan halaman, hasil yang diharapkan, cakupan, dan apakah perubahan diizinkan.
Membaca tanpa mengubah halaman
Gunakan WebBrain untuk membaca dasbor Stripe yang sudah terbuka di browser saya. Cantumkan pembayaran yang gagal selama tujuh hari terakhir beserta pelanggan, jumlah, mata uang, tanggal, dan alasan kegagalan. Jangan ubah apa pun.
Mengembalikan JSON yang terprediksi
Ekstrak semua invoice yang jatuh tempo dari dasbor yang sudah terbuka di browser saya menggunakan WebBrain. Kembalikan JSON yang berisi pelanggan, jumlah, mata uang, tanggal jatuh tempo, dan URL invoice. Jangan ubah apa pun.
Berinteraksi dengan halaman
Gunakan mode Act WebBrain untuk membuka catatan pelanggan yang sudah tampil di browser saya dan perbarui nama perusahaan menjadi Acme Europe. Berhenti sebelum pengiriman atau konfirmasi akhir apa pun.
Agen coding akan memilih webbrain_run untuk pembacaan atau interaksi umum, dan webbrain_extract saat diminta data terstruktur. Agen menyediakan argumen, memantau jalannya proses, dan menyajikan hasil WebBrain kembali ke dalam percakapan. Mode Ask dapat membaca dan mengekstrak; tidak dapat mengklik, mengetik, menavigasi, atau mengirim. Mode Act dapat berinteraksi, tunduk pada izin sisi browser WebBrain yang normal.
Untuk prompt pertama di atas, klien akan melakukan panggilan seperti berikut. Representasi ini berguna saat membangun atau men-debug klien MCP; pengguna biasa dapat mengabaikannya.
webbrain_run(
task: "read the open Stripe dashboard and list failed payments from the last 7 days with customer, amount, currency, date, and failure reason",
mode: "ask"
)Untuk tugas yang memerlukan interaksi, katakan dengan jelas "gunakan mode Act WebBrain" dan biarkan browser terlihat. WebBrain akan menerapkan prompt persetujuan kapabilitas per sumber yang normal.
Alat yang digunakan klien MCP untuk Anda
Biasanya Anda memilih hasil, bukan alat. Klien MCP Anda membaca deskripsi ini, memilih alat yang tepat, mengisi inputnya sesuai permintaan Anda, dan menangani panggilan lanjutan. Referensi ini ada agar Anda dapat memahami atau men-debug perilaku tersebut.
| Alat | Kegunaan | Input penting |
|---|---|---|
webbrain_run | Target browser apa pun, hanya-baca atau interaktif. | task, mode, opsional tab_id, wait, timeout_seconds, dan allow_api_mutations khusus Act. |
webbrain_extract | Mengekstrak JSON terprediksi dari data halaman terautentikasi. Selalu mode Ask. | task, output_schema, opsional tab_id, wait, dan timeout_seconds. |
webbrain_status | Memantau satu proses latar belakang atau mencantumkan semua proses yang diketahui. | Opsional run_id. Hilangkan untuk mencantumkan proses. |
webbrain_respond | Meneruskan jawaban pengguna ke proses yang dijeda. | run_id, clarify_id, answer, opsional timeout_seconds. |
webbrain_abort | Menghentikan proses yang salah atau tidak lagi diperlukan. | run_id. Tidak membatalkan tindakan yang sudah dilakukan. |
webbrain_connection | Memeriksa jabat tangan ekstensi dan memberikan perbaikan tepat sasaran saat terputus. | Tidak ada input. |
Pemeriksaan izin WebBrain berada di loop agen ekstensi. Memaparkan primitif tingkat rendah secara langsung melalui MCP akan melewati batas itu. Jika Anda memerlukan otomasi browser tingkat rendah yang deterministik (seperti Playwright), pertimbangkan server MCP lain. WebBrain melindungi sesi Anda yang sudah login dengan menjaga tindakan tetap di dalam model izin ekstensi.
Minta JSON terstruktur
Dalam penggunaan normal, sebutkan apa yang perlu diekstrak dan beri nama kolom yang diinginkan: "Gunakan WebBrain untuk mengekstrak semua invoice jatuh tempo dari dasbor yang terbuka dan kembalikan JSON berisi pelanggan, jumlah, mata uang, tanggal jatuh tempo, dan URL invoice." Klien MCP yang mampu dapat menerjemahkan kolom-kolom itu ke schema yang diperlukan dan memanggil webbrain_extract untuk Anda.
Contoh berformat fungsi di bawah menunjukkan panggilan alat yang setara untuk pengembang klien dan debugging. Jelaskan logika pemilihan di task; jelaskan hanya bentuk keluaran di output_schema.
webbrain_extract(
task: "extract every overdue invoice visible in this account; preserve the displayed currency and use ISO dates where the page provides a full date",
output_schema: {
type: "object",
properties: {
invoices: {
type: "array",
items: {
type: "object",
properties: {
customer: { type: "string" },
amount: { type: "number" },
currency: { type: "string" },
due_date: { type: "string" },
invoice_url: { type: "string" }
},
required: ["customer", "amount", "currency", "due_date"]
}
}
},
required: ["invoices"]
}
)- Gunakan root objek dengan kolom
propertiesdanrequiredyang eksplisit. - Minta data paling sempit yang Anda butuhkan. Schema tidak memberikan akses ke data yang tidak terlihat oleh sesi browser.
- Alat ini hanya-baca, tetapi teks halaman dan hasil tetap dikirim ke penyedia LLM yang dikonfigurasi di WebBrain.
- Jika hasil terlalu besar untuk snapshot persisten dari proses, status dapat melaporkan bahwa hasil yang tersimpan terpotong. Persempit permintaan lalu coba lagi.
Pahami siklus hidup proses
Sebagian besar klien MCP akan mengelola siklus hidup ini untuk Anda: mereka menunggu hasil, menampilkan pertanyaan klarifikasi WebBrain ketika masukan manusia diperlukan, dan melanjutkan dengan jawaban Anda. Panggilan eksplisit di bawah berguna bagi pengembang klien, saat menelusuri masalah, atau ketika sengaja meminta klien memulai tugas panjang di latar belakang.
Panggilan latar depan secara default menunggu. Untuk pekerjaan yang panjang, klien dapat mengatur wait: false dan menggunakan webbrain_status untuk memantau.
runningPekerjaan berlanjut di browserneeds_user_inputSampaikan pertanyaan kepada penggunacompletedHasil sudah siapfailedLihat kesalahan dan buktinyaabortedDihentikan; tindakan sebelumnya tetap berlaku# Referensi tingkat alat
# Mulai tanpa menunggu
webbrain_run(task: "compare the invoices across all visible pages", mode: "ask", wait: false)
# Pantau ID yang dikembalikan
webbrain_status(run_id: "mcp_…")Waktu tunggu proses WebBrain mengembalikan kendali ke klien MCP tetapi dengan sengaja tidak membatalkan tugas browser. Pantau run_id yang dikembalikan. Hal ini mencegah waktu tunggu diam-diam menghentikan tugas setelah tugas mungkin telah melakukan tindakan penting.
Saat WebBrain bertanya
Snapshot yang dijeda berisi pertanyaan yang dapat dibaca manusia dan clarify_id. Tampilkan pertanyaan itu kepada pengguna. Kirim jawaban mereka kata per kata; jangan menyimpulkan.
webbrain_respond(
run_id: "mcp_…",
clarify_id: "clarify_…",
answer: "Use the Acme EU account."
)Pilih otoritas terkecil
| Pilihan | Tindakan yang diizinkan | Kapan digunakan |
|---|---|---|
mode: "ask" | Membaca, merangkum, membandingkan, dan mengekstrak. Tanpa interaksi halaman. | Anda hanya memerlukan informasi. Ini adalah pilihan default. |
mode: "act" | Navigasi, klik, ketik, unduh, dan interaksi formulir melalui gerbang izin WebBrain. | Hasilnya memerlukan tindakan browser yang terlihat. |
allow_api_mutations: true | Memungkinkan proses Act menggunakan permintaan HTTP yang mengubah ketika jalur UI tidak sesuai. | Pengecualian langka yang eksplisit. Ditolak dalam mode Ask dan sebaiknya tetap mati secara default. |
Persetujuan klien MCP dan persetujuan WebBrain adalah lapisan yang terpisah. Klien Anda mungkin bertanya sebelum memanggil webbrain_run; WebBrain mungkin bertanya sebelum tindakan penting pada suatu sumber. Satu persetujuan tidak menggantikan yang lain.
Batas keamanan yang harus Anda pertahankan
- Pertahankan listener tetap lokal. Ia terikat ke
127.0.0.1. Jangan meneruskan port17374, mempublikasikannya melalui jembatan kontainer, atau mem-proxy-nya ke jaringan. - Jaga kunci pasangan dengan baik. Loopback lokal saja bukan autentikasi, sehingga server hanya mempercayai soket setelah soket itu menjawab tantangan sekali pakai dengan HMAC yang dikunci oleh kunci pasangan; kunci itu sendiri tidak pernah dikirim melalui soket. Siapa pun yang dapat membaca
~/.webbrain/bridge-keydapat berpasangan, jadi jangan menempelkan kunci ke dalam chat. Ekstensi tidak memverifikasi identitas server, jadi tetaplah menganggap kode lokal dan paket MCP sebagai perangkat lunak tepercaya. - Gunakan Ask terlebih dahulu. Pekerjaan hanya-baca lebih mudah diverifikasi dan lingkup dampaknya lebih kecil.
- Buat browser tetap terlihat untuk mode Act. Anda dapat menghentikan proses di bilah sisi; navigasi atau ketikan tak terduga harus dianggap sebagai alasan untuk berhenti.
- Ingat batas penyedia. Jembatan MCP tetap lokal, tetapi konten halaman dikirim ke penyedia model yang dikonfigurasi di WebBrain. Gunakan model lokal ketika konten harus tetap di perangkat.
- Jangan salah artikan waktu tunggu sebagai rollback. Pembatalan menghentikan langkah-langkah berikutnya; tidak dapat membatalkan email yang sudah dikirim, formulir yang sudah dikirim, pembelian, atau tindakan lain yang sudah selesai.
Untuk desain lengkap, lihat model keamanan, privasi dan alur data, serta panduan mode, keamanan, dan privasi.
Pemecahan masalah berdasarkan gejala
| Gejala | Biasanya berarti | Solusi |
|---|---|---|
| Kesalahan koneksi: kesalahan WebSocket | Tidak ada proses yang mendengarkan di URL yang dikonfigurasi. | Mulai atau mulai ulang klien MCP, pastikan port 17374, dan biarkan proses server tetap berjalan. |
webbrain_connection melaporkan tidak terhubung | Server lokal ada, tetapi ekstensi belum menyelesaikan jabat tangan. | Gunakan browser Chromium, aktifkan jembatan cloud, dan pasang URL /extension yang tepat. |
EADDRINUSE atau server langsung keluar | Klien MCP lain atau server manual sudah menempati port 17374. | Hentikan proses lain. Hanya satu server WebBrain MCP yang dapat menempati port default pada satu waktu. |
| Alat MCP tidak muncul | Klien belum memuat ulang konfigurasinya atau proses npm gagal dimulai. | Mulai ulang klien, periksa daftar/log server MCP-nya, dan pastikan Node 20+ serta akses npm. |
Alat mengembalikan running | Anggaran tunggu server atau klien habis; proses browser sengaja dibiarkan hidup. | Pantau webbrain_status dengan ID yang dikembalikan, atau mulai tugas panjang mendatang dengan wait: false. |
Proses menampilkan needs_user_input | WebBrain memerlukan keputusan manusia untuk melanjutkan. | Sampaikan pertanyaan yang persis sama, lalu panggil webbrain_respond dengan ID yang cocok. |
| Firefox tidak pernah terhubung | Firefox tidak memiliki runtime jembatan dokumen offscreen. | Gunakan Chrome, Edge, Brave, Opera, atau Vivaldi untuk MCP. Firefox tetap didukung untuk penggunaan bilah sisi langsung. |
| WebBrain Cloud atau LM Studio terputus | URL MCP menggantikan satu-satunya tujuan jembatan ekstensi. | Setelah selesai, kembalikan pengaturan ke port 17373 (Cloud) atau 17375 (LM Studio). |
Konfigurasi lingkungan
| Variabel | Default | Arti |
|---|---|---|
WEBBRAIN_BRIDGE_PORT | 17374 | Port loopback tempat ekstensi terhubung. |
WEBBRAIN_BRIDGE_PATH | /extension | Jalur WebSocket; harus cocok dengan pengaturan. |
WEBBRAIN_COMMAND_TIMEOUT_MS | 30000 | Anggaran waktu tunggu untuk satu perintah dan balasan jembatan. |
WEBBRAIN_RUN_TIMEOUT_MS | 300000 | Batas tunggu default untuk proses atau ekstraksi. |
WEBBRAIN_POLL_INTERVAL_MS | 1000 | Seberapa sering server memantau tugas yang sedang berjalan. |
Untuk klien stdio, atur variabel lingkungan di konfigurasi MCP klien tersebut. Jika Anda mengubah port atau jalur, perbarui URL jembatan cloud di Pengaturan WebBrain agar cocok secara tepat.
Menggunakan LM Studio?
LM Studio menggunakan plugin WebBrain Web Tools yang terpisah, bukan paket MCP ini. Alat fetch_url dan research_url-nya dapat membaca halaman publik tanpa ekstensi browser; alat browser-nya dapat mendelegasikan target ke sesi Chromium Anda yang sudah login melalui port 17375.
17374 ke port plugin 17375 ketika Anda memerlukan integrasi tersebut.Yang sengaja tidak dilakukan server ini
- Tidak meluncurkan browser tanpa kepala atau membuat profil browser baru.
- Tidak bekerja melalui build Firefox.
- Tidak mengekspor cookie, kredensial, atau penyimpanan sesi.
- Tidak memaparkan sekitar lima puluh primitif klik, ketik, frame, tangkapan layar, jaringan, dan DOM milik WebBrain secara langsung ke klien MCP.
- Tidak membuat jembatan aman untuk dibuka secara jarak jauh.
- Tidak menghilangkan kebutuhan akan model yang terkonfigurasi di dalam WebBrain.
Jika Anda memerlukan otomasi browser tingkat rendah yang deterministik dalam profil terisolasi, server MCP bergaya Playwright mungkin lebih cocok. Gunakan WebBrain MCP ketika kebutuhan penentunya adalah sesi browser Anda yang sudah login ditambah model keamanan WebBrain di dalam browser.
