El hook de inicio del ciclo de vida
Abra las conexiones una sola vez cuando se inicie el servidor.
El hook de inicio del ciclo de vida es una lección gratuita de MCP Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de MCP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de MCP Academy incluye 4 lecciones en total.
Inicie una vez y úselo muchas veces
Algunas tareas de configuración deberían realizarse una vez cuando se inicia el servidor, como abrir una conexión a una base de datos, no en cada llamada a una herramienta. 🚀
Conozca el ciclo de vida
El ciclo de vida es un enlace que ejecuta el código de inicio antes de que lleguen las solicitudes y, después, el código de desmontaje cuando el servidor se detiene.
Un gestor de contexto asíncrono
Un lifespan es un async context manager: el código anterior a yield se ejecuta durante el inicio y el código posterior, durante el apagado.
from contextlib import asynccontextmanager
@asynccontextmanager
async def lifespan(server):
# startup
yield
# shutdownConéctelo a FastMCP
Entregue su lifespan al servidor mediante el argumento lifespan, para que FastMCP sepa ejecutarlo durante todo su ciclo de vida.
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("demo", lifespan=lifespan)Abra aquí los recursos costosos
El bloque de inicio es el lugar adecuado para la configuración costosa: pools de bases de datos, clientes HTTP o la carga de un modelo en memoria.
Ceda el estado compartido
Todo lo que haga yield se convierte en el contexto compartido de cada solicitud, así que créelo una vez y páselo.
async def lifespan(server):
db = await connect_db()
yield {"db": db}El inicio se ejecuta antes que cualquier herramienta
FastMCP garantiza que el inicio termine antes de aceptar la primera llamada a una herramienta, para que los recursos estén listos a tiempo.
Un contexto tipado, opcionalmente
Puede ceder un pequeño dataclass en lugar de un diccionario para obtener acceso tipado y con autocompletado a sus objetos compartidos.
from dataclasses import dataclass
@dataclass
class AppCtx:
db: objectMantenga rápido el inicio
Los clientes esperan al inicio, así que manténgalo ligero: conecte lo necesario y posponga el trabajo opcional lento hasta que se use por primera vez.
Un lifespan por servidor
Un servidor tiene exactamente un lifespan. Agrupe toda la lógica de inicio dentro de él en lugar de distribuir la configuración entre las herramientas.
Gestione los errores de inicio
Si el inicio genera un error, el servidor debe negarse a iniciar en lugar de ejecutarse con una configuración incompleta y fallar misteriosamente más adelante.
Comprobación rápida
¿En qué parte de un lifespan se coloca el código de inicio con respecto a yield?
Resumen: el hook de lifespan
Ha aprendido qué es lifespan: un administrador de contexto asíncrono que ejecuta la configuración antes de yield, cede el estado compartido y limpia los recursos después. A continuación, compártalo. 🎯
Preguntas frecuentes
¿La lección «El hook de inicio del ciclo de vida» es gratis?
Sí — el texto completo de «El hook de inicio del ciclo de vida» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de MCP Academy, actualiza a CoddyKit PRO. El curso de MCP Academy incluye 4 lecciones en total.
¿Qué aprenderé en «El hook de inicio del ciclo de vida»?
Abra las conexiones una sola vez cuando se inicie el servidor. Practicas MCP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar MCP Academy?
No se requiere experiencia previa. MCP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «El hook de inicio del ciclo de vida»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de MCP Academy?
Sí. Cada lección de MCP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- El hook de inicio del ciclo de vida
- Compartir estado mediante el contexto de la aplicación
- Acceder al objeto de contexto
- Cierre limpio y liberación de recursos