About Floyd
Floyd exposes Floyd Engine scheduling and booking operations to AI agents. Its tools cover slot availability, temporary holds, confirmation, cancellation, rescheduling, and booking updates.
Key features
- 01Check service availability
- 02Temporarily hold a time slot
- 03Confirm bookings with user consent
- 04Cancel held or confirmed bookings
- 05Reschedule bookings
- 06Retrieve or update booking details
Use cases
- 01Find appointment times for a service
- 02Hold a selected slot while arranging a booking
- 03Confirm or cancel an appointment
- 04Move a booking or update its metadata
MCP support
An MCP server that exposes Floyd Engine scheduling and booking tools over Streamable HTTP, with an optional stdio mode.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEFloyd MCP Server
MCP server that exposes Floyd Engine scheduling and booking tools to AI agents. Built on the Model Context Protocol Streamable HTTP transport.
For the engine's API documentation, see the docs folder in the engine repo.
Tools
| Tool | Description |
|---|---|
floyd_get_available_slots | Check available appointment times for a service |
floyd_hold_booking | Place a temporary hold on a time slot |
floyd_confirm_booking | Confirm a held booking (requires explicit user consent) |
floyd_cancel_booking | Cancel a held or confirmed booking |
floyd_reschedule_booking | Move a booking to a new time |
floyd_update_booking | Update a booking's metadata |
floyd_get_booking | Retrieve booking details and status |
Setup
pnpm install
Environment variables
| Variable | Required | Default | Description |
|---|---|---|---|
FLOYD_BASE_URL | No | http://localhost:4000/v1 | Floyd Engine base URL |
PORT | No | 3000 | HTTP server port |
Usage
HTTP mode (Streamable HTTP)
pnpm dev
MCP endpoint: POST /
Health check: GET /health
Stdio mode
pnpm dev -- --stdio
Authentication
When the Floyd engine requires authentication, connecting agents provide their API key via:
Authorization: Bearer <token>header (preferred)?token=<value>query parameter
The API key is forwarded to the Floyd engine on each request. If the engine has auth disabled (e.g. self-hosted), no key is needed.
Booking flow
get_available_slots → hold_booking → confirm_booking
↘ cancel_booking
↘ reschedule_booking
↘ update_booking (metadata)
- Get slots — query available times, returns signed
slotIdtokens - Hold — reserve a slot using the
slotId(or explicit fields). Creates a booking inheldstate - Confirm — finalize the booking. Requires
userConfirmed: true - Cancel — release a held or confirmed booking
- Reschedule — move a booking to a new time, preserving its identity
- Update — attach or replace metadata (e.g. party size, special requests)
Development
pnpm test # run tests
pnpm typecheck # type-check
pnpm lint # eslint
pnpm format # prettier
pnpm build # bundle with tsup
Production
pnpm build
pnpm start
The server handles SIGTERM/SIGINT for graceful shutdown. HTTP requests to the Floyd API have a 10-second timeout.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.