@codewithdan/ai-repo-adventure-mcp
Version:
MCP server for AI-powered code repository exploration through interactive storytelling
204 lines • 6.18 kB
TypeScript
/**
* MCP Repo Adventure Tools - Main Entry Point
*
* These tools provide an interactive, gamified way to explore and understand codebases.
* The typical flow is:
* 1. start_adventure - Analyzes the codebase and presents theme options
* 2. choose_theme - Generates a custom story and quests based on the selected theme
* 3. explore_quest - Explores individual quests (can be called multiple times)
* 4. view_progress - Check completion status and see remaining quests
*
* Each tool has detailed descriptions to help MCP clients understand when to use them
* rather than relying on their base LLM for responses.
*
* Tools are now organized in separate files for better maintainability.
*/
import { adventureManager } from '@ai-repo-adventures/core/adventure';
export { adventureManager };
export declare const start_adventure: {
description: string;
schema: import("zod").ZodObject<{
projectPath: import("zod").ZodOptional<import("zod").ZodString>;
}, "strip", import("zod").ZodTypeAny, {
projectPath?: string | undefined;
}, {
projectPath?: string | undefined;
}>;
handler: (args: {
projectPath?: string | undefined;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
export declare const choose_theme: {
description: string;
schema: import("zod").ZodObject<{
theme: import("zod").ZodString;
customTheme: import("zod").ZodOptional<import("zod").ZodObject<{
name: import("zod").ZodString;
description: import("zod").ZodString;
keywords: import("zod").ZodArray<import("zod").ZodString, "many">;
}, "strip", import("zod").ZodTypeAny, {
name: string;
description: string;
keywords: string[];
}, {
name: string;
description: string;
keywords: string[];
}>>;
}, "strip", import("zod").ZodTypeAny, {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}, {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}>;
handler: (args: {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
export declare const explore_quest: {
description: string;
schema: import("zod").ZodObject<{
choice: import("zod").ZodString;
}, "strip", import("zod").ZodTypeAny, {
choice: string;
}, {
choice: string;
}>;
handler: (args: {
choice: string;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
export declare const view_progress: {
description: string;
schema: import("zod").ZodObject<{}, "strip", import("zod").ZodTypeAny, {}, {}>;
handler: (_args: {}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
export declare const tools: {
start_adventure: {
description: string;
schema: import("zod").ZodObject<{
projectPath: import("zod").ZodOptional<import("zod").ZodString>;
}, "strip", import("zod").ZodTypeAny, {
projectPath?: string | undefined;
}, {
projectPath?: string | undefined;
}>;
handler: (args: {
projectPath?: string | undefined;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
choose_theme: {
description: string;
schema: import("zod").ZodObject<{
theme: import("zod").ZodString;
customTheme: import("zod").ZodOptional<import("zod").ZodObject<{
name: import("zod").ZodString;
description: import("zod").ZodString;
keywords: import("zod").ZodArray<import("zod").ZodString, "many">;
}, "strip", import("zod").ZodTypeAny, {
name: string;
description: string;
keywords: string[];
}, {
name: string;
description: string;
keywords: string[];
}>>;
}, "strip", import("zod").ZodTypeAny, {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}, {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}>;
handler: (args: {
theme: string;
customTheme?: {
name: string;
description: string;
keywords: string[];
} | undefined;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
explore_quest: {
description: string;
schema: import("zod").ZodObject<{
choice: import("zod").ZodString;
}, "strip", import("zod").ZodTypeAny, {
choice: string;
}, {
choice: string;
}>;
handler: (args: {
choice: string;
}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
view_progress: {
description: string;
schema: import("zod").ZodObject<{}, "strip", import("zod").ZodTypeAny, {}, {}>;
handler: (_args: {}) => Promise<{
content: {
type: "text";
text: string;
}[];
}>;
};
};
//# sourceMappingURL=tools.d.ts.map