@adcp/sdk API Reference - v7.9.0
    Preparing search index...

    Variable TOOL_INPUT_SHAPEConst

    TOOL_INPUT_SHAPE: {
        scenario: ZodString;
        params: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
        context: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
        ext: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
    } = ...

    Canonical Zod input schema for the comply_test_controller tool. Pass as the inputSchema argument to server.registerTool(...) in custom wrappers so the request shape stays in sync with registerTestController.

    Matches ComplyTestControllerRequest from the generated schema: scenario (required), params (scenario-specific), and the universal context / ext envelope fields. No top-level account or brand — AdCP routes account and brand context through context on this tool.

    Extending for vendor fields. Custom wrappers that route sandbox gating or tenant scoping on top-level fields can extend the shape locally. Both account and brand are commonly added — storyboard fixtures and v5-shaped wrappers often send them alongside params:

    const MY_SHAPE = {
    ...TOOL_INPUT_SHAPE,
    account: z.object({ sandbox: z.boolean() }).passthrough().optional(),
    brand: z.object({ domain: z.string() }).passthrough().optional(),
    };
    server.registerTool(
    'comply_test_controller',
    { description: 'Sandbox only.', inputSchema: MY_SHAPE },
    async input => {
    if (input.account?.sandbox !== true) return toMcpResponse({ ... });
    return toMcpResponse(await handleTestControllerRequest(store, input as Record<string, unknown>));
    }
    );

    Adopters routing through createAdcpServerFromPlatform({ complyTest }) pass the same fields via complyTest.inputSchema (see ComplyControllerConfig.inputSchema in @adcp/sdk/testing).

    This keeps the default registration protocol-compliant while giving wrapper authors a documented extension point.

    Type Declaration

    • scenario: ZodString
    • params: ZodOptional<ZodRecord<ZodString, ZodUnknown>>
    • context: ZodOptional<ZodRecord<ZodString, ZodUnknown>>
    • ext: ZodOptional<ZodRecord<ZodString, ZodUnknown>>