From 28df6ef4e1ffde10a296d44240104706d8e60653 Mon Sep 17 00:00:00 2001 From: 4t145 Date: Thu, 29 May 2025 11:49:26 +0800 Subject: [PATCH] fix: error for status in post method of streamable http client --- .../rmcp/src/transport/common/reqwest/streamable_http_client.rs | 2 +- examples/clients/src/streamable_http.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/rmcp/src/transport/common/reqwest/streamable_http_client.rs b/crates/rmcp/src/transport/common/reqwest/streamable_http_client.rs index 1d72f3a17..fd3aa1d54 100644 --- a/crates/rmcp/src/transport/common/reqwest/streamable_http_client.rs +++ b/crates/rmcp/src/transport/common/reqwest/streamable_http_client.rs @@ -95,7 +95,7 @@ impl StreamableHttpClient for reqwest::Client { if let Some(session_id) = session_id { request = request.header(HEADER_SESSION_ID, session_id.as_ref()); } - let response = request.json(&message).send().await?; + let response = request.json(&message).send().await?.error_for_status()?; if response.status() == reqwest::StatusCode::ACCEPTED { return Ok(StreamableHttpPostResponse::Accepted); } diff --git a/examples/clients/src/streamable_http.rs b/examples/clients/src/streamable_http.rs index cf495f8fa..634ec61b8 100644 --- a/examples/clients/src/streamable_http.rs +++ b/examples/clients/src/streamable_http.rs @@ -16,7 +16,7 @@ async fn main() -> Result<()> { ) .with(tracing_subscriber::fmt::layer()) .init(); - let transport = StreamableHttpClientTransport::from_uri("http://localhost:8000"); + let transport = StreamableHttpClientTransport::from_uri("http://localhost:8000/mcp"); let client_info = ClientInfo { protocol_version: Default::default(), capabilities: ClientCapabilities::default(),