import type { WorkspacePlugin } from "../plugin.js"; /** * One workspace plugin tool — name, description, a zod raw-shape input schema, * and an async handler returning a `ToolResult`. * * Carries **zero MCP/SDK dependency**: the same definitions feed both the * in-process Claude Agent SDK server ({@link buildWorkspaceMcpServer}) and the * raw stdio MCP server ({@link buildWorkspaceMcpStdioServer}). */ export interface WorkspaceToolDef { name: string; description: string; inputSchema: Record; handler: (args: any) => Promise; } /** * Build the 28 workspace plugin tool definitions. * * Tool groups: * - 4 mount tools (`mount_list`, `mount_sync`, `mount_status`, `mount_read`) * - 5 flow tools (`flow_list`, `flow_show`, `flow_list_sessions`, `flow_get_session`, `flow_find_flow_for_session`) * - 6 skill tools (`skill_list`, `skill_list_domains`, `skill_show`, `skill_search`, `skill_check_requirements`, `skill_get_preamble`) * - 2 session tools (`session_list`, `session_get`) * - 7 connector tools (`connector_list`, `connector_read`, `connector_write`, `connector_search`, `connector_exec`, `connector_load_skill`, `connector_describe`) * - 4 workspace tools (`workspace_validate`, `workspace_info`, `workspace_test_secret`, `workspace_reload`) * * @param plugin - A booted `WorkspacePlugin` instance. * @returns The 28 tool definitions, free of any MCP/SDK coupling. * * @docLink packages/workspace-plugin/concepts#adapters */ export declare function buildWorkspaceToolDefs(plugin: WorkspacePlugin): WorkspaceToolDef[]; /** * Build the **in-process** workspace MCP server via the Claude Agent SDK's * `createSdkMcpServer`. This shape is what the runner embeds into a Claude * Agent SDK `query()` call — the runner *is* the Claude Agent SDK host. * * Returns `null` when `@anthropic-ai/claude-agent-sdk` is not installed * (graceful degradation for non-Claude-Code environments). * * For the standalone `skaile mcp-server` stdio subprocess use * {@link buildWorkspaceMcpStdioServer} / {@link runMcpServerStdio} instead — * those carry no Claude Agent SDK dependency. * * @param plugin - A booted `WorkspacePlugin` instance. * @returns The SDK MCP server object or `null` if the SDK is unavailable. * * @docLink packages/workspace-plugin/concepts#adapters */ export declare function buildWorkspaceMcpServer(plugin: WorkspacePlugin): Promise; /** * Build a **raw stdio** workspace MCP server on `@modelcontextprotocol/sdk` — * no Claude Agent SDK. This is the correct shape for the `skaile mcp-server` * stdio subprocess that MCP-client agents (Claude Code, Codex, …) spawn. * Runs on plain Node. * * The returned server is not yet connected — call `.connect(transport)` (or * use {@link runMcpServerStdio}). * * @param plugin - A booted `WorkspacePlugin` instance. * @returns A `McpServer` with all 28 workspace tools registered. * * @docLink packages/workspace-plugin/concepts#adapters */ export declare function buildWorkspaceMcpStdioServer(plugin: WorkspacePlugin): Promise; /** * Start the workspace MCP server over stdio transport. * * Builds the raw `@modelcontextprotocol/sdk` server via * {@link buildWorkspaceMcpStdioServer} and connects a `StdioServerTransport`. * No `@anthropic-ai/claude-agent-sdk` dependency anywhere on this path. * * @param plugin - A booted `WorkspacePlugin` instance. * * @docLink packages/workspace-plugin/concepts#adapters */ export declare function runMcpServerStdio(plugin: WorkspacePlugin): Promise; //# sourceMappingURL=mcp.d.ts.map