/**
 * MCPToolProvider — Custom Promptfoo provider for MCP tool-use evaluation.
 *
 * Orchestrates the MCP evaluation flow:
 * 1. Connects to the MCP server and discovers available tools
 * 2. Selects the appropriate LLM backend based on model ID prefix
 * 3. Delegates the multi-turn tool loop to the backend
 * 4. Formats the result for Promptfoo (including tool call summary)
 *
 * Promptfoo config usage:
 *
 *   providers:
 *     - id: file://dist/pipeline/compiler/mode-handlers/mcp-tool-provider/index.js
 *       label: "Claude Opus 4.6 + MCP"
 *       config:
 *         model: anthropic:messages:claude-opus-4-6
 *         maxToolRounds: 5
 *         temperature: 0.2
 *         max_tokens: 4096
 *         mcpServer:
 *           url: https://mcp.sanity.io
 *           auth: { type: bearer, token: "{{env.SANITY_API_TOKEN}}" }
 *           name: mcp-live-query-documents
 *         mcpTools: [query_documents, get_schema]
 */
import type { CallApiContextParams, ProviderOptions, ProviderResponse } from "./types.js";
export default class MCPToolProvider {
    config: Record<string, unknown>;
    private providerId;
    constructor(options?: ProviderOptions);
    id(): string;
    callApi(prompt: string, _context?: CallApiContextParams): Promise<ProviderResponse>;
}
