MCP Academy · Lezione

Versionare strumenti e schemi

Evolva il Suo server senza interrompere il funzionamento dei client.

Lezione 4 di 413 passaggi

Versionare strumenti e schemi è una lezione MCP Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento MCP Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso MCP Academy include 4 lezioni in totale.

I client dipendono dalle forme definite

Quando altri si connettono, fanno affidamento sui nomi degli strumenti e sulle forme degli argomenti. Modificarli senza cautela interrompe tutti i client contemporaneamente.

Le modifiche additive sono sicure

Aggiungere un parametro facoltativo con un valore predefinito mantiene operativi i vecchi chiamanti. Semplicemente ignorano il nuovo campo che non inviano.

def search(q: str, limit: int = 10) -> list:
    ...

Le modifiche incompatibili fanno male

Rinominare uno strumento, rimuovere un argomento o renderne uno obbligatorio è una modifica incompatibile. I client esistenti inviano improvvisamente chiamate che non sono più conformi.

Aggiungere, poi deprecare

Per far evolvere un campo, aggiunga quello nuovo e mantenga quello precedente. Indichi quello precedente come deprecato nella descrizione, così chi effettua le chiamate saprà che deve eseguire la migrazione.

Inserire la versione nel nome dello strumento

In caso di una vera modifica incompatibile, distribuisca uno strumento v2 accanto a v1. Entrambi funzioneranno per un certo periodo, consentendo ai client di migrare secondo i propri tempi.

@mcp.tool(name="search_v2")
def search_v2(query: str) -> list:
    ...

Il server comunica la propria versione

Durante l'handshake, il server comunica un nome e una versione. Incrementi la versione, così i client possono sapere a quale release si sono connessi.

mcp = FastMCP("my-server")
# version surfaces in server info

Seguire il versionamento semantico

Utilizzi semver: incrementi la patch per le correzioni, la minor per le funzionalità aggiuntive e la major quando apporta una modifica incompatibile. Il numero racconta una storia.

Ampliare, non restringere, gli output

Aggiungere un campo a un risultato è generalmente sicuro; rimuoverne uno è una modifica incompatibile. Consideri lo schema di output come una promessa che i client analizzano.

Mantenere un changelog

Registri ogni modifica agli strumenti e agli schemi in un changelog. Chi esegue l'aggiornamento deve poter vedere cosa è cambiato, cosa è nuovo e cosa è stato rimosso.

Stabilire una scadenza per le deprecazioni

Comunichi quando uno strumento precedente verrà rimosso. Una data di sunset chiara incentiva la migrazione senza cogliere nessuno alla sprovvista.

Testare con i client precedenti

Prima del rilascio, esegua i test simulando le chiamate di un client precedente. In questo modo individuerà le modifiche incompatibili accidentali che il type checker non può rilevare.

Verifica rapida

Quale modifica a uno strumento esistente è sicura per i client attuali?

Riepilogo: evolvere in sicurezza

Preferisca modifiche additive, deprechi prima di rimuovere, distribuisca v2 per le vere modifiche incompatibili, segua semver e mantenga un changelog. Potrà distribuire con fiducia! 🚀

Gratis per iniziare

Impara Python con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Versionare strumenti e schemi» è gratuita?

Sì — il testo completo di «Versionare strumenti e schemi» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso MCP Academy, passa a CoddyKit PRO. Il corso MCP Academy include 4 lezioni in totale.

Cosa imparerò in «Versionare strumenti e schemi»?

Evolva il Suo server senza interrompere il funzionamento dei client. Eserciti MCP Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare MCP Academy?

Non è richiesta alcuna esperienza precedente. MCP Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Versionare strumenti e schemi»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione MCP Academy?

Sì. Ogni lezione MCP Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Architettura server a livelli
  2. Configurazione e segreti tramite l'ambiente
  3. Strumenti idempotenti e consapevoli degli effetti collaterali
  4. Versionare strumenti e schemi
← Torna a MCP Academy