MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / webHandlerFor

Function webHandlerFor

packages/plugins/mcp/src/api/handlers.test.ts:42–59  ·  view source on GitHub ↗
(extension: McpPluginExtension)

Source from the content-addressed store, hash-verified

40);
41
42const webHandlerFor = (extension: McpPluginExtension) =>
43 Effect.acquireRelease(
44 Effect.sync(() =>
45 HttpRouter.toWebHandler(
46 HttpApiBuilder.layer(Api).pipe(
47 Layer.provide(CoreHandlers),
48 Layer.provide(McpHandlers),
49 Layer.provide(observabilityMiddleware(Api)),
50 Layer.provide(UnusedExecutor),
51 Layer.provide(UnusedExecutionEngine),
52 Layer.provide(Layer.succeed(McpExtensionService, extension)),
53 Layer.provideMerge(HttpServer.layerServices),
54 Layer.provideMerge(Layer.succeed(HttpRouter.RouterConfig)({ maxParamLength: 1000 })),
55 ),
56 ),
57 ),
58 (web) => Effect.promise(() => web.dispose()),
59 );
60
61// `acquireRelease` keeps disposal inside the Effect scope — no
62// try/finally, no per-test cleanup plumbing. `it.scoped` closes the

Callers 1

handlers.test.tsFile · 0.70

Calls 3

observabilityMiddlewareFunction · 0.90
disposeMethod · 0.80
syncMethod · 0.65

Tested by

no test coverage detected