diff --git a/crates/rmcp/src/transport/auth.rs b/crates/rmcp/src/transport/auth.rs index 34674df7..3aa3e913 100644 --- a/crates/rmcp/src/transport/auth.rs +++ b/crates/rmcp/src/transport/auth.rs @@ -1609,12 +1609,13 @@ impl AuthorizationManager { return Ok(None); } - let metadata = response - .json::() - .await - .map_err(|e| { - AuthError::MetadataError(format!("Failed to parse resource metadata: {}", e)) - })?; + let metadata = match response.json::().await { + Ok(metadata) => metadata, + Err(e) => { + debug!("failed to parse resource metadata as JSON: {}", e); + return Ok(None); + } + }; Ok(Some(metadata)) }