0Pricing
MCP Academy · Lezione

Leggere un file dal disco

Trasformi un file locale in una risorsa MCP dinamica.

Leggere un file dal disco è una lezione MCP Academy gratuita su CoddyKit. Questa è la lezione 3 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.

Dal fisso al dinamico

Restituire una stringa codificata direttamente va bene, ma i server reali espongono file effettivi. Può leggere un file dal disco e servirne i contenuti in tempo reale.

Leggere all'interno del gestore

La funzione della risorsa apre semplicemente il file e ne restituisce il testo. Poiché viene eseguita a ogni richiesta, il client riceve sempre il contenuto aggiornato. 📂

Una risorsa file di base

Apra il file, lo legga e restituisca la stringa. La risorsa riflette ora ciò che è salvato sul disco al momento della lettura.

@mcp.resource("file:///notes.txt")
def notes():
    with open("notes.txt") as f:
        return f.read()

Usare pathlib in modo pulito

La libreria pathlib legge i file piccoli in una sola riga e gestisce i percorsi in modo sicuro su sistemi diversi, mantenendo il gestore breve e chiaro.

from pathlib import Path

@mcp.resource("file:///notes.txt")
def notes():
    return Path("notes.txt").read_text()

Gestire i file mancanti

Un file può essere eliminato o rinominato. Racchiuda la lettura in una gestione degli errori, così un file mancante restituisce un messaggio di errore chiaro invece di arrestare il server.

try:
    return Path(p).read_text()
except FileNotFoundError:
    raise ValueError("File not found")

Fare attenzione alla codifica

I file di testo hanno una codifica. Legga specificando esplicitamente utf-8, così i caratteri accentati e quelli non inglesi arrivano correttamente al modello.

Path("notes.txt").read_text(encoding="utf-8")

Controllare le dimensioni del file

Restituire un file enorme sommerge il modello di token e può raggiungere i limiti previsti. Mantenga piccoli i file serviti oppure legga solo la parte di cui il modello ha davvero bisogno.

Non si fidi mai del percorso

Se un percorso proviene dall'input, un aggressore potrebbe richiedere file al di fuori della sua cartella. Limiti sempre le letture a una directory di base sicura sotto il suo controllo.

Risolvere all'interno di una base

Calcoli un percorso assoluto e verifichi che resti all'interno della radice consentita. Questo blocca i tentativi di path traversal, come quelli che risalgono usando due punti.

base = Path("data").resolve()
target = (base / name).resolve()
if base not in target.parents: raise ValueError("Denied")

Sola lettura per natura

Le risorse leggono soltanto e non scrivono mai. Servire un file come risorsa ne espone i contenuti senza permettere al modello di modificarlo.

Verificare la lettura in tempo reale

Modifichi il file sul disco, quindi legga nuovamente l'URI. Se compare il nuovo testo, il server legge in modo dinamico invece di utilizzare contenuti obsoleti nella cache.

Controllo rapido

Controllo di sicurezza sulla pubblicazione dei file.

Riepilogo

Legga il file all'interno del gestore, così il contenuto resta dinamico. Imposti utf-8, gestisca i file mancanti, controlli le dimensioni e limiti i percorsi a una radice sicura. ✅

Domande Frequenti

La lezione «Leggere un file dal disco» è gratuita?

Sì — il testo completo di «Leggere un file dal disco» è 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 «Leggere un file dal disco»?

Trasformi un file locale in una risorsa MCP dinamica. 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 3 di 4.

Quanto tempo richiede la lezione «Leggere un file dal disco»?

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. Spiegazione degli URI delle risorse
  2. Servire una risorsa di testo statica
  3. Leggere un file dal disco
  4. Impostare il tipo MIME corretto
← Torna a MCP Academy