Validera indata före åtgärd
Avvisa felaktiga argument med tydliga meddelanden.
Validera indata före åtgärd är en gratis lektion i MCP Academy på CoddyKit. Detta är lektion 3 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för MCP Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i MCP Academy innehåller totalt 4 lektioner.
Lita inte på något som modellen skickar
Argumenten som verktyget tar emot kommer från en AI, som kan gissa. Validera all indata innan ni använder en fil, en databas eller ett API.
Kontrollera först, agera sedan
Kör era kontroller allra först i funktionen. Bekräfta att indata är rimlig innan ni utför verkligt eller oåterkalleligt arbete.
@mcp.tool()
def set_age(age: int) -> str:
if age < 0 or age > 130:
raise ValueError("age out of range")Avvisa med en tydlig anledning
När indata inte klarar en kontroll ska ni säga exakt varför. Ett precist meddelande låter modellen skicka ett rättat värde vid nästa försök.
Typanvisningar fångar mycket
Era parameteranvisningar blir verktygsschemat, så grundläggande typmismatchar upptäcks innan koden ens körs. Använd dem som första försvar.
@mcp.tool()
def repeat(text: str, times: int) -> str:
return text * timesAnvisningar räcker inte
Typer kan ensamma inte uttrycka intervall, format eller tillåtna värden. Ni måste fortfarande validera att ett antal är positivt eller att en status är en som ni accepterar.
Begränsa intervallen
Skydda numerisk indata mot extrema värden. En gräns för sidstorlek eller antal loopvarv hindrar modellen från att överbelasta servern av misstag.
if limit > 100:
raise ValueError("limit must be 100 or less")Tillåt bara godkända värden
För fasta alternativ bör ni kontrollera om värdet finns med i listan i stället för att lita på fri text. En vitlista avvisar allt utanför de alternativ ni faktiskt stöder.
if status not in {"open", "closed"}:
raise ValueError("status must be open or closed")Rensa sökvägar och frågor
Modellindata som blir en filsökväg eller SQL-fråga är farlig. Rensa den så att ett oväntat .. eller citattecken inte kan nå utanför det ni avsett.
Obligatoriska fält måste finnas
Bekräfta att allt obligatoriskt faktiskt finns och inte är tomt. En tidig skyddskontroll är bättre än ett förvirrande fel långt inne i logiken.
if not query.strip():
raise ValueError("query cannot be empty")Validering fungerar också som dokumentation
Tydliga kontroller lär modellen era regler. Efter en avvisning lär den sig formatet och skickar giltig indata under resten av sessionen.
Misslyckas innan sidoeffekter uppstår
Gyllene regeln: starta aldrig en oåterkallelig åtgärd innan all indata har godkänts. Validera i början så att halvfärdiga skrivningar aldrig sker.
Snabbkontroll
Varför ska ni validera indata innan verktyget utför sitt riktiga arbete?
Sammanfattning
Behandla modellens indata som opålitlig: validera typer, intervall och alternativ i början, avvisa med tydliga anledningar och agera aldrig innan kontrollerna har godkänts. ✅
Lär dig Python med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 30
- Lektioner
- 120
Vanliga frågor
Är lektionen ”Validera indata före åtgärd” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen MCP Academy, inklusive ”Validera indata före åtgärd”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i MCP Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”Validera indata före åtgärd”?
Avvisa felaktiga argument med tydliga meddelanden. Ni övar på MCP Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig MCP Academy?
Du behöver inga förkunskaper. Utbildningen i MCP Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”Validera indata före åtgärd”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här MCP Academy-lektionen?
Ja. Varje MCP Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Verktygsfel som modellen kan se
- Protokollfel kontra verktygsfel
- Validera indata före åtgärd
- Misslyckas säkert, häng aldrig