01 / ModellaagAGENT & MCP

AI-agents en MCP-servers testen: tools, geheugen en bereik.

Een securitytest van een AI-agent is een geautoriseerde aanval op een AI-systeem dat plant en handelt: het roept tools aan, onthoudt dingen en werkt met gedelegeerde credentials. We testen wat je agent doet als een vreemde hem iets opdraagt, met wiens rechten, en hoe ver één gemanipuleerde stap reikt in je API’s en data. MCP security hoort erbij: we reviewen de MCP-servers die je bouwt en die van derden waarop je agents leunen. Bevindingen koppelen we aan de OWASP Top 10 for Agentic Applications (2026), de tien grootste risico’s van AI-agents, en aan MITRE ATLAS.

Voor teams waarvan de AI meer doet dan antwoorden: terugbetalingen, boekingen, tickets, code, e-mail, alles met een tool erachter.

Pakket
AGENT & MCP
Bandbreedte, excl. btw
EUR 6.000 tot 15.000
Testdagen
4 tot 10

TRACE / FICTIE / EEN TAAK, DRIE TOOL CALLS03 REGELS GELEZEN / 1 GEVONDENVOORBEELD

TAAK: VOEG DE FACTUUR TOE AAN CLAIM 20931

  1. 01 lookup_claimCLAIM IN DEZE SESSIE / BINNEN DE TAAK
  2. 02 upload_documentCLAIM IN DEZE SESSIE / BINNEN DE TAAK
  3. 03 request_refundANDERE CLAIM / BUITEN DE TAAK

CALL 03 / TOOL GEBRUIKT BUITEN ZIJN TAAK / ASI02

Twee calls doen wat de klant vroeg; de derde bereikt een claim die in het gesprek nooit is genoemd. Wij testen tot welke tools een agent zich laat overhalen, met wiens rechten, en of de server elke call aan de taak bindt.

Hoe verloopt een securitytest van een AI-agent?

Een agent is een keten van beslissingen. We testen elke schakel, en daarna de keten.

  1. 01Inventaris

    We zetten alles op een rij wat de agent mag doen.

    Elke tool, de argumenten, de credentials erachter en de data die hij teruggeeft; elk geheugen en wie erin schrijft; elke agent aan wie hij werk overdraagt; elke MCP-server met zijn tooldefinities. Een recht dat de taak nooit nodig had, is al een bevinding voordat de eerste test draait. De inventaris hoort dus bij het rapport, niet ervoor.

  2. 02Wat hij leest

    We testen eerst de indirecte paden.

    Een agent wordt zelden via zijn chatvenster aangevallen. We plaatsen onze eigen, gelabelde testcontent op plekken waar de agent die bij normaal werk leest, zoals een ticket, een document of een toolresultaat, en kijken of het zijn doel verandert. Elk stuk testcontent staat in de spelregels, en aan het eind halen we het weer weg.12

  3. 03Tools, veilig

    We testen elke tool tegen testdata, nooit tegen echte klanten.

    Tool calls draaien tegen testaccounts en testrecords die vooraf in de spelregels staan. Destructieve acties testen we met dry runs of omkeerbare testobjecten, en voor alles wat onomkeerbaar is, vragen we eerst je schriftelijke akkoord.

  4. 04MCP-servers

    MCP security: we lezen elke tool zoals het model hem leest.

    Namen, beschrijvingen, schema’s en annotaties, voor elke tool en elke versie die je draait. De specificatie zegt dat clients toolannotaties als onbetrouwbaar moeten behandelen, tenzij de server vertrouwd is; we kijken waar je agents die grens trekken, en wat eroverheen komt.3

    Daarna testen we de server als API: de audience en levensduur van tokens, scopes, toestemming en redirects. De specificatie verbiedt dat een server het token van een client rechtstreeks doorgeeft aan een API verderop; we controleren dat het niet gebeurt.4

  5. 05Gedelegeerde credentials

    We volgen het token.

    Roept de agent namens een gebruiker een API aan, dan controleren we of het token beperkt is tot die gebruiker en die taak, en testen we wat het daarbuiten opent. Hier wordt een agentbevinding een stackbevinding: de API moet het eigendom van objecten controleren tegen de eindgebruiker, niet tegen de agent.5

  6. 06Score en indamming

    We noteren hoe vaak het werkte, en wat het had tegengehouden.

    Bij elke bevinding staan een reproductiescore, het model, de instellingen en de toolversies, en de maatregel die de keten het vroegst breekt: een smallere scope, een bevestigingsstap, een sandbox of een limiet. Vroeg breken kost meestal één wijziging; elk symptoom apart dichten kost er veel.

Hoe ziet een bevinding bij een agent eruit?

Eén kaart per bevinding, steeds met dezelfde velden. Deze komt uit de fictieve opdracht in ons voorbeeldrapport.

VOORBEELD / FICTIEVE KLANT / ECHT FORMAT

SAMPLE-01 / F-02

HOOGCVSS-B 8.2MODELLAAGASI02

De assistent kan zijn terugbetaaltool aanroepen voor een claim die hij niet behandelt

Impact op het bedrijf
Er kan een terugbetalingsverzoek worden ingediend op een claim die niet van de klant is. Het stopt bij de menselijke goedkeuring, maar het komt wel in de wachtrij.
Reproductie
GEREPRODUCEERD 6/10 Model, versie, instellingen en taal vastgelegd per poging.
CVSS v4.0-vector
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
Oplossingsprincipe
Geef tools de minimale rechten die de taak vraagt: koppel de tool aan de claim in de sessie, niet aan een argument dat het model invult.
Hertest
OPGELOST 2026-09-24 0 van 10 pogingen bij de hertest.
Het format dat elke bevinding in ons rapport krijgt. De klant en de bevinding zijn fictief; de velden niet. Lees F-02 in het voorbeeldrapport.

Wat testen we in een AI-agent en zijn MCP-servers?

De tien risico’s uit de OWASP Top 10 for Agentic Applications, plus de twee LLM-risico’s die gevaarlijk worden zodra een model kan handelen: te veel handelingsruimte en onbegrensd verbruik. Elke regel noemt wat we controleren en de ids waaraan het gekoppeld is.6

Een MCP-server is twee dingen tegelijk: een set toolbeschrijvingen die een model als richtlijn leest, en een API die met echte credentials handelt. Beide helften toetsen we aan de huidige specificatie, en daarom staan er twee API-regels bij.7

Elke regel is een categorie uit onze testcatalogus. De ids linken naar het framework dat ze definieert.
Nr.CategorieWat we controlerenGekoppeld aan
01Doelintegriteit van de agent als invoer en documenten instructies bevattenOf een document, e-mail, ticket of toolresultaat kan veranderen wat de agent probeert te bereiken, en of iets het opmerkt als dat gebeurt.
02Tool- en functieaanroepen binnen de bedoelde reikwijdte van de taakOf elke tool call binnen de taak blijft die de gebruiker vroeg, met argumenten die de gebruiker zelf had kunnen kiezen.
03Identiteit van de agent, gedelegeerde rechten en grenzen aan bevoegdhedenMet wiens credentials de agent handelt, of die beperkt zijn tot de taak, en of de sessie van de ene gebruiker die van een andere kan lenen.
04Integriteit van agentgeheugen en gedeelde contextWie in het geheugen en de gedeelde context van de agent kan schrijven, en of een vergiftigde invoer andere gebruikers naar latere sessies volgt.
05Agentische toeleveringsketen: MCP-servers, plug-ins en tooldefinitiesWaar tools, plug-ins en MCP-servers vandaan komen, of hun definities kunnen veranderen nadat je ze goedkeurde, of je agents de versies vastpinnen en wie een wijziging beoordeelt.
06Grenzen aan code-uitvoering en sandboxing voor agentsOf code die de agent schrijft of uitvoert in een sandbox draait, zonder route naar secrets, het netwerk of de host.
07Authenticatie en integriteit van berichten tussen agentsOf agents elkaar authenticeren, en of een bericht tussen hen onderweg vervalst, opnieuw afgespeeld of aangepast kan worden.
08Inperking van fouten die zich over agents en workflows verspreidenOf een fout in één stap, tool of agent beperkt blijft, of door elke agent verderop in de keten wordt herhaald.
09Menselijke goedkeuring en waarborgen bij vertrouwde agentoutputWelke acties de goedkeuring van een mens nodig hebben, en of het goedkeuringsscherm laat zien wat er werkelijk gaat gebeuren.
10Detectie en inperking van agents die van hun opdracht afwijkenOf je zou merken dat een agent buiten zijn mandaat handelt: de logs, de limieten en een manier om hem te stoppen.
11Te veel handelingsruimte: rechten, autonomie en reikwijdte van toolsWelke tools en rechten de agent heeft die zijn taak eigenlijk niet nodig heeft.
12Grenzen aan verbruik en bescherming tegen denial of walletLimieten op loops, plafonds voor uitgaven en time-outs, zodat een gemanipuleerde agent geen kosten kan opdrijven of eindeloos doorloopt.
13API-authenticatie en omgang met tokensVoor MCP-servers: authenticatie op elk request, de audience en levensduur van tokens, en de toestemmingsflow als de server voor een API van derden staat.
14Validatie van modeloutput voordat die code, browsers of databases bereiktOf de resultaten van een MCP-tool gecontroleerd worden voordat ze het model, de interface van de client of een ander systeem bereiken.

Buiten scope De broncode van het agentframework zelf, tenzij je die onderhoudt; MCP-servers en diensten van derden zonder schriftelijke toestemming van hun eigenaar, die we alleen vanaf jouw kant van de verbinding reviewen; en het trainen van modellen.

Wat kost een securitytest van een AI-agent of MCP-server?

De bandbreedte hieronder is ons pakket Agent en MCP, exclusief btw. Het dekt de agent en de MCP-servers die hij gebruikt; één server met een handvol tools die alleen lezen, zit aan de onderkant. De offerte na het scopinggesprek bepaalt het precieze bedrag.

01 / AI Pentest

AGENT & MCP

EUR 6.000 tot 15.000

DOORGAANS 4 TOT 10 TESTDAGEN

Wat de prijs bepaalt

  • Het aantal tools, en hoeveel daarvan schrijven of geld uitgeven
  • Geheugens en overdrachten tussen agents in scope
  • MCP-servers die je zelf draait, en die van derden waarop je leunt
  • Of tool calls tegen testdata op staging kunnen draaien

Bekijk alle prijzen

Rapport
Scope, methode, datums, bevindingen met bewijs, ernst in CVSS v4.0, framework-ids, oplossingsadvies en de status na de hertest.
Verklaring
Eén pagina die scope, datums en de status na de hertest bevestigt, voor klanten die het resultaat willen zonder de bevindingen.
Dekkingsmatrix
Elke categorie in scope gemarkeerd als getest, niet van toepassing of buiten scope, zodat ook de gaten op papier staan.
Bewijs
Traces van de tool calls bij elke reproductie, met tool- en modelversies, en een inventaris van elke tooldefinitie met de versie en hash die we reviewden.

De opdracht, in het kort.

4 tot 10 testdagen op staging waar het kan, binnen de spelregels die je vooraf tekent. Daarna het rapport en een verklaring van één pagina, en de hertest zodra je de bevindingen hebt opgelost. Elke stap, van het scopinggesprek tot het regressiepakket, staat in de werkwijze.

Vragen over het testen van AI-agents en MCP.

Welke agentframeworks testen jullie?

We testen de agent, waarmee hij ook gebouwd is. Agents op LangChain, LangGraph, LlamaIndex, Semantic Kernel, de agent-SDK van een modelleverancier of je eigen orkestratiecode komen neer op dezelfde vragen: wat hij leest, welke tools hij met welke credentials aanroept, wat hij onthoudt en wie zijn acties goedkeurt.

Hoe testen jullie misbruik van tools zonder productie te beschadigen?

Met testdata en afgesproken grenzen. Tool calls draaien tegen testaccounts en records uit de spelregels, destructieve acties testen we met dry runs of omkeerbare objecten, en voor alles wat onomkeerbaar is, vragen we eerst je schriftelijke akkoord. We testen het liefst op staging; op productie volgen we de vensters en rate limits die jij bepaalt.

Testen jullie het geheugen van agents en opstellingen met meerdere agents?

Ja. We kijken wie in het langetermijngeheugen en de gedeelde context kan schrijven, of een vergiftigde invoer doorwerkt in de sessies van andere gebruikers, en of agents de berichten die ze elkaar sturen authenticeren. Dat zijn ASI06 en ASI07 in de OWASP Top 10 for Agentic Applications, en bij elke bevinding staat het pad dat ze aflegde.

Kunnen jullie een MCP-server reviewen die we niet zelf bouwden?

Ja, vanaf jouw kant van de verbinding. We reviewen de tooldefinities, de rechten die je de server geeft en hoe je agents met zijn output omgaan, en we testen je integratie ermee. Voor de infrastructuur van de server zelf is schriftelijke toestemming van de beheerder nodig; die kunnen we samen met je aanvragen als het ertoe doet.

Wat is te veel handelingsruimte (excessive agency)?

Excessive agency is het risico dat een AI-systeem schade aanricht, omdat het meer tools, rechten of autonomie heeft dan zijn taak vraagt. Het is LLM03 in de OWASP Top 10 for LLM Applications 2026, de tien grootste risico’s van toepassingen op een taalmodel. We testen het door te vergelijken wat de agent mag met wat zijn taak vraagt.

Wat kost een securitytest van een AI-agent?

Ons pakket Agent en MCP kost EUR 6.000 tot 15.000, exclusief btw, en dat zijn doorgaans 4 tot 10 testdagen. Het aantal tools dat schrijft of geld uitgeeft, de geheugens en overdrachten tussen agents in scope, en de betrokken MCP-servers bepalen het bedrag. Een assistent zonder tools past in het kleinere pakket Chatbot en RAG.