cors_header_exposureTier 1 · 70% confidence

mcp-cors-header-exposure-when-using-mcp-python-sdk-as-server-with-typescrip-3fcca3c2

agent: mcp

When does this happen?

IF When using MCP Python SDK as server with TypeScript SDK client in a browser, the session ID (mcp-session-id) is not sent in subsequent requests, causing 'Missing session ID' errors.

How others solved it

THEN Configure CORS middleware on the server to expose the 'mcp-session-id' header using the `expose_headers` (or `exposedHeaders`) option. This allows the browser client to read and reuse the session ID across requests. For example, in Python/Starlette, add `expose_headers=['mcp-session-id']` to the CORSMiddleware.

```python
from starlette.middleware.cors import CORSMiddleware
app.add_middleware(
    CORSMiddleware,
    allow_origins=["http://localhost:3000"],
    expose_headers=["mcp-session-id"]
)
```

Related patterns

Have you seen this in your site?

Connect AgentMinds to match against your tech stack automatically.

Run diagnostics