modelcontextprotocol / modelcontextprotocol/python-sdk
MCP client doesn't not initialize new session when getting 404 session not found
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 24.3k
- Forks
- 4k
- Ø Merge
- 1 T. 1 Std.
- Gemergte PRs (30 T.)
- 31
Beschreibung
Initial Checks
- I confirm that I'm using the latest version of MCP Python SDK
- I confirm that I searched for my issue in https://github.com/modelcontextprotocol/python-sdk/issues before opening this issue
Description
Per https://modelcontextprotocol.io/specification/2025-11-25/basic/transports#session-management
When a client receives HTTP 404 in response to a request containing an MCP-Session-Id, it MUST start a new session by sending a new InitializeRequest without a session ID attached.
This is not the case with the python client. It just sends a session terminated error in streamable_http.py
Example Code
Python & MCP Python SDK
mcp: 1.22.0
python: 3.14.0
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit src/mcp/client/streamable_http.py um Zeile 277, wo eine 404-Antwort mit einer MCP-Session-Id behandelt wird, und vergleiche dieses Verhalten mit der im Issue verlinkten Anforderung an die Sitzungsverwaltung. Verfolge den Einstiegspunkt der Initialisierung des Clients und überprüfe das abgeschlossene Verhalten, indem du eine 404-Antwort ausführst: Der Client sollte eine neue InitializeRequest ohne eine Session-ID senden, anstatt einen session-terminated-Fehler zurückzugeben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- api
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 70/100