Der Startup-Hook für die Lebensdauer
Öffnen Sie Verbindungen einmalig beim Start des Servers.
Der Startup-Hook für die Lebensdauer ist eine kostenlose MCP Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des MCP Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der MCP Academy-Kurs umfasst insgesamt 4 Lektionen.
Einmal starten, oft verwenden
Manche Vorbereitungen sollten beim Start Ihres Servers einmal ausgeführt werden, etwa das Öffnen einer Datenbankverbindung, statt bei jedem einzelnen Tool-Aufruf. 🚀
Das Lifespan kennenlernen
Der lifespan ist ein Hook, der Startcode ausführt, bevor Anfragen eintreffen, und anschließend Bereinigungscode, nachdem der Server beendet wurde.
Ein asynchroner Context Manager
Ein Lifespan ist ein async context manager: Der Code vor yield wird beim Start ausgeführt, der Code nach yield beim Herunterfahren.
from contextlib import asynccontextmanager
@asynccontextmanager
async def lifespan(server):
# startup
yield
# shutdownIn FastMCP einbinden
Sie übergeben Ihren Lifespan mit dem Argument lifespan an den Server, damit FastMCP ihn während seiner gesamten Laufzeit ausführt.
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("demo", lifespan=lifespan)Aufwendige Dinge hier öffnen
Der Startblock ist der richtige Ort für aufwendige Vorbereitungen: Datenbank-Pools, HTTP-Clients oder das Laden eines Modells in den Speicher.
Den gemeinsamen Zustand bereitstellen
Alles, was Sie mit yield bereitstellen, wird zum gemeinsamen Kontext für jede Anfrage. Erstellen Sie ihn daher einmal und reichen Sie ihn weiter.
async def lifespan(server):
db = await connect_db()
yield {"db": db}Der Start erfolgt vor jedem Tool
FastMCP garantiert, dass der Start abgeschlossen ist, bevor der erste Tool-Aufruf angenommen wird. So sind die Ressourcen rechtzeitig verfügbar.
Optional ein typisierter Kontext
Sie können statt eines Dicts eine kleine dataclass bereitstellen und erhalten dadurch typisierten Zugriff mit Autovervollständigung auf Ihre gemeinsamen Objekte.
from dataclasses import dataclass
@dataclass
class AppCtx:
db: objectDen Start schnell halten
Clients warten auf den Start, halten Sie ihn daher schlank: Verbinden Sie nur, was Sie benötigen, und verschieben Sie langsame optionale Arbeiten, bis sie erstmals gebraucht werden.
Ein Lifespan pro Server
Ein Server hat genau einen Lifespan. Bündeln Sie Ihre gesamte Startlogik darin, statt die Vorbereitung über mehrere Tools zu verteilen.
Fehler beim Start behandeln
Wenn der Start einen Fehler verursacht, sollte der Server den Start verweigern, statt halb konfiguriert zu laufen und später auf rätselhafte Weise auszufallen.
Kurzer Check
Wo kommt der Startcode in einer Lifespan-Funktion im Verhältnis zu yield hin?
Zusammenfassung: Der Lifespan-Hook
Sie haben den Lifespan kennengelernt: einen asynchronen Context Manager, der vor yield die Einrichtung ausführt, gemeinsamen Zustand bereitstellt und danach aufräumt. Als Nächstes teilen Sie diesen Zustand. 🎯
Lerne Python mit einem KI-Tutor — kostenlos
Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.
- Kurse
- 30
- Lektionen
- 120
Häufig gestellte Fragen
Ist die Lektion „Der Startup-Hook für die Lebensdauer“ kostenlos?
Ja — der vollständige Text von „Der Startup-Hook für die Lebensdauer“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des MCP Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der MCP Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Der Startup-Hook für die Lebensdauer“?
Öffnen Sie Verbindungen einmalig beim Start des Servers. Du übst MCP Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um MCP Academy zu starten?
Keine Vorkenntnisse erforderlich. MCP Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „Der Startup-Hook für die Lebensdauer“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser MCP Academy-Lektion Code schreiben und ausführen?
Ja. Jede MCP Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Der Startup-Hook für die Lebensdauer
- Zustand über den App-Kontext teilen
- Auf das Kontextobjekt zugreifen
- Sauberes Herunterfahren und Freigeben von Ressourcen