io.github.chrischall/tock-mcp

السجل الرسمي البحث والويب

Tock (exploretock.com): discover restaurants, search a city, get venue details and availability.

ماذا يمكنك أن تفعل مع io.github.chrischall/tock-mcp؟

  • tock_list_metros — Tock cities/metros with business counts; filter by name/country.
  • tock_search_restaurants — venues in a metro slug (cuisine, price, neighborhood, slug).
  • tock_get_restaurant — venue details + its bookable experiences.
  • tock_get_availability — a venue's bookable calendar (experiences, prices, open dates/times).
  • tock_list_reservations / tock_get_profile — the signed-in user's purchases and profile.
  • tock_verify_reservation — after a booking attempt, re-query the account and return an explicit confirmed / cancelled / not_found / ambiguous verdict. A success screen is not proof; this is.
  • tock_healthcheck — bridge status + the one-time pair code.

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

NPM package tock-mcp
Claude Code
claude mcp add tock-mcp -e 'TOCK_WS_PORT=<TOCK_WS_PORT>' -e 'FETCHPROXY_WS_HOST=<FETCHPROXY_WS_HOST>' -e 'FETCHPROXY_IDENTITY_DIR=<FETCHPROXY_IDENTITY_DIR>' -- npx -y tock-mcp@1.1.9
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "tock-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "tock-mcp@1.1.9"
            ],
            "env": {
                "TOCK_WS_PORT": "<TOCK_WS_PORT>",
                "FETCHPROXY_WS_HOST": "<FETCHPROXY_WS_HOST>",
                "FETCHPROXY_IDENTITY_DIR": "<FETCHPROXY_IDENTITY_DIR>"
            }
        }
    }
}

متغيرات البيئة

  • TOCK_WS_PORT Concentrator port for the fetchproxy browser bridge (defaults to the fleet-shared 37149). On one machine every MCP shares the concentrator, so move it for ALL of them or not at all.
  • FETCHPROXY_WS_HOST Bind interface, a literal IP only (anything else is ignored); default 127.0.0.1. Keep on loopback — it exists for ONE topology: a hosted child in its own network namespace.
  • FETCHPROXY_IDENTITY_DIR Where to store the long-term identity keypair, an absolute path only (anything else is ignored); default ~/.fetchproxy/identity/. Exists for a host that runs a separate child per caller.

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. tock-mcp
  2. Install
  3. Environment
  4. Tools
  5. Develop
  6. License

tock-mcp

MCP server for Tock (exploretock.com) — restaurant discovery and availability for Claude. List cities, search a metro, and get a venue's details plus its bookable experiences, prices, party sizes, and open dates/times.

Every request is relayed through your own signed-in browser tab via the ContextMint Bridge browser extension — no cookie paste, no bot-wall dance, no password handling. This project was developed and is maintained by AI (Claude Code).

Tock publishes no official consumer API, and exploretock.com sits behind a Cloudflare challenge. tock-mcp fetches the same server-rendered pages the Tock web app uses (parsing their embedded window.$REDUX_STATE store) through your signed-in tab. It is read-only — Tock reservations are prepaid tickets, so booking stays on exploretock.com. Use at your own discretion.

Install

// .mcp.json
{
  "mcpServers": {
    "tock": { "command": "npx", "args": ["-y", "tock-mcp"] }
  }
}

You also need ContextMint Bridge (the browser extension shared by every fetchproxy-based MCP), installed from its releases page: in Chrome, unzip the chrome zip and load it unpacked (chrome://extensions → Developer mode → Load unpacked). Safari isn't available yet (it will ship inside the ContextMint app, which has no public download), so use Chrome for now. ContextMint Bridge is the fetchproxy browser extension under its new name, from the same maintainer — fetchproxy's own README (https://github.com/chrischall/fetchproxy#extension) points to it. Its source is public at https://github.com/nullnet-app/contextmint-bridge: build it yourself, or check a release zip against the .sha256 file published beside it (shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256). Keep an exploretock.com tab open. The first tool call prints a one-time pair code to approve in the ContextMint Bridge popup — run tock_healthcheck to trigger it. Discovery works signed-out; the account tools need you signed in to exploretock.com.

Environment

No environment variables are required. These optional knobs mirror the .mcpb manifest's settings:

VariableDefaultPurpose
TOCK_WS_PORT37149Concentrator port for the fetchproxy browser bridge. Every fetchproxy MCP on one machine shares the concentrator, so move it for all of them or none (mainly for local testing, or a hosted registration's bridge port).
FETCHPROXY_WS_HOST127.0.0.1Bridge bind interface, a literal IP only (anything else is ignored). Keep on loopback; it exists for a hosted child in its own network namespace.
FETCHPROXY_IDENTITY_DIR~/.fetchproxy/identity/Where the bridge's long-term identity keypair is stored, an absolute path only (anything else is ignored). For a host that runs a separate child per caller.

Tools

  • tock_list_metros — Tock cities/metros with business counts; filter by name/country.
  • tock_search_restaurants — venues in a metro slug (cuisine, price, neighborhood, slug).
  • tock_get_restaurant — venue details + its bookable experiences.
  • tock_get_availability — a venue's bookable calendar (experiences, prices, open dates/times).
  • tock_list_reservations / tock_get_profile — the signed-in user's purchases and profile.
  • tock_verify_reservation — after a booking attempt, re-query the account and return an explicit confirmed / cancelled / not_found / ambiguous verdict. A success screen is not proof; this is.
  • tock_healthcheck — bridge status + the one-time pair code.

Develop

npm install
npm run build     # tsc + esbuild bundle → dist/bundle.js
npm test          # vitest

Architecture and the reverse-engineered Tock surface are documented in docs/TOCK-API.md.

License

MIT

الأسئلة الشائعة

ما هو io.github.chrischall/tock-mcp؟

Tock (exploretock.com): discover restaurants, search a city, get venue details and availability.

كيف أثبّت io.github.chrischall/tock-mcp؟

يعمل على جهازك. في Claude Code: claude mcp add tock-mcp -e 'TOCK_WS_PORT=<TOCK_WS_PORT>' -e 'FETCHPROXY_WS_HOST=<FETCHPROXY_WS_HOST>' -e 'FETCHPROXY_IDENTITY_DIR=<FETCHPROXY_IDENTITY_DIR>' -- npx -y tock-mcp@1.1.9. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج io.github.chrischall/tock-mcp إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل io.github.chrischall/tock-mcp مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون io.github.chrischall/tock-mcp؟

ينشره chrischall. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.