Skip to main content
Glama
satviksriv

bookings-mcp

by satviksriv

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BOOKINGS_DB_PATHNoPath to the SQLite database file. Defaults to data/bookings.db in the project directory.data/bookings.db
BOOKINGS_SEED_DEMONoWhether to seed the database with demo data on first run. Set to 'false' to start empty. Defaults to 'true'.true

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_customersA

Find customers by part of their name, email or phone. Returns id, contact details, last visit and number of upcoming bookings. Use this before creating a customer to avoid duplicates.

get_customerA

Full profile for one customer: contact details, notes, visit and spend totals, no-shows, and the 20 most recent bookings.

create_customerA

Add a new customer. Requires a name and at least an email or phone. Fails if the email already exists.

list_servicesA

All bookable services with id, duration in minutes, price in USD, and which staff perform them.

check_availabilityA

Open start times for a service on a date, per qualified staff member, in 15-minute steps within opening hours. Past times are excluded. Returns closed=true on days the business is shut.

create_bookingA

Book a customer for a service. If staff_id is omitted, the first qualified free staff member is assigned. Rejects past times, closed days, times outside opening hours and double-bookings. Confirm the details with the user before calling.

cancel_bookingA

Cancel a future confirmed booking. A reason is required and stored. Confirm with the user before calling.

list_bookingsA

Bookings between two dates (inclusive), with customer, phone, service, staff and status. Use for day schedules and follow-up lists. Max 500 rows.

revenue_reportA

Revenue from completed bookings between two dates, grouped by service, staff or day, with totals, average ticket, no-show rate, cancellations, and the value of confirmed upcoming bookings in the range. Amounts in USD.

Prompts

Interactive templates invoked by user choice

NameDescription
daily_briefingSummarise a day's schedule, gaps worth filling, and customers to follow up with.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct resource and action: customer search/get/create, service listing, availability checks, booking create/cancel/list, and revenue reporting. The descriptions clearly separate the list and detail views, and list_bookings versus revenue_report are distinguished by granularity versus aggregation.

Naming Consistency4/5

Most tools follow a clear verb_noun pattern such as search_customers, create_booking, and cancel_booking. The main inconsistency is revenue_report, which lacks an explicit verb, and there is minor singular/plural variation like get_customer versus search_customers.

Tool Count5/5

Nine tools is well-scoped for a bookings domain, covering customers, services, availability, bookings, and reporting. Each tool has a clear purpose and none feel redundant or unnecessary.

Completeness4/5

The core booking workflow is covered: find/create customers, check availability, create/cancel bookings, and view schedules and revenue. Missing capabilities like rescheduling a booking or updating customer details are minor gaps that agents can work around, but they would require external handling.

Maintenance

ActivityMaintained
ResponsivenessNo issues