From ba080bb88c6f953723887e958ffe596132358322 Mon Sep 17 00:00:00 2001 From: Harshit Jain <48647625+Harshit28j@users.noreply.github.com> Date: Sat, 21 Mar 2026 00:21:10 +0530 Subject: [PATCH] Update litellm/proxy/_experimental/mcp_server/server.py Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> --- .../proxy/_experimental/mcp_server/server.py | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/litellm/proxy/_experimental/mcp_server/server.py b/litellm/proxy/_experimental/mcp_server/server.py index 85574bd506d..bcbf4f75ef9 100644 --- a/litellm/proxy/_experimental/mcp_server/server.py +++ b/litellm/proxy/_experimental/mcp_server/server.py @@ -378,25 +378,19 @@ if MCP_AVAILABLE: body_data["litellm_trace_id"] = chain_id body_data["litellm_session_id"] = chain_id + _scope_headers: list[tuple[bytes, bytes]] = [ + (b"content-type", b"application/json"), + ] _scope_headers: list[tuple[bytes, bytes]] = [ (b"content-type", b"application/json"), ] if raw_headers: - try: + for k, v in raw_headers.items(): + if k.lower() == "content-type": + continue # already added above _scope_headers.append( (k.lower().encode("latin-1"), v.encode("latin-1")) ) - except (UnicodeEncodeError, UnicodeDecodeError): - verbose_logger.debug( - f"Skipping header {k!r}: contains non-Latin-1 characters" - ) - request = Request( - scope={ - "type": "http", - "method": "POST", - "path": "/mcp/tools/call", - "headers": _scope_headers, - } ) if user_api_key_auth is not None: data = await add_litellm_data_to_request(