Drie deuren tussen je prompt en het model.

Elk verzoek volgt één route: geïnspecteerd, gerouteerd volgens je residency-beleid, verzegeld in een manipulatiebestendig grootboek.

clientyour SDKinspectDLP scanrouteresidencysealledgerresponsestreamed
Inspecteren

Elk verzoek wordt gelezen voordat er één token beweegt.

Sluis draait een deterministische DLP-scan over de prompt: 60 ingebouwde detectoren voor PII, medische gegevens en secrets, waaronder een EU-nationaal-ID-pakket dat de BSN, PESEL, codice fiscale en negen andere via een checksum valideert. Elke match wordt geclassificeerd en het verzoek wordt binnen de EU gelabeld, voordat er iets naar een provider gaat.

EU-PII-detectoren
e-mailtelefoon · E.164IBAN · mod-97NL BSN · 11-proefPL PESELIT codice fiscalecreditcard · Luhn
Secret-detectoren
API-keysAWS-toegangssleutelsprivate PEM-sleutels
Detectie van persoonsnamen

Namen zijn de persoonsgegevens die het lastigst met een patroon te vangen zijn, dus naamdetectie bestaat uit vier lagen die je zelf aanzet: contextheuristieken, e-mailcorrelatie, een naamdirectory per tenant en Sluis' eigen meertalige herkenningsmodel, dat binnen je deployment draait en nooit een naam naar een derde partij stuurt.

request.jsonDLP scan
IBANNL91 ABNA ●●●● ●●●● 28masked
NL BSN●●● ●●● ●●●masked
emailj●●●@●●●.nlmasked
API keysk-●●●…●●●blocked
modemaskblockallow-logpseudonymize

Werk met persoonsgegevens en secrets. Het model ziet ze nooit.

Zo werkt het mechanisme: Sluis scant de prompt, vervangt elke PII-waarde en elk secret door een stabiel token en stuurt alleen tokens naar het model. Bij de uitgang herstelt het de echte waarden, zelfs midden in een stream, token voor token, zodat de provider ze nooit ziet. De map leeft in het geheugen en wordt nooit opgeslagen.

your appSluisgatejohn@acme.com«EMAIL_1»«EMAIL_1»masks PIImodel«EMAIL_1»«EMAIL_1»only sees tokenSluisgate«EMAIL_1»john@acme.comjohn@acme.comrestoresyour app
Routeren op residency

Verklaar waar data heen mag. Sluis dwingt het af per verzoek.

Koppel elke dataklasse aan de regio's en providers die ze mag bereiken, met een expliciete terugvalketen. Sluis evalueert het beleid bij elke call: geen uitzonderingen, geen stille uitstroom.

  • EU-soeverein als standaard

    Out of the box bereiken verzoeken alleen providers in EU-handen, zoals Mistral en Scaleway, plus clouds in een EU-regio. Directe Amerikaanse en Chinese providers zijn er ook, standaard uit: sta ze toe in je beleid en Sluis dwingt precies die lijn af.

  • Eigendom, niet alleen regio

    Sluis markeert elke provider op jurisdictie en eigendom (owner_is_eu = false) voor CLOUD Act-blootstelling: een directe Amerikaanse of Chinese route is altijd een keuze die je ziet, nooit een die voor je is gemaakt.

  • Harde blokkades, geen best-effort

    Voldoet geen enkele provider aan het beleid, dan wordt het verzoek bij de deur geweigerd en met een duidelijke redencode teruggestuurd naar je app.

residency.policy · class: PHIenforced
requestFR · primaryFR · fallbackUS · allowedCN · blocked
EU · France
scaleway-fr · owner_is_eu=true
primary
EU · France
mistral-fr · owner_is_eu=true
fallback
US · East
openai-us · owner_is_eu=false
allowed · policy
CN · Hangzhou
deepseek-cn · owner_is_eu=false
blocked · policy
Verzegelen in het grootboek

Een register dat een auditor vertrouwt, omdat het zijn eigen integriteit bewijst.

De hash van elke regel is SHA-256 over de vorige hash en de canonieke rij. Wijzig één veld waar dan ook in de historie en elke schakel erna breekt. Exporteer de keten als JSON Lines en iedereen kan hem offline opnieuw verifiëren.

audit.chain · last 4 entrieschain verified
14:22:07.118Z#4f9c2a e1b7d9 · scaleway-fr · PHIin-region
14:22:05.904Z#e1b7d9 7a3f10 · mistral-fr · PHIfallback
14:22:04.661Z#7a3f10 0c55ab · scaleway-fr · PIIin-region
14:22:02.330Z#0c55ab genesis · scaleway-fr · generalin-region
SHA-256-geketendmanipulatiebestendigJSON Lines-exportverify-chain offline

Het recht op gegevenswissing (art. 17 AVG) wist verzoekinhoud, cache en provider-credentials, en behoudt de metadataketen, zodat verify-chain blijft slagen nadat de data weg is.

Tool-calls krijgen dezelfde drie poorten.

Wanneer je agent via MCP naar een tool grijpt, volgt die call hetzelfde pad als een prompt: geïnspecteerd, gerouteerd, verzegeld. Andere MCP-gateways loggen tool-calls; Sluis bewijst waar ze draaiden.

Inspecteer de tool-call

Dezelfde DLP-pass scant tool-argumenten en tool-resultaten op PII, medische gegevens en secrets voordat ze naar een MCP-server gaan, met dezelfde modes mask, block of allow-log.

Routeer de tool-egress

Een MCP-server valt onder je residency-beleid zoals elke provider: een tool-egress buiten je beleid wordt bij de poort geblokkeerd. Een tool kan je data niet stiekem ergens heen dragen waar je het nooit hebt toegestaan.

Verzegel hem in hetzelfde grootboek

De tool-call en een hash van zijn argumenten worden geketend in hetzelfde manipulatiebestendige grootboek als je modelcalls: één record, één verify-chain, prompts net zo goed als tools.

De enige MCP-gateway waar elke tool-aanroep Inspecteren → Routeren → Verzegelen doorloopt, zodat 'het bleef binnen je beleid' je tools dekt, niet alleen je prompts.

Gebouwd om het verzoek niet in de weg te zitten.

Compliance mag je geen latency kosten. Het hot path is zo ontworpen dat de controles draaien zonder ooit te blokkeren op een database, een lock of een buffer.

Schaal

Stateless by design

De dataplane houdt geen state per verzoek bij, dus schaal je door replica's toe te voegen. Het hot path blokkeert nooit op Postgres: keys, beleid en het providerregister komen uit een in-process cache.

horizontaal schalengeen DB op het hot path
Audit

Verzegeld buiten het hot path

Audit-writes zijn asynchroon en gebundeld. Een achtergrondtaak voegt de hash-geketende rijen toe, zodat het antwoord nooit op het grootboek wacht.

async + gebundeld
Streaming

Gestreamd, nooit gebufferd

SSE-antwoorden gaan rechtstreeks door via een tee. Tokens bereiken je app terwijl ze gegenereerd worden en de body wordt nooit volledig in het geheugen gehouden.

SSE-tee
Budgetten

Uitgaven die niet kunnen afdrijven

Budgetten worden per verzoek in echt geld afgeschreven. Valt Redis weg, dan wordt de uitgave gereconcilieerd uit het duurzame auditgrootboek; zijn beide onleesbaar, dan faalt de controle gesloten.

micro-eurogrootboekgereconcilieerdfail-closed
Snelheid

Gemeten, niet beloofd

De controles kosten bijna niets, en je hoeft het niet op goed geloof aan te nemen: de benchmark-harness wordt gemeten met de poort aan.

+1 ms mediane overheadpoort aan vs poort openintern gemetenSee the benchmark →

Betaal één keer voor hetzelfde antwoord.

Zet per tenant een exact-match-cache en een semantische cache aan, beide strikt per tenant geïsoleerd en AEAD-versleuteld at rest. Winst in kosten en latency die de residency nooit verzwakt: een hit is nog steeds jouw data, in jouw regio.

exact-matchsemantisch · pgvectorAEAD-versleuteld at resttenant-geïsoleerdopt-in

Gebouwd voor de stack die je al hebt.

OpenAI-compatibel tot op de byte. Houd je SDK, je prompts, je tooling. Richt één base_url op Sluis en voeg een residency-header toe wanneer je een klasse verkeer wilt vastpinnen.

  • OpenAI-compatibele API

    /v1/chat/completions, /v1/embeddings, /v1/models: dezelfde requestvormen, dezelfde streaming. Niets om te herschrijven.

  • Werkt met je bestaande SDK's

    Officiële OpenAI-clients, LangChain, kale curl. Geen nieuwe library om te leren, geen propriëtair protocol.

  • Eén base_url, één key

    Wissel het endpoint en munt een virtuele key in de console, elk met een eigen toegestane-modellenlijst, rate limits en uitgavenbudget.

  • Observability ingebouwd

    Prometheus-metrics en OTLP-traces, gelabeld met jurisdiction, owner en decision, rechtstreeks je Grafana in.

shelldrop-in
# Same API. One endpoint. You set the residency policy.
# eu-sovereign is the safe default; allow more deliberately.
$ curl https://api.sluis.ai/v1/chat/completions \
  -H "Authorization: Bearer $SLUIS_KEY" \
  -H "X-Sluis-Residency: eu-sovereign" \
  -d '{ "model": "mistral/mistral-large", "messages": [...] }'

# → mistral-large @ mistral-fr · in-region
# → sealed · #4f9c2a · streamed

Zie de sluis werken op je eigen verkeer.

De catalogusprijs van je provider plus een vaste 10%. Geen seats, geen minima, geen margespelletjes. Je eerste 250K tokens zijn gratis, en geen enkel verzoek verlaat ooit je residency-beleid.