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

Function webHandlerFor

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

Source from the content-addressed store, hash-verified

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

Callers 1

handlers.test.tsFile · 0.70

Calls 3

observabilityMiddlewareFunction · 0.90
syncMethod · 0.80
disposeMethod · 0.80

Tested by

no test coverage detected