LocalCan

resmi

Memberikan agen AI URL publik (tunnel) untuk localhost, inspeksi lalu lintas HTTP langsung, publikasi snapshot, dan kontrol akses.

Apa yang bisa Anda lakukan dengan LocalCan MCP?

  • Memeriksa lalu lintas yang ditangkap — Minta pertukaran terbaru dengan list_traffic, filter berdasarkan host, proyek, metode, atau kode status, lalu telusuri detailnya dengan get_exchange.
  • Kelola URL Publik — Buat tunnel dengan create_public_url atau add_public_url, periksa status melalui get_public_url_status, dan jeda, lanjutkan, atau hapus sesuai kebutuhan.
  • Terbitkan dan segarkan Snapshot — Gunakan publish_snapshot untuk membagikan folder di URL baru, atau update_snapshot untuk menerbitkan ulang snapshot yang sudah ada agar tetap dapat diakses secara offline.
  • Kontrol perlindungan akses — Lindungi URL Publik dengan kata sandi menggunakan set_password, periksa perlindungan saat ini melalui get_access_status, atau hapus dengan clear_access.
  • Pantau status penangkapan — Periksa apakah penangkapan lalu lintas aktif dan berapa banyak yang di-buffer dengan get_status, dan aktifkan melalui enable_capture saat diperlukan.

Dokumentasi

Server MCP


Jalankan server Model Context Protocol LocalCan dan hubungkan ke host MCP Anda, dengan referensi lengkap alat dan sakelar.

localcan mcp menjalankan server Model Context Protocol melalui stdio. Host MCP (Claude Code, Codex, Cursor, Claude Desktop, dan lainnya) meluncurkannya dan memanggil alat LocalCan untuk membaca lalu lintas yang ditangkap, mengelola Public URL (terowongan), dan menerbitkan Snapshot. LocalCan harus berjalan agar alat dapat mengembalikan data, jadi buka aplikasi desktop atau jalankan localcan start -d terlebih dahulu.

Alat

Server mengekspos dua puluh alat. Pembacaan berfungsi langsung. Sebelas alat yang mengubah sesuatu memerlukan akses tulis, yang nonaktif secara default (lihat sakelar di bawah). Membuat atau menambahkan Public URL memerlukan lisensi aktif. Menerbitkan Snapshot dan melindungi URL dengan kata sandi memerlukan paket berlangganan, sehingga lisensi abadi ditolak meskipun masih dapat membuka Public URL. Tanpa lisensi, alat yang dibatasi mengembalikan pesan aktivasi yang jelas, sementara menjeda, melanjutkan, dan menghapus URL yang ada tetap berfungsi.

Traffic:

AlatFungsinyaParameter
get_statusMelaporkan apakah penangkapan aktif dan berapa banyak lalu lintas yang di-buffer.tidak ada
enable_captureMengaktifkan penangkapan. Penangkapan nonaktif secara default dan disetel ulang saat daemon dimulai ulang.tidak ada
list_trafficMencantumkan pertukaran terbaru, yang terbaru terlebih dahulu.last (default 20), substring host, project id, method, status (kode pasti atau kelas seperti 5xx)
get_exchangeMengembalikan satu pertukaran berdasarkan id.id wajib (id lengkap atau awalan unik apa pun), format salah satu dari markdown, curl, http, har, json (default markdown), include_response (default true)

Pertukaran adalah permintaan yang diteruskan LocalCan ke backend Anda, bukan salinan byte-per-byte dari permintaan asli klien. Lihat Traffic untuk model data.

Public URLs:

AlatFungsinyaParameter
list_servicesMencantumkan layanan yang dilayani LocalCan, masing-masing dengan pegangan /, target lokalnya, dan jumlah titik akhir.tidak ada
list_public_urlsMencantumkan Public URL Anda, termasuk yang dijeda, masing-masing dengan statusnya (aktif, dijeda, error, mulai, nonaktif) dan apa yang dilayaninya (live, snapshot, none). Setiap baris juga memuat akses: none, password, link, atau nama kebijakan tim. URL yang diparkir yang melayani Snapshot terbaca statusnya paused tetapi menyajikan snapshot, jadi jawab "apakah tautannya aktif?" berdasarkan penyajian, bukan status.tidak ada
get_public_url_statusMelaporkan status satu Public URL, apa yang dilayaninya (live, snapshot, none), dan perlindungan aksesnya, dengan kosakata yang sama dengan daftar.url wajib
create_public_urlMembuat Public URL untuk port lokal dalam proyek baru dan mengembalikan alamat yang ditetapkan, seperti my-app-12.localcan.dev. Memerlukan beberapa detik. Jika terowongan ditolak (misalnya batas Public URL paket Anda) atau waktu habis, upaya dibatalkan dan tidak ada yang tertinggal. Untuk tautan yang tetap dapat dijangkau setelah mesin Anda offline, tambahkan Snapshot dengan add_snapshot.port wajib, name opsional (membentuk alamat), protocol http atau tcp (default http)
add_public_urlMenambahkan Public URL ke layanan yang sudah Anda konfigurasikan. Protokol mengikuti target layanan, sehingga target tcp:// mendapat terowongan TCP. Pembatalan yang sama saat gagal seperti create.pegangan service wajib
pause_public_urlMembawa Public URL offline sambil mempertahankan alamatnya, sehingga dapat dilanjutkan nanti. Alamat *.localcan.dev yang dibuat tetap dicadangkan selama 7 hari saat dijeda, domain kustom tidak pernah kedaluwarsa.url wajib
resume_public_urlMengembalikan Public URL yang dijeda ke online di alamat yang sama.url wajib
remove_public_urlMenghapus Public URL secara permanen. Alamat yang dibuat dilepaskan, domain kustom tetap milik Anda dan dapat ditambahkan lagi. Menghapus titik akhir terakhir layanan juga menghapus layanan dan proyek yang kosong. Untuk mempertahankan alamat tetapi berhenti menyajikan Snapshot, gunakan remove_snapshot. Ditandai destruktif, sehingga host biasanya meminta konfirmasi.url wajib

Snapshot (lihat Snapshots):

AlatFungsinyaParameter
publish_snapshotMenerbitkan folder sebagai Snapshot di Public URL baru, sehingga tetap dapat dijangkau setelah mesin Anda offline. Arahkan ke output statis yang sudah dibangun jika memungkinkan, atau ke akar proyek agar LocalCan membangunnya (dependensi harus sudah terinstal). Mengembalikan alamat baru. Selalu membuat URL baru, jadi untuk menyegarkan pratinjau yang ada gunakan update_snapshot.path wajib (absolut), name opsional (membentuk alamat)
add_snapshotMenambahkan Snapshot ke Public URL yang sudah Anda miliki, sehingga tautan yang ada tetap menyajikan konten offline. Mengarah ke update_snapshot jika URL sudah memilikinya.url dan path wajib
update_snapshotMenerbitkan ulang Snapshot di Public URL. Hapus path untuk membangun ulang dari sumber yang sama, atau berikan untuk mengarahkan ulang ke folder lain. Mengarah ke add_snapshot jika URL tidak memilikinya.url wajib, path opsional
remove_snapshotMenghapus Snapshot dari Public URL. URL tetap dicadangkan dan terus menyajikan live selama terowongan Anda aktif. Ditandai destruktif.url wajib
get_snapshot_statusMelaporkan Snapshot Public URL: folder sumbernya, kapan diterbitkan, apakah sumber berubah sejak itu (stale), dan apakah URL menyajikan live atau snapshot saat ini.url wajib

Kontrol akses (lihat Access control):

ToolApa yang dilakukannyaParameter
set_passwordMelindungi URL Publik dengan kata sandi sehingga hanya orang yang memiliki kata sandi tersebut yang dapat membukanya. Diberlakukan di server LocalCan, sehingga juga mencakup Snapshot pada URL tersebut. Menghasilkan kata sandi yang kuat jika Anda tidak memberikannya, dan mengembalikannya agar dapat dibagikan. Membutuhkan paket berlangganan.url wajib, password opsional (kosongkan untuk membuat satu)
clear_accessMenghapus perlindungan kata sandi, menjadikan URL kembali publik. Tidak menghapus URL atau Snapshot-nya. Ditandai sebagai tindakan destruktif, sehingga host biasanya meminta konfirmasi.url wajib
get_access_statusMelaporkan perlindungan URL Publik dan mengembalikan kata sandinya saat ini jika URL tersebut dilindungi kata sandi. Kata sandi tidak pernah dikembalikan oleh list_public_urls, hanya di sini.url wajib

Menghubungkan agen

Cara menghubungkan bergantung pada bagaimana agen berjalan. Agen terminal (Claude Code, Codex) mewarisi PATH shell Anda, sehingga perintah localcan polos sudah berfungsi. Aplikasi GUI (Cursor, Claude Desktop, VS Code, dan lainnya) tidak memuat PATH shell Anda, sehingga mereka memerlukan jalur absolut ke biner, misalnya /Users/you/.localcan/bin/localcan. Pengaturan aplikasi desktop dapat menyalin konfigurasi siap pakai dengan jalur yang sudah diisi, yang juga merupakan cara yang andal di Windows.

Claude Code

Shell

Salin

claude mcp add --scope user localcan -- localcan mcp

Bendera --scope user mendaftarkan server untuk setiap proyek. Hapus untuk mendaftarkannya hanya di proyek saat ini.

Codex

Shell

Salin

codex mcp add localcan -- localcan mcp

Ini menulis server ke ~/.codex/config.toml. Untuk aplikasi desktop Codex atau ekstensi IDE, berikan jalur absolut sebagai pengganti localcan.

Cursor, Claude Desktop, dan Windsurf

Ketiganya berbagi format mcpServers yang sama:

JSON

Salin

{
  "mcpServers": {
    "localcan": {
      "command": "/Users/you/.localcan/bin/localcan",
      "args": ["mcp"]
    }
  }
}

Tambahkan ke file yang benar, lalu muat ulang:

  • Cursor: ~/.cursor/mcp.json, lalu aktifkan server di Pengaturan.
  • Claude Desktop: claude_desktop_config.json (Settings, Developer, Edit Config), lalu keluar dan buka lagi.
  • Windsurf: ~/.codeium/windsurf/mcp_config.json, lalu segarkan panel MCP.

VS Code

VS Code (mode agen Copilot) menggunakan kunci servers dengan tipe eksplisit. Tambahkan ini ke .vscode/mcp.json di ruang kerja Anda:

JSON

Salin

{
  "servers": {
    "localcan": {
      "type": "stdio",
      "command": "/Users/you/.localcan/bin/localcan",
      "args": ["mcp"]
    }
  }
}

Anda juga dapat menjalankan code --add-mcp dengan objek server yang sama.

Zed

Zed menggunakan context_servers di settings.json:

JSON

Salin

{
  "context_servers": {
    "localcan": {
      "source": "custom",
      "command": "/Users/you/.localcan/bin/localcan",
      "args": ["mcp"]
    }
  }
}

Anda juga dapat menambahkannya dari pengaturan Panel Agen.

Akses agen, redaksi, dan akses tulis

Ketiganya dikendalikan di aplikasi desktop di bawah Pengaturan (bagian "AI Agents (MCP)"), atau dari terminal: localcan mcp enable / disable untuk akses agen, localcan mcp redact <on|off> untuk redaksi, localcan mcp access <read_only|read_write> untuk akses tulis, dan localcan mcp status untuk melihat status saat ini.

  • Akses agen aktif secara default. Matikan untuk menghentikan agen menggunakan LocalCan sama sekali. Server tetap berjalan, tetapi setiap alat mengembalikan pesan jelas "akses dinonaktifkan" hingga Anda menyalakannya lagi.
  • Redaksi aktif secara default untuk agen. Header sensitif (Authorization, cookie, kunci API) dihapus dari respons alat. URL dan isi tidak diredaksi. Matikan untuk memungkinkan agen Anda sendiri menerima nilai mentah.
  • Akses tulis nonaktif secara default. Membaca berfungsi tanpanya, tetapi alat tulis mengembalikan pesan jelas hanya-baca hingga Anda menyalakannya, di aplikasi ("Allow agents to create and change Public URLs") atau dengan localcan mcp access read_write. Menyalakan akses agen tidak memberikan akses tulis. Keduanya adalah sakelar terpisah. Setiap panggilan tulis dicatat ke keluaran diagnostik server, yang ditangkap oleh host Anda, sehingga Anda memiliki rekam jejak perubahan yang dilakukan agen. Kata sandi yang diberikan ke set_password disamarkan dalam log tersebut.

Saat alat menolak

  • Setiap alat menghasilkan kesalahan koneksi daemon: LocalCan tidak berjalan. Buka aplikasi desktop atau jalankan localcan start -d.
  • list_traffic mengembalikan kosong: penangkapan mati (nonaktif secara default dan diatur ulang saat daemon dimulai ulang). Jalankan localcan traffic enable atau biarkan agen memanggil enable_capture.
  • "MCP access is disabled": akses agen dimatikan. Jalankan localcan mcp enable atau ubah pengaturan.
  • "MCP is read-only": alat mengubah sesuatu dan akses tulis mati. Jalankan localcan mcp access read_write atau nyalakan pengaturan.
  • "public URLs require a license": membuat dan menambahkan URL Publik memerlukan lisensi aktif. Aktifkan di aplikasi atau dengan localcan license activate <key>.
  • "need a subscription plan": Snapshot dan Kontrol Akses hanya untuk pelanggan. Lisensi abadi dapat membuka URL Publik tetapi tidak dapat menerbitkan Snapshot atau mengatur kata sandi. Berlangganan dari dasbor Anda↗, lalu coba lagi.
  • "already has a snapshot" atau "has no snapshot yet": gunakan alat yang disebutkan dalam pesan. add_snapshot melampirkan Snapshot ke URL yang tidak memilikinya, update_snapshot menyegarkan yang sudah memilikinya.
  • "Snapshot limit reached": paket Anda membatasi berapa banyak URL Publik yang dapat menyajikan Snapshot sekaligus. Pesan mencantumkan URL yang sudah menggunakan slot, yang dapat Anda segarkan dengan update_snapshot alih-alih menerbitkan yang baru.
  • Host menampilkan server gagal atau tanpa alat: aplikasi GUI tidak dapat menemukan localcan di PATH. Gunakan jalur absolut, paling mudah melalui salin konfigurasi di Pengaturan.

© 2026 LocalCan™. Hak cipta dilindungi.