# MCP server

The YOGO MCP server lets an AI assistant — Claude, ChatGPT, Gemini, or any
other tool that speaks the [Model Context Protocol](https://modelcontextprotocol.io)
— look things up in your YOGO account and answer questions about it. You ask
in plain language ("how many customers signed up last month?"), and the
assistant fetches the data itself.

Under the hood it is the same API documented here, offered in a shape AI tools
understand. Same data, same plan requirement — you just don't have to write any
code.

The server address is:

```
https://mcp.yogobooking.com/mcp
```

## What you need

- A **Studio** or **Studio+App** plan.
- API access switched on for your account. If you can see
**Settings → API Keys** in your admin module — that is where connections are
listed — you are set. If not, contact YOGO support. Should API access later
be switched off, or the plan change, existing connections stop working until
it is switched back on.
- An admin login. A connection acts on behalf of the admin who set it up, with
the same permissions that admin has.


## Connecting

You connect by signing in with your ordinary YOGO admin account. Add the server
address as a custom connector in your AI app, and it sends you to a YOGO
sign-in page where you log in and approve the access. Nothing to copy or paste,
no credential to keep safe, and the connection can only reach your own studio's
data.

1. In your AI app, add a custom connector and paste
`https://mcp.yogobooking.com/mcp`.
2. The app sends you to a YOGO sign-in page. Log in with your admin email and
password.
3. If your email is an admin on more than one YOGO account, pick the one you
want to connect.
4. Read what the assistant is asking for and click **Allow access**.


The connection then shows up in your admin module under
**Settings → API Keys**, in the *Connected AI assistants* list — which
assistant it is, who approved it, and when. **Revoke** cuts it off
immediately: the assistant loses access on its very next request.

A few things worth knowing:

- A connection belongs to the admin who approved it, so connecting your
assistant does not connect your colleagues'. Everyone who can open the page
sees the whole list, though, and can revoke any connection on it.
- If your email is an admin on a lot of accounts — more than ten, or you work
at YOGO — the sign-in page asks for the studio domain (for example
`demo.yogo.dk`) instead of listing them all.
- Access renews itself quietly in the background for as long as the connection
exists, so you don't have to sign in again every day.
- Coding tools work the same way. In Claude Code, for example,
`claude mcp add --transport http --scope user yogo https://mcp.yogobooking.com/mcp`
adds the server, and `/mcp` then walks you through the same sign-in. No
header to set, nothing to paste.


## What an assistant can do

It can look up your customers, teachers, classes, bookings, memberships and
class passes, class series, events and event registrations, and orders.

It can make exactly one change: reassigning the teachers on a class. Every
change of that kind is written to the audit log, which the assistant can also
read back for you ("list any teacher changes made through the API today"). The
log covers changes made through the API and this server only — what you and
your staff do in the admin module is not in there.

Nothing else can be edited, created or deleted. An assistant cannot take a
payment, cancel a membership or write to a customer's profile.

You don't need a list of individual capabilities: your AI app asks the server
what it offers the moment it connects, and picks the right lookup for whatever
you ask. Some examples of what people ask for:

- *"Show me next week's classes and who is teaching them."*
- *"How many customers signed up in the last 30 days?"*
- *"Find all orders over 1,000 DKK in April, grouped by customer."*
- *"Which teacher taught the most classes last month?"*
- *"Put Maria on class 12345 instead of Jonas."*


## Data protection and GDPR

Your YOGO data includes personal data about your customers, and this server
hands some of it to whichever AI provider you connect. Under GDPR your studio
is the data controller, so that decision — and the paperwork behind it — is
yours. YOGO is not a party to your agreement with the AI provider.

Two practical things to check before you connect:

1. **What the provider does with the data.** Free and personal plans often
allow the provider to use what you send to improve their models. Business,
Team and Enterprise plans normally do not, and normally come with a data
processing agreement (DPA) and a list of sub-processors. If you are on a
commercial plan from a major provider, you are usually on solid ground —
but read the terms of your specific plan rather than assuming.
2. **Where the data goes.** Most AI providers process data outside the EU. That
is allowed with the right transfer mechanism in place, which is normally
part of the provider's DPA.


Practical habits that keep the exposure small: connect only assistants your
studio actually needs, keep the *Connected AI assistants* list tidy and revoke
what you no longer use, and don't paste customer data out of the assistant into
places it doesn't belong. Only what the assistant actually looks up is sent —
it is not a bulk copy of your database.

If you are unsure whether your setup is compliant, ask the person or firm that
handles data protection for your studio. YOGO cannot advise on your obligations
as a controller.