| name | clawcierge |
| version | 0.3.0 |
| description | Restaurant search and booking for OpenClaw. Finds and books restaurants worldwide — Israel via direct API (Ontopo + Tabit), Romania via Bookingham.ro, Europe and NYC via browser handoff (TheFork, OpenTable, Resy). Michelin Bib Gourmand and Time Out recommendations baked in. Personal Google Maps saves always surfaced first. Bars & nightlife via Foursquare (bars.py). Supports Tel Aviv, New York, Barcelona, Bucharest, Marseille, Genova, Messina, Valletta. Use when someone wants to find a restaurant, bar, café, or nightlife spot. |
| metadata | {"openclaw":{"env":["RESERVATION_EMAIL","RESERVATION_PHONE","GOOGLE_MAPS_API_KEY"]}} |
ClawCierge — Restaurant Booking for OpenClaw
Finds and books restaurants worldwide. Israel via direct API, Europe and NYC via browser handoff, with Michelin and Time Out recommendations baked in.
Platform Coverage
| Region | Platform | Method |
|---|
| 🇮🇱 Israel | Ontopo + Tabit | Direct API |
| 🇫🇷🇮🇹 Europe | TheFork | Browser handoff |
| 🇺🇸 NYC | OpenTable + Resy | Browser handoff |
| 🌍 Worldwide | Michelin Guide (Algolia) | Direct API |
Setup
pip install requests
export RESERVATION_EMAIL="your@email.com"
export RESERVATION_PHONE="+1234567890"
export GOOGLE_MAPS_API_KEY="your-key"
Usage
from unified import search_and_format
results = search_and_format(
city="tel_aviv",
date="2026-04-01",
time="20:00",
party_size=2
)
print(results)
from ontopo import OntopoCli
client = OntopoCli()
slots = client.availability_search("taizu", date="20260401", time="2000", size="2")
from tabit import TabitCli
tabit = TabitCli()
avail = tabit.check_availability(org_id="...", date="2026-04-01", time="20:00", party_size=2)
Recommendation Sources
- Personal Google Maps saves — reads
memory/places/wanttogo_by_city.json when available (optional). These are marked kai_pick: true and ranked highest. Without this file the skill works normally using community sources only.
- Michelin Guide — Bib Gourmand + Selected/Plate (no stars by default)
- Time Out — city-specific curated lists
- Curated lists — TLV, NYC, Barcelona, Marseille, Genova, Messina, Valletta
Key Design Decisions
- No CC stored — payment always via browser handoff
- Tabit hold is real —
check_availability() creates a ~15 min hold; call delete_temp_reservation() on cancel
- Ontopo search is read-only — no hold created
- Michelin filter — always
BIB_GOURMAND or selected; never 1/2/3-star
Bars & Nightlife
Powered by Foursquare via bars.py. Triggered automatically when the query contains bar/nightlife/café keywords.
| Type | Trigger phrases |
|---|
| Bars | "Best bars in Vienna", "bars in Tel Aviv", "nightlife Budapest" |
| Wine bars | "Wine bars in Tel Aviv", "best wine bar Rome" |
| Cocktail bars | "Cocktail bars Barcelona", "great cocktails in Lisbon" |
| Cafés | "Good café for working in Budapest", "coffee shops Prague", "café Vienna" |
| General | "drinks in Berlin", "pub in London" |
Use unified.is_bars_query(query) to detect before routing.
Use unified.search_nightlife_and_format(city, query) for formatted output.
Supported Cities
Israel (TLV · Haifa · Beer Sheva), Bucharest, Marseille, Genova, Messina, Valletta, NYC, Barcelona, London, Lisbon, Prague, Athens
License
MIT