Skip to content

Installation and Quickstart

Svwergio_mel edited this page Nov 13, 2026 · 5 revisions

Installation and Quickstart

Chat Export runs standalone: extension-only export needs no server. For MCP automation, add chat-export-server on 127.0.0.1 and optionally the dashboard. No Chrome DevTools MCP or bundled agent runtime is required.

1. Extension (Chrome)

  1. Clone chat-export-extension and run npm run build.
  2. Chrome → chrome://extensions → Developer mode → Load unpacked → select the repo folder.
  3. Open a supported site and reload the tab after each extension update.

2. Server (Node 22.13+)

git clone https://github.com/svergio/chat-export-server.git
cd chat-export-server
npm install && npm run build
chat-export-server key new    # print once; hash stored in ~/.chat-export
chat-export-server start      # http://127.0.0.1:8765

Data directory: ~/.chat-export (override with CHAT_EXPORT_HOME).

3. Link extension to server

  1. Extension popup → Advanced: host 127.0.0.1, port 8765.
  2. Enroll with a browser gateway token (ceb_…) from the server or dashboard.
  3. Enable platforms you use; turn on automation gates (allowCreate, etc.) only if you need MCP create/delete.

4. Cursor MCP (HTTP)

{
  "mcpServers": {
    "chat-export": {
      "url": "http://127.0.0.1:8765/mcp",
      "headers": { "Authorization": "Bearer cem_YOUR_KEY" }
    }
  }
}

Create cem_ keys with chat-export-server key new. Never commit real tokens.

5. Dashboard (optional)

Build chat-export-dashboard (npm run build) and copy public/ into chat-export-server/dashboard/public/, or use the server submodule. Open http://127.0.0.1:8765/dashboard/ and sign in with the admin session configured on the server.

Configuration reference

Extension storage (ce.settings)

Field Default Notes
serverOn false WebSocket bridge
host / port 127.0.0.1 / 8765 Must match server
apiKey empty Paste ceb_… from server or dashboard Browsers
allowDestructive false MCP delete gate
rpcTimeoutS 60 Extension RPC timeout

See extension README Configuration.

Server home (CHAT_EXPORT_HOME, default ~/.chat-export)

~/.chat-export/
  config.json     # port, dashboard login, platform matrix
  keys.json       # MCP key hashes only
  audit.log
  exports/
  server.log

Set dashboard.password in config.json before sharing the machine. Prefer .env (copy server .env.example): CHAT_EXPORT_ADMIN_PASS, CHAT_EXPORT_MCP_TOKEN, CHAT_EXPORT_BROWSER_TOKENS, CHAT_EXPORT_HOME, CHAT_EXPORT_PORT, and related keys override config.json at start.

Docker (optional)

Any Docker engine (Docker Desktop, Colima, …):

cp .env.example .env        # set CHAT_EXPORT_ADMIN_PASS at minimum
docker compose build
docker compose up -d
curl -sS http://127.0.0.1:8765/health

Data: Compose volume → /data. Split nginx front: server / dashboard README.

Cursor MCP snippet (optional client)

Project or user config (redact real keys):

{
  "mcpServers": {
    "chat-export": {
      "url": "http://127.0.0.1:8765/mcp",
      "headers": { "Authorization": "Bearer cem_YOUR_KEY_HERE" }
    }
  }
}

Workflow: chat-export-server key new → paste into MCP config → browsers_bind → chats_list / chat_ask.

Dashboard login

URL http://127.0.0.1:8765/dashboard/
User / pass dashboard.username / dashboard.password in config.json (defaults admin / changeme)
Not used for MCP Bearer (cem_) — separate secret

Enroll browser tokens (ceb_) from Browsers; rotate MCP keys from Settings.

More deployment

Legal & Two-Tier Terms of Service (LEGAL.md)

Both the extension and server enforce a two-tier ToS documented in LEGAL.md:

  1. General Legal / Account Ban Risk ToS — covers extension installation and manual export. You acknowledge that web scraping/export may conflict with third-party Terms of Service and assume all account risk.
  2. Advanced MCP Mode ToS — required before enabling the ws://127.0.0.1:8765/ws bridge or MCP write/automation gates (allowCreate, allowDestructive, chat_ask). Automated browser interaction carries higher rate-limit and account suspension risk.

Clone this wiki locally