Accéder à l’objet de contexte
Accédez au contexte de la requête depuis un outil.
Accéder à l’objet de contexte est une leçon MCP Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage MCP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours MCP Academy comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Meet the Context Object
The Context object is your tool's gateway to the request: it carries shared state plus helpers for logging and progress.
Ask for It by Type
Add a parameter type-hinted as Context and FastMCP injects it automatically. Clients never see this argument.
from mcp.server.fastmcp import Context
@mcp.tool()
async def greet(name: str, ctx: Context) -> str:
return "hi " + nameReach Your Shared State
Drill into ctx.request_context.lifespan_context to get the exact object your lifespan yielded at startup.
app = ctx.request_context.lifespan_context
rows = await app.db.query("...")Use the Live Connection
Now your tool runs work against the shared pool instead of opening a brand new connection on every call.
Log Through the Context
Call ctx.info to send a log line to the client, which is far more useful than a hidden print on the server.
await ctx.info("loading user " + str(user_id))Report Progress Too
For slow work, ctx.report_progress streams percent-done updates so the host can show the user a moving bar.
await ctx.report_progress(progress=3, total=10)It's Injected, Not Passed
The model never fills in ctx. FastMCP recognizes the type hint and supplies it, so it stays out of your tool schema.
Async Tools Love Context
Most context helpers are awaitable, so define context-using tools as async functions to call them cleanly.
Name It Anything
The parameter name is up to you; the type hint is what matters. People often just call it ctx by convention.
One Context per Request
Each tool call gets its own request context, but they all point at the same long-lived lifespan state underneath.
Read Request Metadata
The context also exposes request metadata, so a tool can inspect details about the specific call it is handling.
Quick Check
How do you get the Context object inside a FastMCP tool?
Recap: The Context Object
You reach shared state via ctx.request_context.lifespan_context and use ctx for logging and progress. Next: shutting down cleanly. 🔌
Questions Fréquemment Posées
La leçon « Accéder à l’objet de contexte » est-elle gratuite ?
Oui — le texte complet de « Accéder à l’objet de contexte » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours MCP Academy, passe à CoddyKit PRO. Le cours MCP Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Accéder à l’objet de contexte » ?
Accédez au contexte de la requête depuis un outil. Tu pratiques MCP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer MCP Academy ?
Aucune expérience préalable n'est requise. MCP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Accéder à l’objet de contexte » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon MCP Academy ?
Oui. Chaque leçon MCP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Le crochet de démarrage du cycle de vie
- Partager l’état via le contexte de l’application
- Accéder à l’objet de contexte
- Arrêt propre et libération des ressources