omniaHandleiding
Naslag

Integraties, API en AI-assistenten

Een integratie krijgt toegang tot concrete taken en gegevens, niet automatisch tot de hele installatie. De gekoppelde assistent kan analyseren en voorstellen doen; Omnia blijft verantwoordelijk voor feiten, rechten, validatie en uitvoering.

Deze pagina beschrijft de MCP- en koppelingsmogelijkheden in de gecontroleerde platformrevisie. Het zijn API- en backendmogelijkheden, nog geen complete assistentreis: er is geen scherm om koppelingen te beheren en een token geeft nog geen toegang tot persoonlijke tools.

ProcesdiagramVan toestemming naar een vastgelegde assistentaanroep
  1. Persoon
    Geef toestemming voor een koppeling

    Beschikbaar via de API: één editie of uitdrukkelijk alle edities, alleen-lezen tenzij schrijfgroepen gekozen zijn, hooguit 90 dagen. Nog geen scherm.

  2. Assistentclient
    Roep Omnia aan via MCP

    Beschikbaar: anonieme alleen-lezentools over het gepubliceerde programma. Persoonlijke tools antwoorden met een aanmeldverzoek.

  3. Omnia
    Controleer koppeling en recht

    Nog niet beschikbaar: een token wordt nog niet aan een koppeling verbonden, dus persoonlijke en schrijftools blijven dicht.

  4. Omnia → persoon
    Leg de aanroep vast in de audit

    Beschikbaar: één record met alleen metadata per toolaanroep, leesbaar als je eigen activiteit.

Stap 1, 2 en 4 bestaan in de gecontroleerde revisie. Stap 3, goedkeuringen en CFP-inzending via MCP zijn komend werk en mogen niet als beschikbaar worden voorgesteld.

Wat er nu beschikbaar is

Het MCP-endpoint. POST /v1/mcp accepteert JSON-RPC 2.0 (initialize, tools/list, tools/call en notificaties) in een stateless vorm van Streamable HTTP: elk antwoord is gewone JSON, er is geen eventstream en geen MCP-sessie. De protocolversie is 2025-06-18. Het endpoint bestaat alleen als de API zijn publieke origin kent (OMNIA_API_URL); anders antwoordt het met 404. Een browser-Origin moet bij die origin passen.

Twee anonieme alleen-lezentools lezen het gepubliceerde programma van een gepubliceerde editie, precies zoals het openbare programma:

  • list_sessions: argumenten reference (de openbare referentie van de editie, verplicht), search, pageSize (1–50, standaard 20) en offset.
  • get_session: argumenten reference en sessionId.

Resultaten zijn gemarkeerd als onbetrouwbare data. De catalogus noemt ook list_speakers en list_my_favourites, als nog niet beschikbaar. Een aanroep van list_my_favourites geeft 401 met een bearer-challenge.

Een eigen misbruikbudget. MCP-verkeer heeft een eigen tegoed per adres (groep mcp, standaard 1.000 verzoeken per minuut) en verbruikt het programmategoed niet. Bij overschrijding antwoordt Omnia met 429 en Retry-After. Beheerders stellen dit in bij beheer.

Metadata van de beschermde bron (RFC 9728). GET /.well-known/oauth-protected-resource noemt de API als bron en de ingestelde OpenID Connect-issuer als autorisatieserver. De 401 voor een persoonlijke tool bevat WWW-Authenticate: Bearer resource_metadata="…". De metadata bestaat alleen als er een identiteitsprovider is ingesteld.

Assistentkoppelingen voor een persoon. Een aangemelde persoon beheert de eigen koppelingen via de API onder /v1/me/assistant-connections:

Actie Verzoek Goed om te weten
Overzicht GET /v1/me/assistant-connections Nieuwste eerst, inclusief verlopen en ingetrokken koppelingen.
Toestemming POST /v1/me/assistant-connections clientId; precies één van editionId of allEditions: true; writeGroups (Favourites, Reviews) alleen indien nodig, anders alleen-lezen; optioneel expiresAt.
Onbeheerde agent registreren POST /v1/me/assistant-connections/agents agentName en purpose; wie registreert, wordt de verantwoordelijke persoon.
Verlengen POST …/{id}/renew Nieuwe vervaldatum van hooguit 90 dagen. Een ingetrokken of opgeschorte koppeling is niet te verlengen.
Intrekken POST …/{id}/revoke Direct en definitief. Nogmaals intrekken verandert niets.

De standaardlooptijd is 90 dagen; dat is ook het maximum. Een latere expiresAt wordt geweigerd met 422 connection-expiry-too-long; Omnia kort die niet stilzwijgend in. Verlengen en intrekken vragen If-Match met de versie van de koppeling: zonder krijg je 428, met een verouderde versie 412.

De MCP-audit. Elke tools/call schrijft één metadatarecord: tijdstip, soort actor, tool, bewerkingsreferentie en uitkomst. Argumenten, resultaten en inloggegevens worden niet opgeslagen. Een persoon leest de eigen activiteit via GET /v1/me/assistant-activity. Medewerkers met identiteitsbeheer lezen het organisatieoverzicht via GET /v1/admin/assistant-activity. Bewaartermijn en verwijdering staan bij privacy.

Wat dit nog niet betekent

  • Geen scherm voor koppelingen. De web- en beheerapp hebben geen pagina om toestemming te geven, te verlengen of in te trekken. Alleen de gegenereerde API-client kent deze routes.
  • Een token opent nog niets. Het koppelen van een token aan een verbinding (platform #1968) is nog open. Een bearer-token op /v1/mcp maakt van een koppeling nog geen toegang; de persoonlijke tools blijven dicht.
  • Nog geen CFP-inzending via MCP. Inzendreizen voor sprekers via MCP (#2335, PR #2343, pariteitstest #2341) worden voorbereid voor de call die op 1 december 2026 opent. Ze zitten niet in de gecontroleerde revisie.
  • Nog geen goedkeuringen of step-up. Ondertekende inline goedkeuring en reviewinzending met step-up (#1975) volgen nog.
  • Nog geen acceptatie met echte client of identiteitsprovider. End-to-endacceptatie met een geregistreerde client en een echte provider hoort bij #1821 en bij de installatieacceptatie.

Een koppeling voorbereiden

Leg doel, gebruiker, organisatie, editie en gewenste mogelijkheden vast. Controleer welke lees- en schrijfrechten de gekozen release werkelijk biedt. Gebruik voor applicatie-integraties de gepubliceerde API-contracten (contracts/openapi) en houd resultaten en fouten binnen hun scope. Het MCP-endpoint zelf staat niet in het OpenAPI-document.

Voor gevoelige acties moet de geldige bevestiging bij de concrete bewerking horen. Een oud chatantwoord, een gecachet resultaat of een geraden ID is geen toestemming voor een nieuwe actie.

Onbetrouwbare inhoud

Inzendingen, biografieën en documenten zijn data, geen instructies om rechten te veranderen of andere tools uit te voeren. Daarom markeren de MCP-tools teruggegeven inhoud als onbetrouwbare data. Autorisatie en validatie moeten onafhankelijk van de interpretatie van een taalmodel blijven werken.

Gebeurtenissen en externe berichten

De spec beschrijft notificaties met herleidbare herhalingen, begrensde gegevens en herstel na tijdelijke fouten. Verifieer de daadwerkelijk aangeboden endpoints, authenticatie en aflevering op de gekozen release voordat je een externe workflow afhankelijk maakt van een webhook.

Over dit hoofdstuk

Deels beschikbaar; zie beperkingen

Gecontroleerd op 2026-11-14 · platform fb1761f7

Bronnen: 28 · Implementatie

Van eerste voorstel tot evenement: volg jouw rol, keuzes en volgende stap.