0Pricing
MCP Academy · Lezione

Aprire una sessione client

Si connetta a un server ed esegua l'handshake.

Aprire una sessione client è una lezione MCP Academy gratuita su CoddyKit. Questa è la lezione 1 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.

Diventare il chiamante

Finora il server pubblicava gli strumenti e aspettava. Ora inverte i ruoli e scrive il client che contatta, connette e controlla un server direttamente dal suo codice Python.

Lo stesso SDK, lato client

Il pacchetto ufficiale mcp che ha già installato include anche il client. Non è necessaria alcuna nuova dipendenza per iniziare a connettersi ai server.

from mcp import ClientSession, StdioServerParameters

Scegliere un trasporto

Un client sceglie innanzitutto come raggiungere il server. Per un processo locale si usa il trasporto stdio, comunicando tramite input e output standard.

from mcp.client.stdio import stdio_client

Descrivere come avviarlo

Si indica a stdio esattamente come avviare il server con StdioServerParameters: il comando da eseguire e gli eventuali argomenti necessari.

params = StdioServerParameters(
    command="python",
    args=["server.py"],
)

Aprire i flussi

stdio_client avvia il server e fornisce due flussi: uno da cui leggere le risposte e uno in cui scrivere le richieste. È un gestore di contesto asincrono.

async with stdio_client(params) as (read, write):
    ...

Racchiudere i flussi in una sessione

I flussi grezzi sono di basso livello, quindi li si racchiude in una ClientSession. La sessione gestisce JSON-RPC e tiene traccia degli ID delle richieste.

async with ClientSession(read, write) as session:
    ...

Eseguire l'handshake

Prima di fare qualsiasi altra cosa, si chiama session.initialize(). Questo esegue lo scambio di inizializzazione, così entrambi i lati concordano versione e funzionalità.

await session.initialize()

Tutto è asincrono

I client MCP si basano su asyncio, quindi il codice di connessione deve trovarsi all'interno di una funzione asincrona e ogni chiamata di rete deve essere attesa con await.

import asyncio

async def main():
    ...

asyncio.run(main())

Perché usare un oggetto sessione

La session è il riferimento per l'intera conversazione. Dopo l'inizializzazione, si chiamano i suoi metodi per elencare e usare ciò che il server offre.

Una sessione per server

Ogni server a cui ci si connette ha la propria sessione client. Per comunicare con più server, si aprono più sessioni, ciascuna sul proprio trasporto.

Pulire automaticamente

Poiché sessione e trasporto sono gestori di contesto, uscendo dal blocco async with il server viene arrestato e i flussi vengono chiusi automaticamente.

Controllo rapido

Quale chiamata deve essere eseguita prima di elencare o invocare qualsiasi elemento?

Riepilogo: connessione

Ha creato un client: scelga un trasporto, avvii il server con i parametri, racchiuda i flussi in una sessione e chiami initialize prima di svolgere il lavoro vero e proprio.

Domande Frequenti

La lezione «Aprire una sessione client» è gratuita?

Sì — il testo completo di «Aprire una sessione client» è 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 «Aprire una sessione client»?

Si connetta a un server ed esegua l'handshake. 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 1 di 4.

Quanto tempo richiede la lezione «Aprire una sessione client»?

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. Aprire una sessione client
  2. Individuare strumenti e risorse
  3. Invocare strumenti dal codice
  4. Instradare le chiamate agli strumenti tramite un LLM
← Torna a MCP Academy