#!/usr/bin/env node export interface DoctorReport { selfVersion: string; registryLatest: string | null; npmGlobal: { version: string | null; dir: string | null; }; localShadow: { version: string; dir: string; } | null; effectiveNpx: string | null; runningServers: Array<{ pid: number; version: string | null; script: string; project: string | null; servesTarget: boolean; }>; targetProjectDir: string | null; bridgePlugin: { version: string | null; project: string; } | null; bareNpxConfigs: string[]; } /** Walk up from cwd; the first node_modules/ue-mcp is what npx resolves locally. */ export declare function findLocalShadow(startDir: string): { version: string; dir: string; } | null; /** * Parse a `node .../ue-mcp/dist/index.js ` command line into the script * path and the project argument. Returns null when the command line is not a * running server (a flag/subcommand invocation, or no ue-mcp index.js). Exported * for tests. (#550) */ export declare function parseServerInvocation(cmd: string): { script: string; project: string | null; } | null; /** * Scan cwd + parents for a .mcp.json that launches the server via bare * `npx ue-mcp` (an npx server whose args include "ue-mcp" with no @version pin * and no -y) — the configuration that lets a local copy shadow the global one. */ export declare function findBareNpxConfigs(cwd: string): string[]; export declare function collectDoctor(projectArg?: string, cwd?: string): DoctorReport; export declare function formatDoctor(d: DoctorReport): string; /** Entry point for `ue-mcp doctor [project.uproject]`. */ export declare function runDoctorCli(): void;