Skip to main content
Glama

mcp-web

MCP server web automation untuk Termux — buka web, klik, isi formulir, telusuri DOM, dan debug langsung dari AI. Murni Node.js, dibangun dari nol, tanpa Chromium, tanpa root, tanpa proot, tanpa aplikasi desktop.

Versi Test Lisensi


Apa ini?

mcp-web adalah server Model Context Protocol yang memberikan kemampuan web automation kepada AI (misal. opencode). Server ini dibuat murni dari nol: protokol JSON-RPC/MCP, transport stdio dan HTTP/SSE, hingga engine halaman — semuanya kode sendiri, dengan satu-satunya dependensi runtime linkedom (parser DOM ringan, murni JavaScript).

Semua berjalan di terminal Termux biasa. Tidak ada browser engine yang berat, tidak perlu akses root, tidak perlu proot/container, tidak perlu X11/desktop.

Related MCP server: termux-puppeteer-mcp

Fitur

  • Dua mode transport:

    • stdio — untuk opencode lokal di Termux (default).

    • serve — mode remote HTTP + SSE; bisa dipakai dari perangkat lain di jaringan.

  • 14 tools MCP untuk web automation & debugging:

Tool

Fungsi

navigate

Buka halaman web (fetch + parse DOM)

get_content

Lihat isi halaman: teks, HTML, atau ringkasan

query

Cari elemen dengan CSS selector

click

Klik link (ikuti navigasi) / tombol / checkbox

fill

Isi input, textarea, select

submit

Submit form (GET diikuti, POST dicatat)

wait

Jeda antar langkah

js_eval

Eksekusi ekspresi JavaScript di konteks halaman (sandbox vm)

console_get

Log console yang terekam selama sesi

network_logs

Riwayat request/response (URL, status, timing)

cookies

Lihat / bersihkan cookie sesi

history

Riwayat navigasi + back/forward

screenshot

Snapshot struktural halaman (teks / HTML)

reset

Bersihkan seluruh sesi

  • State per sesi: cookie store, history, network log, console log — konsisten antar panggilan tool.

  • Aman: navigate hanya http/https, js_eval berjalan di vm terisolasi dengan timeout, ukuran halaman dibatasi (5 MB) anti boros memori.

  • Offline testable: seluruh test memakai server HTTP lokal, tanpa jaringan eksternal.

Instalasi

Persyaratan: Node.js ≥ 20 di Termux (pkg install nodejs) dan npm.

cd ~
git clone https://github.com/nemoobc/mcp-web.git
cd mcp-web
npm install

Tanpa root, tanpa proot, tanpa Chromium — cukup Node.js standar.

Cara pakai

1. Mode lokal (stdio) untuk opencode

Tambahkan MCP server di ~/.config/opencode/opencode.json:

{
  "mcp": {
    "mcp-web": {
      "type": "stdio",
      "command": "node",
      "args": ["/data/data/com.termux/files/home/mcp-web/bin/mcp-web.js", "stdio"]
    }
  }
}

2. Mode remote (HTTP + SSE) dari perangkat lain

Di Termux:

node bin/mcp-web.js serve --port 3827

Di perangkat lain (mis. PC/laptop), daftarkan URL remote di opencode:

{
  "mcp": {
    "mcp-web": {
      "type": "remote",
      "url": "http://IP_TERMUX:3827/sse"
    }
  }
}

Cek kesehatan server: curl http://localhost:3827/health{"ok":true,...}.

Contoh alur

navigate  → https://example.com
query     → a, button, input
click     → a                       (ikuti link)
get_content → text                  (baca isi halaman target)
history   → back
submit    → #search                 (form GET diikuti)
network_logs →                      (debug request/response)

Batasan (dijelaskan dengan jujur)

Karena berjalan tanpa Chromium, mcp-web tidak melakukan rendering visual piksel, eksekusi JavaScript halaman penuh, atau layout CSS. Yang disediakan adalah:

  • DOM asli hasil parsing HTML (parsing cepat & ringan).

  • Navigasi, klik, isi form, dan traversal DOM.

  • Eksekusi JavaScript melalui sandbox vm yang aman (ekspresi, bukan renderer).

  • Snapshot struktural (teks / HTML / metadata) — bukan gambar bitmap.

Untuk halaman yang sangat bergantung pada rendering penuh (SPA kompleks, canvas, WebGL), gunakan solusi browser sungguhan bila tersedia. mcp-web unggul untuk: riset isi web, pengujian struktur halaman, scraping, dan debugging HTTP/DOM dari terminal.

Struktur proyek

mcp-web/
├── bin/mcp-web.js        # entry CLI (stdio / serve)
├── src/
│   ├── protocol.js       # protokol JSON-RPC 2.0 + MCP (murni)
│   ├── stdio.js          # transport stdio
│   ├── http.js           # transport HTTP + SSE (remote)
│   ├── browser.js        # engine halaman (fetch + DOM model)
│   └── tools.js          # registrasi 14 tool MCP
└── tests/                # test otomatis (node --test, offline)

Pengembangan

npm test        # jalankan seluruh test (30 test, offline)
npm start       # jalankan server remote di port 3827

Lisensi

MIT © 2026 Nemo.


Dibuat dengan karya sendiri, dari nol. Created by Nemo.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Real browser automation for Termux/Android. Runs Firefox or Chromium on Xvfb on your phone with a persistent daemon for sub-second commands.
    20
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables Puppeteer-based web automation (navigation, screenshots, PDF generation, JavaScript execution, clicking) on Android Termux by running Chromium inside an Alpine Linux container.
    9
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with web applications through DOM inspection, user interaction simulation, and application state management.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    A lightweight browser automation MCP server using raw Chrome DevTools Protocol, enabling web navigation, screenshots, and DOM interaction without heavy dependencies, and working on Termux/Android.
    1,374 npm
    MIT