bsport + Model Context Protocol
Let your AI assistant work with bsport
Connect a compatible AI assistant to the bsport Public API. Look up operational information, prepare day-to-day work, and change records through a conversation, while bsport limits access to your authorized companies.
Who this page is for, and what it covers
This page is for your company or franchise team to work through an AI assistant. It covers what the MCP server exposes, what you need before connecting, and which assistants are supported. If you are building a server-to-server integration, use the Public API directly with an API key instead: start at Getting started. If you want to use an LLM to help you write that integration, see Using LLMs for integrations.
MCP is experimental during the Beta test phase
Tool coverage grows as endpoints are added to the Public API, and access is granted per user account by the bsport team.
What you can do¶
Find the right operational context
List and open clients, bookings, classes, appointments, passes, client passes, subscriptions, client subscriptions, teachers, venues, tags, tag groups, client notes, and webhook registrations.
Act on day-to-day requests
Create clients and bookings, cancel a booking, record attendance, archive a client, tag and untag a client, enable or disable a client pass, add a note, create tags, tag groups and venues, and update existing webhook registrations.
See what a tool will do before it runs
Every tool declares its impact as read-only, additive, or consequential, so your assistant can tell you which calls change a bsport record and ask first.
Typical uses include checking tomorrow's schedule, finding a client's current passes, preparing a booking change, adding an internal note, or organizing clients with tags.
What each resource allows¶
Read the table by resource: the Read column is available on every resource, and the Change column lists the actions the server exposes. A resource marked read-only has no write tool at all, so an assistant cannot create or edit it.
| Resource | Read | Change |
|---|---|---|
| Bookings | List, open | Create, cancel, record attendance |
| Clients | List, open | Create, archive, tag, untag |
| Client passes | List, open | Enable, disable |
| Client notes | List, open | Create |
| Tags | List, open | Create |
| Tag groups | List, open | Create |
| Venues | List, open | Create |
| Webhook registrations | List, open | Create, update |
| Appointments | List, open | Read-only |
| Classes | List, open | Read-only |
| Passes | List, open | Read-only |
| Subscriptions | List, open | Read-only |
| Client subscriptions | List, open | Read-only |
| Teachers | List, open | Read-only |
A pass is a product that can be purchased and a client pass is a pass owned by a client; the same split applies to subscriptions and client subscriptions. See Terminology for the full resource naming rules.
MCP uses Public API V2. Create V2 webhook registrations through MCP or the V2 REST endpoint. Updating an existing registration preserves its payload version, including historical V1 registrations.
Before you connect¶
You need a bsport company or franchise manager account that the bsport team has granted MCP access. Access is granted to the user account, not to the company, so a colleague cannot connect until their own account is granted.
You also need an assistant that supports remote MCP servers over:
- Streamable HTTP
- OAuth authorization-code authentication with PKCE
- Dynamic client registration
The production server URL is:
Authentication happens in your browser through your bsport account. No extra technical configuration is needed. For a franchise account, ask for the company by name. Your assistant can discover the companies you are authorized to access and choose the requested one. If the name is ambiguous, it should ask you to clarify before acting. Accounts attached to a particular company keep that company's scope, including accounts that also have a franchise role.
bsport requests two scopes during authorization: mcp:read covers the tools
that list and open records, and mcp:manage covers every tool that changes one.
Your assistant sees only the tools its granted scopes allow.
Data you retrieve leaves bsport
Information returned by bsport tools is shared with the AI provider under that provider's terms and controls. Do not use MCP to move client data into an assistant your company has not approved for it.
Approve changes deliberately
Tools that change a bsport record are annotated as consequential. Review the target, the inputs, and the intended outcome before you approve one.
Limits¶
List tools return at most 100 records per call and default to 50, the same
limits as the Public API endpoints they wrap. MCP tool calls go through the same
Public API rate limits as a direct REST integration, so a long conversation can
trigger a 429: see Rate limits.
Compatible assistants¶
Setup instructions are available for:
- ChatGPT
- Claude and Claude Code
- Cursor
- Gemini CLI
Any other assistant that meets the three requirements above can connect through dynamic client registration. The connection guide has the per-assistant steps and troubleshooting advice.
Example conversation¶
You: Use bsport to find tomorrow morning's classes at the central venue.
Assistant: I found three classes. Do you want their current booking counts too?
You: Yes, then show me the clients booked into the 09:00 class.
The assistant discovers the relevant bsport tools and resolves the records itself. Before a change, ask it to state the exact target and action so you can check both before approving the tool call.
Ready to connect?
Set up bsport in your AI assistant
Follow the per-assistant guide, or review the complete Public API V2 contract first.