Files
reverse-engineering-anything/src/server/toolRegistrationOptions.ts
T
morluto b8a9da0c0f refactor(mcp): make analysis states unrepresentable (#468)
* refactor(config): parse capability settings into exact states

* refactor(runtime): encode replay and process outcomes exactly

* refactor: make analysis states unrepresentable

* refactor(mcp): register canonical schemas with SDK

* fix: preserve capability and catalog invariants

* fix(build): remove stale compiled modules

* fix(replay): update real verifier policy dependency

* fix(package): verify the complete MCP catalog

* fix(test): supply complete replay reload policy

* refactor(contracts): centralize output schema lookup

* refactor(mcp): delegate protocol boundaries to SDK

* fix(browser): approve real source capture

* fix(mcp): preserve catalog guidance
2026-08-10 02:28:11 +08:00

20 lines
763 B
TypeScript

import type { ToolContract } from "../contracts/toolContracts.js";
import { toolInputSchemaWithMetadata } from "../contracts/toolSchemaMetadata.js";
/** Project the canonical Zod contracts directly into SDK registration. */
export const toolRegistrationOptions = <Contract extends ToolContract>(
contract: Contract,
): {
readonly title: Contract["title"];
readonly description: Contract["description"];
readonly inputSchema: Contract["inputSchema"];
readonly outputSchema: Contract["outputSchema"];
readonly annotations: Contract["annotations"];
} => ({
title: contract.title,
description: contract.description,
inputSchema: toolInputSchemaWithMetadata(contract),
outputSchema: contract.outputSchema,
annotations: contract.annotations,
});