Het ontwerp van toolschema's beperkt een AI-agent voor thuis door te bepalen welke parameters en actievormen vóór uitvoering geldige toolaanroepen kunnen worden.
Een model kan nog steeds verkeerd redeneren, maar getypeerde velden, verplichte doelen, enumeraties en validatie beperken wat die fout kan uitdrukken voordat toestemmings- en goedkeuringslagen bepalen of de actie mag worden uitgevoerd.
Een toolschema definieert de vorm van een toegestane aanvraag
Een agenttool is niet alleen een naam en beschrijving. Het schema bepaalt welke velden kunnen worden aangeleverd, welke typen ze gebruiken en welke combinaties structureel acceptabel zijn.
De huidige MCP-specificatie vereist een inputSchema dat met JSON Schema is gedefinieerd. Dit geeft de runtime een machineleesbaar contract in plaats van alleen te vertrouwen op natuurlijke taal. Het Model Context Protocol definieert tools met een invoerschema, waardoor de geaccepteerde argumentstructuur expliciet is voordat een toolaanroep wordt uitgevoerd; zie MCP-invoerschema's voor tools.
Op een homeserver kan dit het verschil maken tussen een beperkte herstarttool en een vage administratieve shell.
Een aanroep die geen willekeurige opdrachten kan uitdrukken, heeft al een kleiner actieoppervlak.
Verplichte velden voorkomen onvolledige acties
Verplichte eigenschappen dwingen het model om de informatie aan te leveren die een bewerking nodig heeft. Een tool voor het verplaatsen van bestanden kan zowel een bron als een bestemming verplicht stellen; een container-tool kan een doel en actie vereisen.
MCP volgt de validatiesemantiek van JSON Schema, die verplichte eigenschappen en typebeperkingen ondersteunt. JSON Schema-validatie definieert verplichte eigenschappen en andere structurele beweringen waarmee onvolledige aanvragen kunnen worden afgewezen, ter ondersteuning van de beperkingslaag in het JSON Schema-validatiewoordenboek.
Zo hoeft toepassingscode niet te raden naar ontbrekende doelen of gevaarlijke standaardwaarden over te nemen. Ontbrekende informatie leidt tot een validatiefout in plaats van een impliciete actie.
Enumeraties en bereiken verwijderen acties die het model niet kan uitdrukken
Een schema kan een veld beperken tot een opgesomde reeks of een begrensd bereik. Als een actie alleen herstarten, stoppen en starten toestaat, kan verwijderen niet via dat veld worden doorgegeven.
MCP vereist dat toolargumenten aan het invoerschema van de tool voldoen. Structurele beperkingen zijn sterker dan een beschrijving die alleen zegt wat er doorgaans zou moeten gebeuren. OpenAPI-schema's kunnen opgesomde waarden, numerieke limieten en getypeerde eigenschappen uitdrukken. Dit illustreert hoe een tool ongeldige acties onuitdrukbaar kan maken via OpenAPI-schemadefinities.
Thuis kan hetzelfde mechanisme thermostaatwaarden, bewaartermijnen in dagen, servicenamen of back-updoelen begrenzen, zodat het actiewoordenboek expliciet blijft.
Beschrijvingen sturen de selectie, maar validatie handhaaft de structuur
Beschrijvingen in natuurlijke taal helpen het model een tool te kiezen en velden te interpreteren, maar ze leggen niet dezelfde grens op als een validator die aanroepen buiten het contract afwijst.
MCP beschrijft toolbeschrijvingen als een leesbare aanwijzing voor het begrip van het model, terwijl inputSchema het formele parametercontract levert. Het gebruik van tools in Anthropic steunt op gedeclareerde toolparameters om door het model gegenereerde aanroepen te sturen, maar begeleiding door het model verschilt nog steeds van runtimevalidatie, zoals wordt uitgelegd in Anthropic-schema's voor toolgebruik.
Dit onderscheidt het onderwerp van het artikel van ZimaSpace over toolselectie die onbetrouwbaar wordt wanneer er te veel tools beschikbaar zijn. Selectieambiguïteit ontstaat voordat een tool wordt gekozen; schemabeperkingen gelden voor de voorgestelde aanroep zelf.
Schemavalidatie verleent geen toestemming
Een structureel geldige aanvraag kan nog steeds onbevoegd zijn. Het schema kan restart(container=postgres) toestaan, terwijl de aanroeper alleen toestemming heeft om een mediacontainer te herstarten.
MCP beschouwt het gebruik van tools als interactie met externe systemen en beveelt beveiligings- en menselijke goedkeuringscontroles rond aanroepen aan. Correctheid van het schema is één laag, geen compleet machtigingssysteem. Google Gemini gebruikt voor het aanroepen van functies eveneens gestructureerde functiedeclaraties, terwijl autorisatie buiten het schema zelf valt; die scheiding ondersteunt Gemini-schema's voor het aanroepen van functies.
Deze grens sluit aan bij ZimaSpace's artikel over beperkingen van de toolreikwijdte van AI-agents voor thuis: een schema beperkt de parameters die kunnen worden uitgedrukt, terwijl reikwijdte en mogelijkheden bepalen welke geldige bewerkingen daadwerkelijk zijn toegestaan.
Kleinere schema's zijn eenvoudiger te testen en te controleren
Een brede tool met veel optionele velden creëert veel geldige combinaties.
Door tools te beperken, neemt het aantal gedragingen af dat tijdens evaluaties moet worden getest.
JSON Schema ondersteunt objecteigenschappen, verplichte leden en het beheren van extra eigenschappen, waardoor onverwachte velden kunnen worden afgewezen in plaats van stilzwijgend geaccepteerd. Pydantic kan machineleesbare schema's genereren vanuit getypeerde modellen. Dit illustreert waarom kleinere, expliciete schema's eenvoudiger te valideren en testen zijn in Pydantic JSON Schema-generatie.
Tests kunnen vervolgens toegestane acties, ongeldige combinaties, grenswaarden en afwijzingsgedrag opsommen voordat het model wordt verbonden met bestanden, containers, apparaten of back-upsystemen.
Tech & AI HUB
Meer om te lezen

Kunnen thuiscamera's gebeurtenissen synchroniseren zonder cloudtijdservices?
Een mechanismegerichte uitleg van cameratiijd zonder cloud, de afwegingen bij gedeelde bronnen, drie veelgestelde vragen over query-fan-out en een praktisch verificatieprotocol.

Kan een lokale AI-service beschadigde modellagen detecteren vóór de inferentie?
Een mechanismegerichte uitleg van detectie van beschadigingen in modellagen, de afwegingen rond gedeelde bronnen, drie veelgestelde vragen over query-fan-out en een praktisch verificatieprotocol.

Kan een RAG-systeem worden hersteld zonder elke embedding opnieuw te genereren?
Een mechanismegerichte uitleg van RAG-herstel zonder opnieuw te embedden, de afwegingen rond gedeelde bronnen, drie veelgestelde vragen over query-fan-out en een praktisch verificatieprotocol.

