Skip to main content
De Hi-Doctor MCP-server is een OAuth 2.1-resourceserver. Hij heeft geen eigen patiëntendatabase — elke toolaanroep wordt als u doorgestuurd naar de Hi-Doctor API, met de machtigingen van uw eigen account.

Inloggen

Bij het koppelen wordt een standaard OAuth 2.1-authorization-code-flow met PKCE (S256) doorlopen. Uw AI-client ziet uw wachtwoord nooit: u voert het in op een pagina van Hi-Doctor, en de client ontvangt een kortlevende autorisatiecode die hij inwisselt voor een token. De server publiceert de discovery-documenten die een MCP-client verwacht, zodat er niets handmatig geconfigureerd hoeft te worden: Autorisatiecodes zijn eenmalig en kortlevend. Een code twee keer inwisselen mislukt — een opnieuw afgespeelde code wordt afgewezen, niet gehonoreerd.

Waar een token naartoe mag worden teruggestuurd

Elke geregistreerde client krijgt een ondertekende client_id die de exacte redirect-URI bindt waarmee hij zich heeft geregistreerd. Op het moment van autoriseren moet de gevraagde redirect_uri exact met die binding overeenkomen.
Dit is de verdediging tegen het onderscheppen van autorisatiecodes: een aanvaller die uw client_id kent, kan de code alsnog niet naar zijn eigen server laten sturen, omdat de URI in het identificatiekenmerk is verzegeld en wordt gecontroleerd voordat het inlogformulier ook maar wordt getoond.
Loopback-redirects volgen RFC 8252 §7.3 — de poort mag variëren, zoals desktopclients nodig hebben, maar de rest van de URI moet overeenkomen.

Tokens

Toegangstokens zijn met AES-256-GCM versleutelde enveloppen, geen kale backendreferenties. Een envelop is aan zijn audience gebonden en wordt afgewezen als hij is gemanipuleerd, tegen de verkeerde resource wordt afgespeeld, of wordt aangeboden nadat het backendtoken erin is verlopen. Een refresh-envelop kan niet worden gebruikt waar een access-envelop vereist is. Uw Hi-Doctor-wachtwoord wordt bij het inloggen ingewisseld voor een token en wordt nooit door de connector opgeslagen, nooit naar een log geschreven en nooit aan de koppelende applicatie doorgegeven.

Machtigingen

Tools zijn gegroepeerd, en elke groep vereist een eigen scope — profiel, consulten, berichten, vragenlijsten, voortgang, betaling. Een tool waarvan u de scope niet hebt verleend, wordt niet alleen geweigerd, maar niet aangeboden: hij verschijnt nooit in de toollijst van de client. Rollen stapelen niet. Een account krijgt precies één toolcatalogus, dus een patiënttoken kan nooit bij een tool van een arts of van de backoffice komen. Zie Machtigingen voor de volledige lijst.

Wat de server weigert prijs te geven

  • 5xx-antwoorden van de backend worden volledig weggegooid. Een fout stroomopwaarts levert een stabiele, generieke foutmelding op in plaats van een interne trace.
  • 4xx-antwoorden worden gefilterd tot een allowlist van gestructureerde velden, zodat een fout bruikbaar kan zijn zonder patiëntgegevens terug te echoën via het toolresultaat.
  • Padargumenten kunnen niet ontsnappen aan de geconfigureerde API-host of het versievoorvoegsel daarvan.
  • Rate limiting wordt bijgehouden op het token, niet op een header die een aanroeper zou kunnen aanpassen om een verse bucket te krijgen.

Betaling

De connector verwerkt nooit kaartgegevens. hidoctor_checkout_create geeft een link naar de eigen gehoste checkout van Stripe, en wijzigingen aan kaart, plan en factuuradres gebeuren in het Stripe-facturatieportaal. Er is geen tool die een kaartnummer aanneemt, en een assistent die u erom vraagt, praat niet met Hi-Doctor.

Klinische grenzen

Geen enkel token, van welke soort dan ook, kan een consult goedkeuren, een recept uitschrijven of wijzigen, of een dosering aanpassen. Die handelingen worden helemaal niet door de MCP-server aangeboden — ze zitten niet achter een scope, ze zijn er simpelweg niet. De medische geschiktheid wordt door de backend van Hi-Doctor afgedwongen wanneer een vragenlijst wordt ingediend. Een assistent kan een patiënt niet vooraf goedkeuren, en opnieuw indienen met andere antwoorden omzeilt de controle niet.

Een probleem melden

Mail hello@hi-doctor.ai met de details. Denkt u dat patiëntgegevens zijn blootgesteld, vermeld dat dan in de onderwerpregel, zodat de melding als eerste wordt opgepakt.