Your data,
on your terms.
The YOGO MCP server connects your studio directly to Claude Desktop, Claude Code and Gemini — ask in natural language, get answers in seconds. Or use the underlying REST API to build your own integrations with CRM, BI stack or staff app.
# Asked in Claude with YOGO MCP > How many customers signed up last month? # Claude calls the MCP tool: list_customers(auto_paginate: true) < 147 new customers in April — 23% more than March. Want a breakdown?
# A first call — fetch your customers curl https://api.yogobooking.com/customers \ -H "X-API-KEY: your_api_key_here"
// A first call — fetch your customers const res = await fetch( 'https://api.yogobooking.com/customers', { headers: { 'X-API-KEY': process.env.YOGO_KEY } } ); const { data, hasMore, next } = await res.json();
Examples you can build this week.
This isn't theory. This is exactly what the YOGO API is designed for. Each integration takes a developer a few days of work — and saves you manual labor for the rest of your studio's lifetime.
Sync classes as shifts to Planday, Tamigo or Sameworks.
Pull the class schedule out of YOGO and create shifts automatically in your scheduling system. The teacher sees their YOGO classes as proper shifts alongside the rest of the team — and the payroll export matches what was actually taught.
// Daily: create shifts in Planday const classes = await paginate( `${YOGO}/classes?from=today&to=+14d` ); for (const c of classes) { for (const teacherId of c.teacherIds) { await planday.shifts.create({ employeeId: mapTeacher(teacherId), departmentId: DEPT, startDateTime: c.startsAt, endDateTime: c.endsAt }); } }
Reassign teachers from a chat — without opening the admin panel.
Ask Claude in natural language. It finds the class and the
teacher via list_classes and list_teachers,
then runs set_class_teachers. Every write is
logged in the audit log and can be retrieved via
list_write_logs.
# Example prompt in Claude Desktop > Put Mette on Vinyasa Thursday 07:00. # Claude finds the class and teacher: list_classes({ from: "2026-05-14", to: "2026-05-14" }) list_teachers({ search: "Mette" }) # Writes the change: set_class_teachers({ classId: 12345, teacherIds: [678] }) # Audit log: list_write_logs({ entityType: "class.teachers" })
Sync members into HubSpot, Mailchimp or Klaviyo.
Run a nightly job that pulls all customers with their booking history and pushes them into your marketing platform. Segment on actual behaviour — active, lapsed, newly signed up — and send relevant campaigns.
# Nightly: sync customers to Mailchimp let cursor; do { const res = await fetch( `${YOGO}/customers?after=${cursor || ''}`, { headers: { 'X-API-KEY': KEY } } ).then(r => r.json()); await mailchimp.lists.batchSubscribe( LIST_ID, res.data.map(toMailchimpMember) ); cursor = res.hasMore ? extractAfter(res.next) : null; } while (cursor);
Live dashboard in Power BI or Looker Studio.
Pull bookings and class data into your BI stack — combined with finance data from your accounting system, fitness data from Strava, or whatever else you run. Finally, a holistic management report.
# Daily ETL → Power BI dataset const bookings = await paginate( `${YOGO}/bookings?from=${yesterday}` ); // Bookings + class expansion (requires expand=class) const bookings = await paginate( `${YOGO}/bookings?from=yesterday&to=today&expand=class` ); const rows = bookings.map(b => ({ date: b.class.startsAt, className: b.class.className, status: b.cancelledAt ? 'cancelled' : b.checkedInAt ? 'checked-in' : 'booked', customerId: b.customerId })); await powerbi.pushRows(DATASET, rows);
Push teachers and classes into your branded staff app.
Sync the class schedule and teacher records to your staff app — for example Monotree — so the team has today's shifts, contact info and class details in their pocket, alongside onboarding and internal communications. One app, one source of truth.
// Daily push to Monotree const classes = await paginate( `${YOGO}/classes?from=today&to=+14d&expand=classType,room` ); const shifts = classes.map(c => ({ date: c.startsAt, title: c.classType.name, teacherIds: c.teacherIds, room: c.room.name })); await monotree.shifts.upsert(shifts);
Kristian built an sGTM integration — and open-sourced it.
Kristian Krogh Bang has built an open-source pipeline that
polls /orders, /bookings and
/customers every 60 seconds and forwards the
data to server-side GTM — and from there to GA4, Meta
CAPI, Klaviyo or whatever you run. The whole project is
Apache 2.0 licensed on GitHub. A solid reference if you want
to build something similar.
Your entire studio.
In one chat.
The YOGO MCP server runs at mcp.yogobooking.com/mcp
and exposes every REST endpoint as an MCP tool. Connect it to
Claude Desktop, Claude Code or Gemini using your existing API
key — same auth, same audit log. No glue code, no servers
for you to run.
Your whole studio as tools
Customers, teachers, orders, bookings, classes —
every REST endpoint is exposed as an MCP tool. Including
set_class_teachers for reassigning teachers
straight from chat.
Same API key, same rules
The MCP server uses your existing API key as a bearer
token. Same plan gating and same audit log via
list_write_logs.
Connected in 5 minutes
Claude Desktop, Claude Code and Gemini are supported. Add the server with a single CLI command or a config file — no code required.
One flat price. Everything included.
API access is an add-on to the Studio and Studio+App plans.
Requires an active Studio or Studio+App plan.
- Complete public documentation
- Access to all existing endpoints
- New endpoints as they ship — at no extra cost
- EU-hosted, GDPR compliant
The fine print
We provide comprehensive API documentation, but we do not offer support for the integration process itself. This means you need the capacity to build and maintain your integration in-house. We of course make sure the API is continuously maintained and updated on our end. If you have questions about how the API works, you are welcome to reach out.
The things we get asked most.
What is the YOGO API?
The YOGO API is an official REST API for the YOGO Booking platform. It lets yoga studios, fitness centers and wellness businesses pull their own data — customers, orders, bookings, classes, teachers — and build integrations with CRM, email marketing, BI stack, scheduling and staff apps.
How much does the YOGO API cost?
API access costs €79 per month and is an add-on to YOGO's Studio and Studio+App plans. The price includes access to all existing endpoints, the MCP server, and future endpoints at no extra cost. Complete public documentation is freely available at docs.api.yogobooking.com.
What is the YOGO MCP server?
The YOGO MCP server is a Model Context Protocol server that exposes YOGO's REST endpoints as tools directly inside Claude Desktop, Claude Code and Gemini. It runs at mcp.yogobooking.com/mcp, uses your existing API key as a bearer token, and shares the same audit log as the REST API. Connecting it takes 5 minutes and requires no code.
What integrations can I build with the YOGO API?
Typical integrations include: syncing customer data to CRM (HubSpot, Klaviyo, Mailchimp), live dashboards in BI tools (Power BI, Looker Studio, BigQuery), scheduling where teachers appear as shifts (Planday, Tamigo, Sameworks), branded staff apps with today's classes (e.g. Monotree), custom booking widgets on your own site (Squarespace, Webflow, Next.js), and server-side analytics tracking (sGTM → GA4, Meta CAPI). A developer can typically build a standard integration in a few days of work.
Does YOGO offer support for the integration process itself?
No. We provide comprehensive API documentation, but we do not offer support for the integration process itself. This means you need the capacity to build and maintain your integration in-house, or hire an external developer. We of course make sure the API is continuously maintained and updated on our end, and you are welcome to contact us with questions about API functionality.
Which YOGO plans have API access?
API access is available as an add-on to the YOGO Studio and Studio+App plans. You need an active Studio or Studio+App plan, and can then activate API access for €79/month.
Is the YOGO API GDPR compliant?
Yes. The YOGO API is EU-hosted and GDPR compliant. You retain full control over your own data — the API only exposes data from your own studio via an API key bound to your account.
Start with the documentation.
The full, up-to-date documentation is publicly available. Get in touch when you're ready to activate API access on your account.