De Fysioplek API and MCP server
De Fysioplek (defysioplek.nl) shows which physiotherapy practices in and around Amsterdam have a free appointment soon. You search by district, complaint and time of day; patients need no account. Practices cannot pay for a higher position. The same data is open to developers and AI assistants: through a public API and an MCP server.
Public API
A read-only REST API, no key needed. Every answer is JSON (UTF-8), times are ISO 8601 in the Amsterdam time zone, and lists page with a next_cursor. Errors always have the same shape: {"error": {"code", "message"}}.
Limit: 60 requests per minute per IP address. Above that you get 429 with Retry-After. Answers may be cached for a minute.
Endpoints
GET /api/v1/areas: The areas you can search (districts and towns), with their number of practices.GET /api/v1/categories: The complaint categories with a fixed slug; the names follow Accept-Language (nl or en).GET /api/v1/slots: Free times, soonest first, each with the link that opens exactly that time on De Fysioplek. Filters: area, category, practice, from, to, daypart, limit (max 50) and cursor.GET /api/v1/practices: Every practice listed on De Fysioplek, with its public facts: branches, specialisms, insurers, the next free time, its page and the booking link.GET /api/v1/practices/{slug}: One practice, with its therapists and treatments.GET /api/v1/meta: When the data was last refreshed, how many practices it covers and how booking works.
The full description is in the OpenAPI specification: https://defysioplek.nl/api/v1/openapi.json
Example request
curl https://defysioplek.nl/api/v1/practices?limit=1Example response (shortened, a made-up practice)
{
"practices": [
{
"slug": "voorbeeld-fysio",
"name": "Voorbeeld Fysio",
"branches": [{"street": "Voorbeeldstraat 1", "postcode4": "1094", "city": "Amsterdam",
"district": "Oost", "lat": 52.36, "lng": 4.93}],
"specialisms": ["Rug", "Knie / been"],
"insurance": {"status": "all", "insurers": [], "except_insurers": [], "checked_at": ""},
"next_free": {"start": "2026-11-09T18:30:00+01:00"},
"page_url": "https://defysioplek.nl/praktijk/voorbeeld-fysio",
"booking_url": "https://defysioplek.nl/zoeken?zoek=Voorbeeld+Fysio&utm_source=api&utm_medium=referral"
}
],
"next_cursor": "cDp2b29yYmVlbGQtZnlzaW8"
}MCP server
For AI assistants such as ChatGPT and Claude there is a public MCP server (Streamable HTTP, no login). Use this address:
https://defysioplek.nl/mcpTools, with an example prompt
list_search_options: The areas and complaint categories to search with (the same JSON as /api/v1/areas and /api/v1/categories).
“Which parts of Amsterdam can I search for a physiotherapist?”find_slots: Free times by area, complaint, practice, date or part of the day, each with a link to that time on De Fysioplek (the same JSON as /api/v1/slots).
“Find a free physio appointment in Amsterdam-Oost tomorrow.”practice_details: The public facts of one practice, by its slug (the same JSON as /api/v1/practices/{slug}).
“Tell me more about this practice and its branches.”find_practices: Every practice on De Fysioplek, in pages (the same JSON as /api/v1/practices).
“Which physiotherapy practices are on De Fysioplek?”book_slot: Books one free time in two steps: first a summary, and only after the patient confirms it in the chat, the booking. This tool works once it is in the server's tool list. Until then the assistant gives the patient the link to book on defysioplek.nl.
“Book the 18:30 appointment at this practice for me.”
Two resources to read once: dfp://meta (how fresh the data is and how booking works) and dfp://categories (the complaint categories).
Add it as a connector
- ChatGPT: in the settings, add a custom connector (app) with the address above, without authentication.
- Claude: go to Settings › Connectors › Add custom connector and enter the address above.
Menu names can change; look for ‘connector’ or ‘MCP’.
Privacy
The API neither asks for nor returns patient data. Booking only happens on our own site or, once it is live, with the tool book_slot. We do not publish practices' phone numbers, websites or e-mail addresses.
Questions
Email info@defysioplek.nl.