export interface McpToolDefinition { name: string; description: string; inputSchema: { type: 'object'; properties: Record; required?: string[]; }; } export interface McpPromptDefinition { name: string; title: string; description: string; arguments?: Array<{ name: string; description: string; required?: boolean; }>; } export declare const MCP_TOOLS: McpToolDefinition[]; export type McpToolProfile = 'core' | 'strict' | 'full'; /** * The minimal set of tools shipped by default. Keeps cache_creation overhead * low on Claude Code session start. Opt into the full surface by setting * MADAR_TOOL_PROFILE=full in the MCP server env block. */ export declare const CORE_TOOL_NAMES: readonly ["retrieve", "impact", "call_chain", "community_overview", "pr_impact", "graph_stats", "graph_summary"]; export type McpCoreToolName = (typeof CORE_TOOL_NAMES)[number]; /** * The compact context-pack-first surface installed by `--profile strict`. * A strict task starts with one answer-ready pack and can make one * authorization-bound verification expansion. General graph navigation stays * in core/full so a ready pack cannot invite an agent to keep exploring. */ export declare const STRICT_TOOL_NAMES: readonly ["context_pack", "context_expand"]; export type McpStrictToolName = (typeof STRICT_TOOL_NAMES)[number]; export interface ActiveMcpToolsOptions { /** When false, semantic/rerank fields are stripped from the retrieve * schema so agents never request a capability this machine lacks. */ semanticAvailable?: boolean; } export declare function activeMcpTools(profile?: McpToolProfile, options?: ActiveMcpToolsOptions): McpToolDefinition[]; export declare function resolveToolProfileFromEnv(env?: NodeJS.ProcessEnv): McpToolProfile; export declare function isToolEnabledInProfile(name: string, profile?: McpToolProfile): boolean; export declare const MCP_PROMPTS: McpPromptDefinition[];