mcpbeat

Tableall MCP Server

com.tableall/mcp
answering

Tableall is answering right now. Last checked 5 min ago. It exposes 10 tools.

Access Japan's finest Michelin-starred restaurants. Search, check availability, and browse menus.

Uptime history 41 hours of history
41 hours agonow
100.0%
Uptime 24h
91 of 91 checks
10
Tools
read from the server
789 ms
Response time
average over 24h
open, no key
Access
sse

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 5 min ago.

run in your terminal
claude mcp add mcp --transport http https://mcp.tableall.com/sse
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.tableall.com/sse"
    }
  }
}
~/.codex/config.toml
[mcp_servers.mcp]
url = "https://mcp.tableall.com/sse"
.cursor/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.tableall.com/sse"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.tableall.com/sse"
    }
  }
}

Available tools 10

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

reservation
create_reservation
Create a direct reservation for a specific available opening (opening_id required). Use after check_availability has returned an opening and the user has chosen which opening_id to book. If check_availability returned no openings, use create_reservation_request instead. Flow (summary — see resource tableall://flow/direct-reservation for full details): 1. Call get_cancellation_policies and explain cancellation terms (include: the booking fee is non-refundable regardless of cancellation timing). 2. Collect the user's email first; if the response returns USER_NOT_FOUND, collect full name, country, and phone, then call again. 3. Show a summary (restaurant, date/time, guests, course, email) and confirm before calling with the final args. In this final confirmation, add a brief note that if the user has a coupon code they can provide it now (pass it as coupon_code); it can also be entered later on the payment page. Do not prompt for a coupon at earlier steps. Seat rules: for fixed seats, party_size must equal fixed_seats; for flexible seats, party_size must be within min_seats and max_seats. Response: store data.access_token (required by get_reservation_status). If user.is_new_user is true, display the password_reset_url notice (24-hour validity, also emailed) before the payment_url. The payment_url is valid for 30 minutes and is also emailed.
create_reservation_request
Submit a reservation request for a selected restaurant, dates, time range, and party size. Use after check_availability or search_available_restaurants has been run and the user confirms they want to submit a request. Use this when the user prefers dates or times other than the available openings, or when no openings were found and the user wants to request one. The user's use of the word "request" signals intent to try, not consent to skip the availability check — check availability and show the result first. Flow (summary — see resource tableall://flow/reservation-request for full details): 1. Explain that the card is charged only if the restaurant confirms; the request can be cancelled before confirmation. 2. Call get_cancellation_policies and explain it applies after confirmation (include the non-refundable booking fee notice). 3. Confirm adults vs children count. 4. Collect the user's email first; if the response returns USER_NOT_FOUND, collect full name, country, and phone, then call again. 5. Summarize and confirm before calling with the final args. In this final confirmation, add a brief note that if the user has a coupon code they can provide it now (pass it as coupon_code); it can also be entered later on the payment page. Do not prompt for a coupon at earlier steps. Date handling: "any day in [month]" includes all days of that month; "any day from X to Y" includes every day in the range. Response: store data.access_token (required by get_reservation_request_status). If user.is_new_user is true, display the password_reset_url notice (24-hour validity, also emailed) before the payment_url. The payment_url is for card registration only; a charge occurs only if the restaurant approves. Valid 30 minutes; also emailed.
get_reservation_request_status
Check the status of a reservation request by session ID. Requires the access_token that was returned in the create_reservation_request response. You MUST have stored the access_token from the create response to use this tool. Without a valid access_token, the API will return 403 Forbidden. IMPORTANT - PRICE DISPLAY: The "price" field already INCLUDES the "booking_fee". Do NOT add them together. When displaying to the user, show: price (total) and booking_fee (included in price, non-refundable). Example: "Total: ¥30,000 (includes ¥1,000 non-refundable booking fee)"
get_reservation_status
Check the status of a reservation by session ID. Requires the access_token that was returned in the create_reservation response. You MUST have stored the access_token from the create response to use this tool. Without a valid access_token, the API will return 403 Forbidden. IMPORTANT - PRICE DISPLAY: The "price" field already INCLUDES the "booking_fee". Do NOT add them together. When displaying to the user, show: price (total) and booking_fee (included in price, non-refundable). Example: "Total: ¥30,000 (includes ¥1,000 non-refundable booking fee)"
restaurant
get_restaurant_details
Get the full profile of one specific restaurant: untrimmed description, booking_rules, booking_tips, address, operating_hours, seating, and starting price. Use when the user names a specific restaurant and wants its details, or when you have a restaurant_id and need fields that search_restaurants does not return. Does not return menu or courses (use get_restaurant_menu), cancellation policy (use get_cancellation_policies), or real-time availability (use check_availability). starting_price_display is preformatted (e.g., "¥65,000〜", booking fee included).
get_restaurant_menu
Get the menu for a specific restaurant: an array of course names and their prices. Use when the user asks about a specific restaurant's menu, courses, or course pricing. This tool returns course names and prices only — not dish lists, course composition, number of pieces, or ingredients. For full course details, direct the user to the restaurant page (details_url in the response). The response itself returns this course content only; do not supplement it with assumptions.
availability
check_availability
Check real-time availability for one specific restaurant within a date range. Returns all openings for that restaurant; it does not filter by time of day. Use when you already know which restaurant the user wants. If the user is browsing across multiple restaurants in a region or cuisine, use search_available_restaurants instead. Use the exact parameter names start_date, end_date, restaurant_id, num_people, daily_or_minutes, and by_menu_item. Including restaurant_id is recommended; omitting it queries all restaurants and returns a large response. If the user specifies a time preference, do not pass time parameters — receive all openings for the date range and filter the display. Date handling: if the user gives only month/day, use the current year, or next year if that date is already past. Response: has_availability, summary, openings[], and alternative_openings[] (openings within ±3 days when the requested range has none). Each opening includes opening_id, date, time (JST), datetime_jst, seat_type ("fixed" or "flexible"), seat counts, course_id, course_name, and course_price. The response also includes guidance for the next step under usage_guidance.
available
search_available_restaurants
Search across multiple restaurants for availability within a date range. Returns restaurants that have openings, filterable by prefecture, area, genre, and party size. Use when the user does not yet have a specific restaurant in mind and is browsing or filtering by region or cuisine. If the user already has a specific restaurant, use check_availability instead. Date handling: if the user gives only month/day, use the current year, or next year if that date is already past. For a single date, search from 2 days before to 3 days after, unless the user asks for that exact date only. Parameters: start_date and end_date are required (YYYY-MM-DD); prefecture, area, genre, num_people, limit, and offset are optional. Each restaurant entry includes basic info (name, cuisine, location, michelin stars, price_range, open_time, closed_days), starting_price_display (e.g., "¥39,000〜", booking fee included), and its available openings (date, time, seat type, course info). Pagination fields (limit, offset, has_more, total_restaurants) indicate whether more results exist; default limit is 20, max 100. The results list only restaurants with confirmed openings for the given dates; other restaurants may show no openings yet still be bookable via a reservation request. When presenting the results — even when openings are found — add one brief line that if the user has a specific restaurant in mind that is not listed, or wants dates/times beyond those shown, create_reservation_request can submit a request (the card is charged only if the restaurant confirms). If no restaurants match at all, offer create_reservation_request directly.
cancellation
get_cancellation_policies
Read-only: retrieve a restaurant's cancellation policy. This tool only reads policy data; it does not cancel or modify any reservation. Safe to call repeatedly. Use when the user asks about the cancellation policy, refund terms, or no-show fee, or before calling create_reservation or create_reservation_request. get_restaurant_details returns booking_rules and booking_tips, which describe when bookings open and how to book — not cancellation terms. Returns: cancel_policies (array of { days_before, penalty_percentage, description }), policy_type, message, booking_fee_note, and important_note. Display the booking_fee_note: the booking fee is non-refundable regardless of cancellation timing. For reservation requests, the policy applies after the request is confirmed by the restaurant.
restaurants
search_restaurants
Browse restaurants by region, cuisine, or area. Returns a directory-style list with name, location, Michelin stars, and starting price. Does not include real-time availability — for date-based searches use search_available_restaurants, and for one restaurant's openings use check_availability. For a specific named restaurant, use this tool to obtain its restaurant_id, then call get_restaurant_details for the full profile and get_restaurant_menu for courses and pricing. The description field returned here is trimmed to ~200 characters. Each restaurant includes name (and name_ja), michelin_stars when present, area/location, and starting_price_display (e.g., "¥81,000〜", booking fee included). Returns up to 30 restaurants per call; total and has_more indicate whether more exist, retrievable with offset.

Endpoints

URLTransportStateLatencyChecked
https://mcp.tableall.com/sse sse answering 1121 ms 5 min ago

Tableall — questions

Answers built from our own checks of this server.

What can Tableall do?
It exposes 10 tools, read directly from the server on our last check. Among them: check_availability, create_reservation, create_reservation_request, get_cancellation_policies, get_reservation_request_status, get_reservation_status and 4 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Tableall mostly used for?
Its tools cluster around reservation and restaurant. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Tableall working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 789 ms. The bar chart above shows every period we have measured.
How do I connect Tableall?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Tableall need an API key?
No. Tableall completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 10 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Tableall?
It answers our handshake in 789 ms on average, which is faster than 10% of all working MCP servers we measure. That is on the slow side — worth knowing if the tool sits inside an interactive loop. The comparison comes from our own checks across the whole registry, every 15 minutes.