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

Function webHandlerFor

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

Source from the content-addressed store, hash-verified

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