(request: Request)
| 117 | * worker so both classify + rewrite identically; a no-op for non-MCP paths. |
| 118 | */ |
| 119 | export const prepareMcpOrgScope = (request: Request): Request => { |
| 120 | const url = new URL(request.url); |
| 121 | const route = classifyMcpPath(url.pathname); |
| 122 | if (route === null) return request; |
| 123 | const bare = bareMcpPath(route); |
| 124 | if (url.pathname === bare && !request.headers.has(MCP_ORGANIZATION_HEADER)) return request; |
| 125 | url.pathname = bare; |
| 126 | const rewritten = new Request(url, request); |
| 127 | if (route.organizationId) rewritten.headers.set(MCP_ORGANIZATION_HEADER, route.organizationId); |
| 128 | else rewritten.headers.delete(MCP_ORGANIZATION_HEADER); |
| 129 | return rewritten; |
| 130 | }; |
| 131 | |
| 132 | // Production no longer mounts the /mcp transport here. `server.ts` intercepts MCP |
| 133 | // transport requests for the hibernatable Agent bridge, while `ExecutorApp.make` |
no test coverage detected