/** * Transport-independent MCP tool surface for plainstamp. * * Exposes the same tool definitions and dispatch logic to: * - the stdio MCP server (`mcp-server.ts`), which talks to local * agent runtimes (Claude Code, Codex, etc.); and * - any HTTP / Streamable-HTTP MCP transport binding (e.g. the * Cloudflare Workers wrapper at `/ventures/plainstamp/cf-worker/`), * which will be wired in Phase 4 of `/ops/cloudflare/CLOUDFLARE_DEPLOY.md`. * * Keeping the tool list and dispatcher in one place means stdio and * HTTP transports cannot drift in their tool surface. */ /** * Shape returned by an MCP tool call. Mirrors the * `CallToolResult` shape from the MCP TypeScript SDK so this module * stays SDK-version-agnostic. */ export interface McpToolResult { content: Array<{ type: "text"; text: string; }>; isError?: boolean; } /** * MCP tool descriptor. Matches the shape registered with * `ListToolsRequestSchema` in the MCP TypeScript SDK. */ export interface McpToolDescriptor { name: string; description: string; inputSchema: { type: "object"; properties: Record; required?: string[]; additionalProperties: false; }; } /** * The full list of plainstamp tool descriptors. Pass this to a * `ListToolsRequestSchema` handler. */ export declare const mcpTools: McpToolDescriptor[]; /** * Dispatch an MCP tool call. Returns the canonical `McpToolResult` * shape regardless of which transport invoked it. * * Unknown tool names return `{ isError: true }` rather than throwing, * matching MCP's convention. */ export declare function executeMcpTool(name: string, args: unknown): McpToolResult; //# sourceMappingURL=mcp-tools.d.ts.map