import "./node-require-shim.js"; import { type SDKTransport, type Server as TinyServer } from "tiny-stdio-mcp-server"; import type { Group, HandlerFs, LogLevel, RuntimeLoggerInput } from "./index.js"; import { type ErrorReportsOption } from "./error-report.js"; import { type HumanInLoopRuntime } from "./human-in-loop/types.js"; type Casing = "snake" | "camel"; type CmdkitServer = Omit & { connect(transport: SDKTransport): Promise; }; export declare const MCP_STREAM_METHODS: { readonly list: "toolcraft/streams/list"; readonly subscribe: "toolcraft/streams/subscribe"; readonly unsubscribe: "toolcraft/streams/unsubscribe"; readonly notification: "notifications/toolcraft/stream"; }; export interface RunMCPOptions> { apiVersion?: string; approvals?: boolean; env?: Record; fetch?: typeof globalThis.fetch; fs?: HandlerFs; name: string; version?: string; humanInLoop?: HumanInLoopRuntime; projectRoot?: string; logLevel?: LogLevel; logger?: RuntimeLoggerInput; /** * Optional allowlist of MCP tool names or group prefixes. * * Tool names always use `__`-joined snake_case path segments, for example * `root__bot__create`. * * Passing a group prefix like `root__bot` includes every descendant tool in * that subtree. */ tools?: string[]; /** * Omit the root group name from MCP tool names for a single root group. * * Defaults to false, so existing MCP tool names keep the root group prefix. */ omitRootToolNamePrefix?: boolean; services?: TServices; errorReports?: ErrorReportsOption; /** * Controls MCP input-schema key casing and accepted argument-key casing. * * This does not change tool names. Tool names always stay `__`-joined * snake_case path segments. */ casing?: Casing; } export declare function createMCPServer>(roots: Group | Group[], options: RunMCPOptions): CmdkitServer; export declare function runMCP>(roots: Group | Group[], options: RunMCPOptions): Promise; export {};