import { CuneiformCommand } from '../../../base/cuneiform-command.js'; /** * Command result type for JSON output. */ export type McpServeResult = { /** Server status */ readonly status: 'started'; /** Server configuration */ readonly config: { readonly name: string; readonly version: string; readonly targetOrg: string; readonly apiVersion?: string; }; }; /** * Starts the Cuneiform MCP (Model Context Protocol) server. * * The MCP server exposes Cuneiform CLI commands as MCP tools, enabling * LLM clients (like Claude Desktop or Cursor) to invoke Salesforce operations * through natural language interactions. * * Use this command to: * - Enable Claude Desktop integration with Cuneiform * - Provide LLMs with direct access to Salesforce metadata * - Execute read-only operations from AI assistants * * @example * ```bash * # Start MCP server for a specific org * sf cuneiform mcp serve --target-org myOrg * * # Start with debug logging * sf cuneiform mcp serve --target-org myOrg --debug * * # Start with specific API version * sf cuneiform mcp serve --target-org myOrg --api-version 59.0 * ``` */ export default class McpServe extends CuneiformCommand { static readonly hidden = true; static readonly summary: string; static readonly description: string; static readonly examples: string[]; static readonly flags: { 'target-org': import("@oclif/core/interfaces").OptionFlag; 'api-version': import("@oclif/core/interfaces").OptionFlag; debug: import("@oclif/core/interfaces").BooleanFlag; }; /** * Executes the MCP serve command. * * @returns McpServeResult with server status */ run(): Promise; }