原始内容
name: easytable
description: Use when the user wants to check restaurant availability or make, change, or cancel a table reservation at a restaurant that books through easyTable (a book.easytable.com/book/?id= widget). Covers listing booking areas, dates and times, looking up existing bookings by phone, and creating/modifying/cancelling reservations.
easyTable reservations
easyTable is a restaurant table-booking system. Each restaurant has a public
booking widget at https://book.easytable.com/book/?id=<restaurantId> — the
id is the only identifier (there's no login). This MCP drives that widget
through the user's own signed-in, Cloudflare-cleared browser tab via the
fetchproxy bridge; the site blocks any server-side request.
Setup (one time)
- Install the fetchproxy browser extension (https://github.com/chrischall/fetchproxy).
- Open a booking widget in Chrome:
https://book.easytable.com/book/?id=<restaurantId>. Let the page finish loading — its Cloudflare Turnstile check solves itself. - The first tool call prints a one-time pair code; approve it in the extension.
Typical flow
easytable_list_types— the restaurant's booking areas (e.g. indoor, bar); note thetypeid.easytable_list_dates— bookable dates for thattype+ party size.easytable_list_times— time slots (HH:MM) for a chosen date.easytable_create_booking— make the reservation (needs name + mobile).
To change or cancel, first easytable_find_bookings with the mobile the
booking was made under, then easytable_modify_booking /
easytable_cancel_booking with the returned booking id.
Writes are confirm-gated
create, modify, and cancel do nothing without confirm: true — they
return a dry-run preview first. Re-run with confirm: true to apply.
create and modify submit a Cloudflare Turnstile token the MCP reads from
the widget tab's hidden input, so a book.easytable.com/book/?id=<id> tab must
be open and loaded when you confirm. The token is single-use and expires after
a few minutes; if a create fails on the token, reload the tab and retry.
cancel needs no token.
Notes
- Times are HH:MM; the widget internally uses minute-of-day.
- All reads and the whole booking flow are the user's own actions on their own browser session — no easyTable account or API key is involved.