(
request: Request,
principal: Extract<AuthOutcome, { readonly _tag: "Authenticated" }>["principal"],
resource: McpResource,
)
| 93 | }; |
| 94 | |
| 95 | const propsForPrincipal = ( |
| 96 | request: Request, |
| 97 | principal: Extract<AuthOutcome, { readonly _tag: "Authenticated" }>["principal"], |
| 98 | resource: McpResource, |
| 99 | ): Effect.Effect<McpSessionProps> => |
| 100 | Effect.gen(function* () { |
| 101 | const propagation = yield* currentPropagationHeaders(request); |
| 102 | return { |
| 103 | session: { |
| 104 | organizationId: principal.organizationId, |
| 105 | userId: principal.accountId, |
| 106 | elicitationMode: readElicitationMode(request), |
| 107 | resource, |
| 108 | webOrigin: new URL(request.url).origin, |
| 109 | }, |
| 110 | propagation, |
| 111 | }; |
| 112 | }); |
| 113 | |
| 114 | export const makeCloudMcpAgentHandler = () => { |
| 115 | const serveOptions = { binding: "MCP_SESSION", transport: "streamable-http" } as const; |
no test coverage detected