[v0.9 → v1.0 Migration] streamable_http transport returns 405 on /mcp endpoint #3434
Replies: 6 comments 1 reply
-
|
Hi @ahujayogesh2003-maker, thanks for the detailed report. 1. Yes, The 405 you're seeing is most likely caused by
If a request arrives without a proper I verified this against a running v1.0 instance: Recommended fix: client = MultiServerMCPClient(
{
"gateway": {
"transport": "streamable_http",
"url": f"{mcpgw_url}/servers/{mcp_virtual_server}/mcp",
"headers": {
"Authorization": f"Bearer {mcpgw_token}",
"Accept": "application/json, text/event-stream",
},
}
}
)Also ensure your 2. The If issues persist after these changes, please share the exact versions of |
Beta Was this translation helpful? Give feedback.
-
|
for the 405 error, make sure your server endpoint supports the method you're trying to use with |
Beta Was this translation helpful? Give feedback.
-
|
Hi @ahujayogesh2003-maker, thanks for confirming the fix didn't work. After investigating both the code and the running instance, I have a strong hypothesis. Root cause: The response header In v1.0, the Docker Compose default changed to Fix: Set your environment variable: TRANSPORT_TYPE=streamablehttp # For streamable HTTP only
# or
TRANSPORT_TYPE=all # For both SSE and streamable HTTPI verified against the current codebase that with For the Pydantic validation warnings with SSE transport: The This issue is tracked as #3559. Could you confirm your |
Beta Was this translation helpful? Give feedback.
-
|
Hi @crivetimihai |
Beta Was this translation helpful? Give feedback.
-
|
Since the 405 persists with
Could you share the full response headers from the 405? That will help narrow it down. |
Beta Was this translation helpful? Give feedback.
-
|
The 405 issue is almost certainly a routing problem, not a config problem. Here's what I'd check: Your client uses |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
After migrating from v0.9 to v1.0 (RC1), our MCP tool calls are failing when using
streamable_httpas the transport. We are getting:ExceptionGroup('unhandled errors in a TaskGroup', [HTTPStatusError("Client error '405 Method Not Allowed' for url '.../servers/{id}/mcp'")])
Here's the code that worked fine on v0.9 but fails on v1.0:
We believe the issue is that
langchain_mcp_adapterssends aGETrequest to/mcpfirst when usingstreamable_http, and the v1.0 gateway now rejects it with 405.When we switch to sse transport, it does work, but we are getting a flood of Pydantic validation warnings:
Two questions:
streamable_httptransport still supported in v1.0? If so, what is the correct configuration?notifications/initializedPydantic validation warnings expected withssetransport, or is there a version oflangchain-mcp-adapters/mcpSDK that handles them cleanly?Beta Was this translation helpful? Give feedback.
All reactions