Skip to main content
Glama
LuoZihYuan

booking-mcp

by LuoZihYuan

booking-mcp

booking-mcp is a Model Context Protocol server for managing restaurant reservations, served over Streamable HTTP. It exposes tools to book a table, check availability, and cancel a reservation; resources to read the reservation book; and a prompt for drafting confirmations. When booking, the server gathers the guest's contact details from the user through elicitation.

Requirements

  • Python 3.13

  • uv

Related MCP server: Lumen Resto MCP

Usage

Setup

Create the virtual environment, install the SDK (mcp[cli,rich]) and dependencies, and install the package in editable mode:

uv sync

Server

Start the server, which serves Streamable HTTP at http://127.0.0.1:8000/mcp:

uv run booking-mcp

Walkthrough

A standalone interactive client that runs in process, so nothing else needs to be running. It gives you a menu of actions and lets you answer the elicitation prompts yourself.

uv run python scripts/walkthrough.py
TIP

Reservations persist to var/bookings.json by default. Set BOOKING_DB_PATH to store them elsewhere:

BOOKING_DB_PATH=/tmp/demo.json uv run python scripts/walkthrough.py

MCP surface

Kind

Name

Notes

Tool

book_table(date, time, party_size)

elicits name, phone, and notes from the user

Tool

cancel_booking(id)

marks a reservation cancelled

Tool

check_availability(date, time)

remaining tables for a slot

Resource

bookings://all

every reservation, as JSON

Resource

bookings://{id}

one reservation, as JSON

Resource

availability://{date}

capacity for each slot on a date, as JSON

Prompt

confirmation_message(id)

drafts a guest confirmation message

Layout

booking-mcp/
├── src/booking_mcp/
│   ├── app.py               # the shared MCPServer instance
│   ├── config.py            # storage path + capacity limits
│   ├── models.py            # Reservation domain model
│   ├── store.py             # JSON file repository
│   ├── server.py            # entrypoint: registers features, runs the server
│   └── features/
│       ├── reservations.py  # book/cancel + reservation resources + prompt
│       └── availability.py  # availability tool + resource
├── scripts/
│   └── walkthrough.py       # manual interactive client
└── var/                     # runtime state, gitignored (holds bookings.json)
A
license - permissive license
Not graded
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables restaurant reservation management through SevenRooms API, allowing users to create reservations and query available time slots with guest details and party size information.
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables restaurant reservation management and schedule checking through Supabase with multi-tenant support. Designed for WhatsApp and phone agents to verify opening hours, create reservations with automatic table assignment, and handle multiple restaurants from a single server.
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables managing restaurant table bookings through natural language conversations with an AI assistant, with built-in safety measures like no deletion and explicit write enable.
    MIT

View all related MCP servers

Related MCP Connectors

  • Agentic scheduling & booking for field service: availability, jobs, customers, crews, fleet.

  • AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.

  • Bounded tools for rendering, extraction, RAG, enrichment, local discovery and review analysis.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/LuoZihYuan/booking-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server