Skip to content

Commit 878c1c5

Browse files
refactor: rename _update_headers_for_request to _prepare_request_headers
This better reflects that the method prepares headers for outgoing HTTP requests, not just updating them with context. The method adds both session ID and protocol version headers as needed.
1 parent 3c90735 commit 878c1c5

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

src/mcp/client/streamable_http.py

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,7 @@ def __init__(
108108
**self.headers,
109109
}
110110

111-
def _update_headers_with_session(
112-
self, base_headers: dict[str, str]
113-
) -> dict[str, str]:
111+
def _prepare_request_headers(self, base_headers: dict[str, str]) -> dict[str, str]:
114112
"""Update headers with session ID and protocol version if available."""
115113
headers = base_headers.copy()
116114
if self.session_id:
@@ -200,7 +198,7 @@ async def handle_get_stream(
200198
if not self.session_id:
201199
return
202200

203-
headers = self._update_headers_with_session(self.request_headers)
201+
headers = self._prepare_request_headers(self.request_headers)
204202

205203
async with aconnect_sse(
206204
client,
@@ -223,7 +221,7 @@ async def handle_get_stream(
223221

224222
async def _handle_resumption_request(self, ctx: RequestContext) -> None:
225223
"""Handle a resumption request using GET with SSE."""
226-
headers = self._update_headers_with_session(ctx.headers)
224+
headers = self._prepare_request_headers(ctx.headers)
227225
if ctx.metadata and ctx.metadata.resumption_token:
228226
headers[LAST_EVENT_ID] = ctx.metadata.resumption_token
229227
else:
@@ -259,7 +257,7 @@ async def _handle_resumption_request(self, ctx: RequestContext) -> None:
259257

260258
async def _handle_post_request(self, ctx: RequestContext) -> None:
261259
"""Handle a POST request with response processing."""
262-
headers = self._update_headers_with_session(ctx.headers)
260+
headers = self._prepare_request_headers(ctx.headers)
263261
message = ctx.session_message.message
264262
is_initialization = self._is_initialization_request(message)
265263

@@ -435,7 +433,7 @@ async def terminate_session(self, client: httpx.AsyncClient) -> None:
435433
return
436434

437435
try:
438-
headers = self._update_headers_with_session(self.request_headers)
436+
headers = self._prepare_request_headers(self.request_headers)
439437
response = await client.delete(self.url, headers=headers)
440438

441439
if response.status_code == 405:

0 commit comments

Comments
 (0)