Agents, Skills en MCP Servers zijn een Software Supply Chain: Bouw een Admission-Control Pipeline

Gebouwd voor snelheid: ~10ms latentie, zelfs onder belasting
De razendsnelle manier om je modellen te bouwen, volgen en implementeren!
- Verwerkt 350+ RPS op slechts 1 vCPU — geen tuning nodig
- Productieklaar met volledige enterprise-ondersteuning
Herbruikbare agent-componenten versnellen de oplevering. Ze importeren ook instructies, code, afhankelijkheden, credentials, tool-bereik en egress in de runtime. Beveiliging vereist daarom een versiegebonden toelatingsbesluit—niet een vertrouwensbadge die aan een naam is gekoppeld.
s, container images en service-templates. Een skill kan een hoogwaardige operationele procedure coderen. Een MCP server kan een interne API omzetten in een ontdekbaar tool-oppervlak. Een voorgebouwde agent kan weken aan orchestratiewerk comprimeren tot een uitrolbaar startpunt. Dit is nuttig precies omdat de component gedrag met zich meebrengt.
Diezelfde eigenschap veroorzaakt het beveiligingsprobleem. Een agent-component is niet alleen broncode. Het kan instructies in natuurlijke taal bevatten die het gedrag van het model veranderen, scripts met effecten tijdens de installatie, libraries van derden, credential-stromen, tool-schema's, toegestane bestemmingen en aannames over wie een actie mag autoriseren. Een conventionele malware-scan is nog steeds noodzakelijk, maar geeft geen antwoord op de vraag of een ogenschijnlijk onschadelijke instructie leidt tot het lekken van geheimen, of een read-only tool kan worden geschakeld in een schrijfpad, of dat de installatie een niet-gedeclareerd eindpunt bereikt.
De juiste abstractie is een admission-control pipeline voor releases die gedrag dragen. Het besluit moet zich binden aan een onveranderlijke staat, de reviewdiepte schalen met de capaciteit, onzeker gedrag testen onder inperking, meeschalen en verlopen wanneer materiele feiten veranderen.
Review een release, geen vermelding

Een praktische release-identiteit begint met een onveranderlijke bron-commit of content-digest. Het moet ook de repository en uitgever vastleggen, licentie, build-recept, staat van de afhankelijkheidsvergrendeling, inbegrepen instructiebestanden, blootgestelde tools, gevraagde geheimen, netwerkbestemmingen, dataklassen en installatiestappen. Het doel is niet om papierwerk om het papierwerk te maken. Het is om het besluit reproduceerbaar te maken: een beoordelaar moet precies kunnen aangeven welke bytes en mogelijkheden zijn beoordeeld.
Dit is waar agentic supply chains afwijken van gewone libraries. Twee releases met identieke uitvoerbare code kunnen zich anders gedragen als hun instructies verschillen. Twee agents met identieke prompts kunnen een verschillend risico met zich meedragen als de ene een financiële tool ontvangt en de andere een openbare zoektool. Het effectieve gedrag van de component komt voort uit het artifact, de model- en runtime-context, en de autoriteit die beschikbaar is bij uitvoering. Het manifest heeft daarom zowel artifact-feiten nodig als de capability-envelop waarin de component is getest; een digest alleen kan het resulterende gedrag niet beschrijven.
Classificeer mogelijkheden alvorens de reviewdiepte te selecteren
Niet elke component verdient hetzelfde reviewpad. Een skill die alleen uit tekst bestaat en een openbaar document samenvat, heeft een ander oppervlak dan een MCP server die productie-credentials kan roteren. Maar “geen uitvoerbare code” betekent niet “geen beveiligingsrisico.” Instructies kunnen verborgen Unicode bevatten, gecodeerde richtlijnen, misleidende activeringsregels, data-exfiltratiestappen of permissieverruimende aanwijzingen. Omgekeerd kan een kleine server met broncode een laag risico vormen als het een gedocumenteerd read-only eindpunt omvat, gepinde afhankelijkheden gebruikt, geen credentials beheert en geen willekeurige netwerken kan bereiken.
Een nuttige classifier overweegt minstens vijf dimensies: uitvoering, datagevoeligheid, autoriteit, egress en dual-use mogelijkheden. Uitvoering vraagt of de component scripts, install-hooks, shell-toegang of dynamisch laden bevat. Data vraagt welke classificaties het kan lezen of verzenden. Autoriteit vraagt of blootgestelde tools read-only, omkeerbaar, muterend of destructief zijn. Egress vraagt of bestemmingen vaststaan, door beleid worden beheerd of willekeurig zijn. Dual-use mogelijkheden vragen of de component kan scannen, misbruiken, credentials kan manipuleren of beveiligingsinstellingen kan wijzigen, zelfs wanneer het opgegeven doel defensief is.
De classificatie moet de controles bepalen, niet enkel de prioriteit in de wachtrij. Een laag-risico tekstskill kan structurele controles ontvangen, detectie van verborgen inhoud, instructieanalyse en een beperkte gedragstest. Een muterende MCP server moet afhankelijkheids- en secret-stroomanalyse toevoegen, schema-inspectie, authenticatie-review, beperkte dynamische uitvoering en negatieve testen voor onbevoegde acties. Een component die in staat is tot offensieve beveiligingsacties kan een afzonderlijk beleidsbesluit vereisen voordat de technische review überhaupt begint.
Bouw een admission pipeline die bewijstypen combineert

Statische review is het sterkst wanneer feiten zichtbaar zijn in artifacten: kwetsbare afhankelijkheden, niet-gepinde Git-referenties, verdachte install-hooks, hardcoded geheimen, geobfuscateerde tekst, overmatige tool-declaraties of een licentiediscrepantie. Semantische review onderzoekt wat instructies het model vragen te doen, welke omstandigheden ze activeren, en of de component probeert beleid met een hogere prioriteit te omzeilen. Geen van beide modi bewijst op betrouwbare wijze het gedrag in de runtime.
Dynamische review moet de component installeren en uitvoeren in een schone, geïnstrumenteerde omgeving. Begin met gedocumenteerde stappen; afwijkingen zijn op zichzelf al bevindingen. Geef de omgeving synthetische credentials en canary-data, beperk netwerkbestemmingen, leg bestand- en procesactiviteit vast en stel alleen testbronnen bloot. De review-omgeving mag nooit live productie-credentials vereisen; als een test daarvan afhankelijk is, heeft het testontwerp de vertrouwensgrens die het moet evalueren al overschreden. Voer normale taken uit, verkeerd gevormde invoer, ingevoegde inhoud, geweigerde machtigingen, verlopen tokens, tool-storingen en annuleringen. Vergelijk geobserveerde acties met het manifest. Een niet-gedeclareerde bestemming of een poging tot het lezen van bestanden kan van belang zijn, zelfs als er geen gegevens uit de sandbox zijn gegaan.
Menselijke review blijft noodzakelijk voor ambiguïteit en risicoacceptatie. Geautomatiseerde systemen kunnen bevindingen rangschikken en brede oppervlakken testen, maar iemand die verantwoordelijk is moet beslissen of een discrepantie een harde fout is, een voorwaarde voor beperkt gebruik of een geaccepteerd risico. Geaccepteerd risico heeft een eigenaar, onderbouwing, scope en vervaldatum nodig. “Het model heeft het niet geflagged” is geen goedkeuringsrecord.
Promoveer met een capability-envelop
Promotie moet meer publiceren dan alleen een groen vinkje. Het besluitrecord moet de release-digest binden, build-invoer, capability-envelop, test-suiteversie, beoordelaar, bekende bevindingen en vervaldatum. Consumenten hebben een capability-envelop nodig: goedgekeurde versie, toegestane omgevingen, toegestane identiteiten, tool-set, dataklassen, egress-beleid, vereiste goedkeuringen, sandbox-vereisten, evaluatie-suite, bekende beperkingen en triggers voor her-review of verval. Een component die is beoordeeld voor synthetische data en read-only tools mag niet stilzwijgend worden goedgekeurd voor productie-credentials en mutaties.
De envelop scheidt ook de kwaliteit van de component van de lokale verantwoordelijkheid voor uitrol. Een centraal beoordeelde MCP server kan lokaal nog steeds slecht worden uitgerold—met een te krachtige service-credential, te brede medewerkers of onbeperkte uitgaande toegang. Omgekeerd kan een component met een beperkte bevinding bruikbaar zijn binnen een striktere lokale envelop. Toelating stelt de maximale beoordeelde staat vast; de uitrol kan deze vernauwen, maar mag deze niet uitbreiden zonder een nieuw besluit.
Maak vertrouwen gevoelig voor veranderingen

Materialiteitsregels voorkomen beide extremen: blindelings vertrouwen meenemen en elke test opnieuw uitvoeren voor elke typefout. Bewerkingen die alleen de documentatie betreffen, vereisen mogelijk enkel integriteitscontroles. Een patch van een afhankelijkheid kan software composition analysis en regressietesten vereisen. Een nieuwe muterende tool moet threat modeling, autorisatietesten en dynamische review heropenen. Een gewijzigde skill-instructie moet semantische en traject-evaluaties opnieuw uitvoeren. Een overdracht van uitgever of repository moet de herkomst-review heropenen, zelfs als de digest ongewijzigd is.
Bewijs uit de runtime kan ook aanleiding zijn voor her-review. Onverwachte egress, activering buiten de gedeclareerde taak, herhaalde geweigerde tool-calls, gedrag dat zoekt naar privileges, afwijkende datatoegang of afwijkingen in het resultaat kunnen het beperken of opschorten van de component rechtvaardigen. Promotie is daarom een status in de levenscyclus, geen permanente reputatiescore.
Hoe TrueFoundry en TrueForge passen
De TrueFoundry- en TrueForge-stack biedt nuttige handhavings- en bewijsoppervlakken rond deze pipeline, maar het vervangt geen programma voor beveiligingsreview.
Een natuurlijk operationeel model is om kandidaten buiten productiegebruik te houden, ze te beoordelen bij een onveranderlijke revisie, geaccepteerde versies te publiceren met een capability-envelop, en het uitrolbeleid alleen gepromoveerde versies te laten toestaan. De registries van TrueFoundry maken assets identificeerbaar en beheersbaar; de toelatingsstatus en het beveiligingsbesluit blijven onderdeel van het releaseproces van de organisatie. MCP-toegang kan vervolgens worden beperkt op basis van agent- of gebruikersidentiteit, en gevoelige tools kunnen een goedkeuringsbeleid vereisen. De applicatie moet runtime-gebeurtenissen nog steeds correleren met het gezaghebbende systeem om daadwerkelijke resultaten te bevestigen.
Uitgewerkt voorbeeld: toelaten van een inkoop-skill
Stel dat een team een inkoop-skill wil publiceren die leveranciersaanvragen leest, beleid controleert, een leveranciersrisicodienst raadpleegt, een aanbeveling opstelt en een ERP-inkoopaanvraag kan aanmaken. De bron bevat een skill-bestand, een Python-helper en referenties naar twee MCP-tools.
Intake pint de repository-commit en hasht de volledige bundle. Classificatie markeert gevoelige commerciële data, één muterende tool, vaste egress naar de risicodienst en ERP, en geen noodzaak voor willekeurige shell-toegang. Statische controles inspecteren de helper en afhankelijkheden. Semantische review bevestigt dat de skill e-mail en documentinhoud behandelt als niet-vertrouwd bewijs in plaats van instructies, nooit om credentials vraagt en beleidsuitzonderingen naar een mens leidt.
Dynamische review draait met synthetische leveranciers en canary-data. Testen omvatten een kwaadaardige bijlage die de agent vraagt het inkoopbeleid te negeren, een ERP-timeout na een succesvolle aanvraag, een reactie inzake leveranciersrisico die verborgen instructies bevat, en een gebruiker die inkoopbevoegdheid mist. De component slaagt alleen als geïnjecteerde instructies worden genegeerd, de onbevoegde gebruiker geen aanvraag kan aanmaken, herpogingen de mutatie niet dupliceren en de identificatiecode van de operatie overeenkomt met het ERP-record.
Promotie staat de exacte skill-versie toe in productie, vereist de beoordeelde MCP servers, beperkt de ERP-tool tot het aanmaken van aanvragen in plaats van het goedkeuren van inkooporders, en vereist een eenmalige goedkeuring voor aanvragen boven de drempel van de organisatie. Het gepubliceerde besluit vermeldt dat de uiteindelijke geschiktheid van leveranciers en inkoopbevoegdheid in het beleid en de registratiesystemen van het bedrijf blijven. Een toekomstige wijziging die updates van bankgegevens van leveranciers toevoegt, heropent automatisch de review.
Fouttesten die het bewaren waard zijn in de release-suite
- Onzichtbare instructie: voeg tekst in met een breedte van nul of gecodeerde tekst en verifieer dat deze voor de model-review aan het oppervlak komt.
- Escalatie in de tool-chain: combineer afzonderlijk toegestane lees- en schrijfacties om te testen of de sequentie de goedgekeurde resultaatsgrens overschrijdt.
- Niet-gedeclareerde egress: los een afhankelijkheid of eindpunt buiten het manifest op en verifieer dat de omgeving dit blokkeert en vastlegt.
- Verwarring van credentials: test gedeelde, per-gebruiker, verlopen en verkeerde-doelgroep tokens; verifieer dat de component de ene modus niet door de andere kan vervangen.
- Neveneffect bij installatie: voer de gedocumenteerde installatie uit met een read-only bestandssysteem en synthetische geheimen om verborgen aannames te onthullen.
- Replay na gedeeltelijk succes: onderbreek een mutatie en verifieer dat idempotentie of reconciliatie een dubbel effect voorkomt.
- Materiële-veranderingspoort: wijzig een instructie, afhankelijkheid, tool of bestemming en verifieer dat de eerdere promotie niet langer van toepassing is.
De diepere verschuiving: van het vinden van componenten naar het toelaten van mogelijkheden
Registries maken agent-ecosystemen bruikbaar. Admission control maakt hergebruik bestuurbaar. Het verschil is belangrijk omdat reputatie, populariteit en een schone eerdere review zwakke vervangers zijn voor een versiespecifiek besluit over wat een component kan doen in een specifieke omgeving.
Het sterkste enterprise-patroon is daarom niet “één keer scannen, voor altijd vertrouwen.” Het is: identificeer een onveranderlijke release, classificeer de mogelijkheden, combineer artifact- en gedragsbewijs, promoveer deze met een begrensde envelop, observeer deze in gebruik en heropen het besluit wanneer relevante feiten veranderen. Dat is conventionele supply-chain discipline, uitgebreid naar die onderdelen van een agent-systeem waar gedrag wordt uitgedrukt in zowel code als taal.
Referenties
- Tenable — Introducing the CyberAgents Exchange AI Inspector.
- OWASP — Top 10 for Agentic Applications for 2026.
- OWASP — Agentic Skills Top 10.
- TrueFoundry — AI Gateway Skills Registry.
- TrueFoundry — Prompt Management.
- TrueFoundry — MCP Gateway.
- TrueFoundry — MCP Gateway Authentication and Security.
- TrueFoundry — MCP Tool Approvals.
- TrueForge — Setup Sandbox.
- TrueForge — SDK Concepts.
Redactionele verantwoording. Dit artikel weerspiegelt de engineering-interpretatie van TrueFoundry van de geciteerde openbare materialen per 13 september 2026. Productmogelijkheden zijn afgebakend tot de gekoppelde documentatie. Voorbeelden zijn ter illustratie, geen juridisch advies, audit-oordeel, onafhankelijke benchmark of garantie voor naleving of beveiliging.
TrueFoundry AI Gateway levert een latentie van ~3–4 ms, verwerkt 350+ RPS op 1 vCPU, schaalt moeiteloos horizontaal en is klaar voor productie, terwijl LiteLLM last heeft van hoge latentie, moeite heeft boven een gemiddeld aantal RPS, geen ingebouwde schaling heeft en het meest geschikt is voor lichte workloads of prototypes.















.png)

.webp)



.webp)








.webp)





