ludus-mcp
Version:
MCP server for managing Ludus cybersecurity training environments through natural language commands
62 lines • 2.02 kB
TypeScript
import { z } from 'zod';
import { Logger } from '../utils/logger.js';
import { LudusCliWrapper } from '../ludusMCP/cliWrapper.js';
declare const LudusDocsSchema: z.ZodObject<{
action: z.ZodEnum<["search", "read", "list_structure"]>;
search_query: z.ZodOptional<z.ZodString>;
search_directory: z.ZodOptional<z.ZodString>;
file_path: z.ZodOptional<z.ZodString>;
max_results: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
action: "search" | "read" | "list_structure";
max_results: number;
search_query?: string | undefined;
search_directory?: string | undefined;
file_path?: string | undefined;
}, {
action: "search" | "read" | "list_structure";
search_query?: string | undefined;
search_directory?: string | undefined;
file_path?: string | undefined;
max_results?: number | undefined;
}>;
export declare function createLudusDocsSearchTool(logger: Logger, ludusCliWrapper: LudusCliWrapper): {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
action: {
type: string;
enum: string[];
description: string;
};
search_query: {
type: string;
description: string;
};
search_directory: {
type: string;
description: string;
};
file_path: {
type: string;
description: string;
};
max_results: {
type: string;
default: number;
description: string;
};
};
required: string[];
};
};
export declare function handleLudusDocsSearch(args: z.infer<typeof LudusDocsSchema>, logger: Logger, ludusCliWrapper: LudusCliWrapper): Promise<{
content: Array<{
type: string;
text: string;
}>;
}>;
export {};
//# sourceMappingURL=ludusDocsSearch.d.ts.map