SF Tennis Court Booking MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
SF Tennis Court Booking via Cloudflare MCP Server
Automate tennis court bookings on San Francisco Recreation websites using a Cloudflare MCP (Model Context Protocol) server with browser automation. Never miss your favorite court and court time again!
It uses Stytch to authenticate the server so only certain emails (like mine) can book a court (in my name.)
Demo Video
📹 Watch the demo and a brief project explanation on YouTube
Related MCP server: Lumen Resto MCP
What This Does
This MCP server has 3 tennis booking tools:
Check Court Availability - See available time slots for any court/date
Book Court & Request SMS - Automate booking flow up to SMS verification
Complete Booking with SMS - Finish booking by entering your SMS code
Quick Deploy
This will deploy your tennis booking MCP server to: tennis-booking.<your-account>.workers.dev/sse
Alternatively, clone and deploy locally:
npm create cloudflare@latest -- tennis-booking-mcp --template=cloudflare/ai/demos/remote-mcp-authlessHow the tennis booking works
Check what's available:
check_tennis_courts({
court: "Alice Marble",
date: "2025-07-29",
time: "12:00 PM"
})Start booking process (stops at SMS step)
book_and_request_sms({
court: "Alice Marble",
time: "12:00 PM",
date: "2025-07-29"
})Manual SMS + Automated Completion (User gets verification code from rec.us, types it in to MCP server message, this tool then runs)
enter_sms_code_and_complete({code: "123456"})Setup Requirements
You need secrets for your Cloudflare Worker/MCP server:
REC_EMAIL=your-sf-rec-email@example.com
REC_PASSWORD=your-sf-rec-passwordYour wrangler.jsonc should have:
"ai": {
"binding": "AI"
},
"browser": {
"binding": "MYBROWSER"
},Connect to MCP Clients
Cloudflare LLM Playground
Go to https://playground.ai.cloudflare.com/
Enter your MCP server URL: tennis-booking.<your-account>.workers.dev/sse
Start booking courts with natural language!
Claude Desktop Install the mcp-remote proxy and update Claude Desktop's config:
{
"mcpServers": {
"tennis-booking": {
"command": "npx",
"args": [
"mcp-remote",
"https://tennis-booking.<your-account>.workers.dev/sse"
]
}
}
}Now you can chat with Claude: "Book Alice Marble court for tomorrow at 2 PM" and it will handle the entire process!
This server cannot be deployed
Maintenance
Related MCP Connectors
Book, reschedule, and cancel home services (cleaning, lawn, snow) via phone OTP authentication.
Find open slots on any appty link and book solo providers. Providers manage bookings by API key.
Discover local services and availability, then create, track, reschedule, or cancel bookings.
Last-minute booking slots across 11 suppliers. Search, price, and execute bookings via AI agents.
Related MCP Servers
- FlicenseBqualityNot gradedmaintenanceEnables booking cleaning services in San Francisco by collecting customer details and automatically sending booking requests via email to service partners.1-
- -licenseNot gradedqualityNot gradedmaintenanceEnables 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.-
- AlicenseAqualityCmaintenanceMCP server for provisioning dedicated real-SIM US phone numbers, receiving inbound SMS, and extracting OTP codes. Built for AI agents automating phone verification workflows.12524 npm1MIT
- FlicenseNot gradedqualityDmaintenanceAutomates tennis court bookings on San Francisco Recreation websites using browser automation, with tools to check availability, initiate booking with SMS verification, and complete bookings.9-