CourtsAppMCP Docs

Usage Examples

Real-world examples of using the CourtsApp MCP Server to search and book courts.

These examples show how users interact with AI assistants connected to the CourtsApp MCP Server. The assistant handles tool calls automatically — users just ask in natural language.

Browsing and looking up facilities

Finding facilities in an area

User: "What pickleball facilities are near Austin, TX?"

The assistant calls list_facilities with:

{
  "city": "Austin",
  "state": "TX",
  "sport": "pickleball"
}

The server returns facility names, IDs, and comingSoon status for all pickleball facilities within 50 miles of Austin.

Looking up facility details

User: "What are the hours for Austin Pickle Ranch? Do they have indoor courts?"

The assistant calls get_facility_details with:

{
  "name": "Austin Pickle Ranch",
  "city": "Austin",
  "state": "TX"
}

The server returns full facility info: hours of operation, court details (indoor/outdoor, surface), amenities, booking policies, phone number, and address — no web search needed.

Checking a facility's cancellation policy

User: "What's the cancellation policy at that facility I was looking at?"

The assistant calls get_facility_details using the facilityId from a prior tool result:

{
  "facilityId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

The response includes full booking and cancellation policies for that facility.


Searching for courts

Pickleball by location

User: "Find me a pickleball court near Manhattan for tomorrow afternoon around 3pm, 60 minutes."

The assistant calls search_availability with:

{
  "sport": "pickleball",
  "location": "manhattan, ny",
  "date": "2026-03-27",
  "time": "15:00",
  "duration": 60
}

The server returns nearby facilities with available pickleball courts, pricing, and time slots around 3pm.

Tennis at a specific facility

User: "I want to book a tennis court at Sportime Randall's Island for Saturday at 9am, 90 minutes."

The assistant calls search_availability with the facilityName filter:

{
  "sport": "tennis",
  "location": "manhattan, ny",
  "date": "2026-03-28",
  "time": "09:00",
  "duration": 90,
  "facilityName": "Sportime Randall's Island"
}

The fuzzy matching on facilityName narrows results to that specific facility.

Comparing padel options

User: "What padel courts are available near zip code 10010 this Friday evening? I want to play for 60 minutes."

{
  "sport": "padel",
  "location": "10010",
  "date": "2026-03-27",
  "time": "18:00",
  "duration": 60
}

The response includes multiple facilities with pricing, letting the assistant help the user compare options.

After searching, the assistant uses get_booking_link with the facilityId and sportId from the search results:

{
  "facilityId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "date": "2026-03-27",
  "time": "15:00",
  "sportId": "f9e8d7c6-b5a4-3210-fedc-ba0987654321",
  "duration": 60
}

The server returns a booking URL that the user can click to complete their reservation with pre-filled details and live pricing.

Full workflow

Finding and booking a court

  1. User asks — "Find me a pickleball court near downtown LA tomorrow at 5pm"
  2. Assistant searches — calls search_availability, gets back 4 facilities
  3. Assistant presents options — "I found 4 facilities. Courts & Greens has a 5:00pm slot for $28, and Pickle Pop has 5:30pm for $22..."
  4. User picks — "Book the Courts & Greens one"
  5. Assistant generates link — calls get_booking_link with the facility's IDs
  6. User books — clicks the link and completes checkout on CourtsApp

Browsing facilities then booking

  1. User asks — "What pickleball clubs are in Denver?"
  2. Assistant lists — calls list_facilities with city "Denver", state "CO", sport "pickleball"
  3. User asks — "Tell me more about Ace Pickleball Club"
  4. Assistant looks up — calls get_facility_details with the facility ID, returns hours, courts, policies, and contact info
  5. User decides — "Great, can I book there for Saturday at 10am?"
  6. Assistant searches — calls search_availability for that facility and time
  7. Assistant generates link — calls get_booking_link with the chosen slot

Using coordinates

For apps that have the user's GPS location:

{
  "sport": "tennis",
  "location": "34.0522,-118.2437",
  "date": "2026-03-27",
  "time": "10:00",
  "duration": 60
}

This is useful for mobile apps or agents that can access device location.

On this page