mcpbeat Sign in

Guest MCP Server

answering

Guest is answering right now. Last checked 10 min ago. It exposes 16 tools.

Guest API for meni.ge restaurants: browse menus, place orders, reserve tables. No auth needed.

Uptime history 91 days of history · worst day 48%
91 days agonow
100.0%
Uptime 24h
91 of 91 checks
16
Tools
read from the server
434 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 16

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 19 August 2026. No other catalogue keeps this.

30 Sep 2 tools changed the parameters they ask for get_hotel_availability, quote_stay
30 Sep a tool description was rewritten quote_stay
24 Sep 3 tool descriptions were rewritten5 times that day get_hotel_availability, hotel_info, quote_stay
24 Sep 2 tools changed the parameters they ask for4 times that day get_hotel_availability, quote_stay
23 Sep 3 tools appeared get_hotel_availability, hotel_info, quote_stay
19 Aug a tool changed the parameters it asks for create_reservation
and 4 more, back to 19 August 2026

Guest does not always answer

Over the last week it answered 92.5% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

Three servers free · no card

Connect this server

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

run in your terminal
claude mcp add guest --transport http https://api.meni.ge/llm/mcp
Settings → Connectors → Add custom connector, then paste this address
https://api.meni.ge/llm/mcp
~/.codex/config.toml
[mcp_servers.guest]
url = "https://api.meni.ge/llm/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "guest": {
      "url": "https://api.meni.ge/llm/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "guest": {
      "type": "http",
      "url": "https://api.meni.ge/llm/mcp"
    }
  }
}

Available tools 16

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

cart
get_cart
Read a cart created with update_cart: lines with live unit prices, subtotal, item count, the checkoutUrl for a human hand-off and the expiry date (carts live 7 days). Lines whose item left the menu are flagged unavailable and excluded from the subtotal.
update_cart
Build the guest order step by step in a server-side cart, the way a human uses the web cart. Without cartId a new cart is created (keep the returned cartId — it is the access token). Each entry of updates: {itemId, quantity, variants?, addons?, comment?} adds a line; {lineId, quantity} changes one; {lineId, quantity: 0} removes it. Prices are recomputed from the live menu on every read, never stored. The answer includes a checkoutUrl the human can open to finish in the normal web checkout, and the cart can be placed as an order with create_order(cartId).
hotel
get_hotel_availability
Hotels only. Есть ли свободные номера на ВСЕ ночи [checkIn, checkOut): по типам номеров — сколько свободно и помещается ли компания. Данные — из опубликованного календаря отеля. Дат нет — не вызывай, а спроси их. ok:false с reason unknown/stale/unavailable — данных нет: не утверждай ни «свободно», ни «занято», веди к форме бронирования или к человеку. ok:false с reason bad_request — ошибка в датах вызова, а не «данных нет»: dates-required — спроси у гостя даты заезда и выезда; checkin-in-the-past, checkout-not-after-checkin, checkin-too-far-ahead — уточни даты.
hotel_info
Hotels only. Факты об отеле из его базы знаний для гостей: заезд/выезд, завтрак, парковка, правила, услуги, как добраться. Вызывай для любого вопроса об отеле, кроме свободных номеров и цены проживания, — и для ПРОСЬБЫ об услуге («организуйте трансфер», «закажите такси», «нужна кроватка»): узнай, как она заказывается, и ответь фактами. Возвращает выдержки; ok:false — в базе ответа нет, тогда честно скажи, что не знаешь, и предложи человека.
order
create_order
Validate and place an order at a meni.ge location. Returns orderId (keep it — it is the access token for status checks) and the computed total. customer.name/phone are required for pickup and delivery; delivery.address is required for delivery. Pass either items (inline) or cartId (the cart built with update_cart) — not both. Always pass idempotencyKey when you might retry: the same key within 48h returns the original order instead of placing a second one.
get_order_status
Check the status of an order previously created with create_order.
reservation
create_reservation
Request a table reservation. Starts as "pending" until the restaurant confirms — check with get_reservation_status. Returns reservationId (keep it: it is the token for status and cancellation). Optionally bind a specific table via tableId (from check_table_availability).
get_reservation_status
Status of a reservation created with create_reservation (pending/confirmed/seated).
cancel
cancel_reservation
Cancel a reservation previously created with create_reservation.
item
get_item
Get one menu item with its variant groups and addons, or several at once: pass itemIds (up to 10) instead of itemId to look items up in bulk — the bulk answer is {items, notFound}.
menu
get_menu
Get the full menu of a meni.ge location: categories, items with prices, variant groups and addons, currency and ordering capabilities. domain = uppercase location code from the QR/menu URL.
policies
search_policies_and_faqs
Search the location's own published policies, FAQ entries and info pages (privacy, terms, returns, delivery, cookies, help articles) plus, when the owner allows it, their internal knowledge base. Returns short snippets with a link to the source. Use it for policy/help questions instead of guessing; use get_store_info when you need structured numbers.
products
search_products
Semantic search over the location's catalog: product/dish names, descriptions, specifications, brand, SKU/barcodes and attached docs. Use for "do you have…" / "recommend…" / "how much is…" questions instead of paging through get_menu. Returns matching items with prices and a relevance score; falls back with a note when the search index is unavailable for the location.
quote
quote_stay
Hotels only. ПРЕДВАРИТЕЛЬНАЯ цена проживания на конкретные даты (не бронь и не резерв). roomTypeId — из get_hotel_availability, если гость выбрал тип номера; тип не назван — НЕ спрашивай его, а вызывай без roomTypeId: посчитается каждый тип (roomTypes[] — у каждого quote или reason отказа). Называй гостю ровно total и currency из ответа вместе с датами; окончательная цена — в форме бронирования. ok:false — цены нет, не угадывай; detail — причина (min-stay — минимальный срок проживания и т.п.), её и назови. Цена относится к тарифу ratePlan из ответа: называй его по ratePlan.name (на языке гостя) и с его условиями отмены, а не тарифом, о котором спросил гость. Тариф не назван — подбирается самый дешёвый продаваемый; notOffered — тарифы, которые на эти даты не продаются, и причина (min-stay и т.п.). Без party цена — за номер (priceBasis room); гость назвал компанию — передай party, цена будет на неё (priceBasis party): так и скажи гостю. detail child-ages-required — цена зависит от возраста детей: спроси возраст каждого ребёнка и посчитай снова. ok:false с reason bad_request — ошибка в датах вызова, а не «данных нет»: dates-required — спроси у гостя даты заезда и выезда; checkin-in-the-past, checkout-not-after-checkin, checkin-too-far-ahead — уточни даты.
store
get_store_info
Facts about the location that are not on the menu: address, contacts, coordinates, working hours with openNow computed in the venue timezone, delivery and pickup terms (fees, minimum order, zones, ETA), accepted payment methods and currency, shipping/return terms and links to the published legal documents. Use this before answering "are you open?", "do you deliver?", "how much is delivery?".
table
check_table_availability
Which tables of the location are free or busy in a given time window (uses the floor plan published by the restaurant). Pass the chosen table id to create_reservation as tableId.

Endpoints

URLTransportStateLatencyChecked
https://api.meni.ge/llm/mcp streamable-http answering 447 ms 10 min ago

Alternatives to Guest

same job, measured the same way
Whitelabel Ordering
by cordering

Order food from Cordering white-label restaurants: browse menus, confirm, then place an order.

10 tools answering
AIDISH — AIエージェントから受取注文できる飲食店
by ai-mentor-bot

Pickup orders at Japanese restaurants for AI agents: find stores, read menus, place orders. No auth.

4 tools answering
Tacobell
by markswendsen-code

MCP server for Taco Bell - browse menu, customize orders, place pickup

50 installs/wk local only
Toasttab MCP
by chrischall

Toast restaurants and menus: find places that order via Toast, read online or register menus.

484 installs/wk local only
Foodly
by foodly

Find Foodly restaurants, their menus and free tables; Foodly plans, prices and FAQ for businesses.

9 tools answering
Panera
by markswendsen-code

MCP server for Panera Bread - browse menu, customize orders, place pickup

46 installs/wk local only
Servd Agentic Ordering
by yh919

Discover Servd venues, browse menus, validate carts, place confirmed orders, and track status.

6 tools answering
Layout
by layout

Order food for pickup by name, with AI, at the restaurants Layout orders from.

answering

Guest — questions

Answers built from our own checks of this server.

What can Guest do?
It exposes 16 tools, read directly from the server on our last check. Among them: cancel_reservation, check_table_availability, create_order, create_reservation, get_cart, get_hotel_availability and 10 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 Guest mostly used for?
Its tools cluster around order, reservation and cart. 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 Guest 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 434 ms. The bar chart above shows every period we have measured.
How do I connect Guest?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Guest need an API key?
No. Guest completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 16 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Guest?
It answers our handshake in 434 ms on average, which is faster than 29% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.