octocode-mcp
Version:
Model Context Protocol (MCP) server for advanced GitHub repository analysis and code discovery. Provides AI assistants with powerful tools to search, analyze, and understand codebases across GitHub.
149 lines (148 loc) • 3.68 kB
TypeScript
import { z } from 'zod';
export declare const GitHubViewRepoStructureQuerySchema: z.ZodObject<{
mainResearchGoal: z.ZodString;
researchGoal: z.ZodString;
reasoning: z.ZodString;
} & {
owner: z.ZodString;
repo: z.ZodString;
branch: z.ZodString;
path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
depth: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}, {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}>;
export declare const GitHubViewRepoStructureBulkQuerySchema: z.ZodObject<{
queries: z.ZodArray<z.ZodObject<{
mainResearchGoal: z.ZodString;
researchGoal: z.ZodString;
reasoning: z.ZodString;
} & {
owner: z.ZodString;
repo: z.ZodString;
branch: z.ZodString;
path: z.ZodOptional<z.ZodDefault<z.ZodString>>;
depth: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
}, "strip", z.ZodTypeAny, {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}, {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}>, "many">;
}, "strip", z.ZodTypeAny, {
queries: {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}[];
}, {
queries: {
mainResearchGoal: string;
researchGoal: string;
reasoning: string;
owner: string;
repo: string;
branch: string;
path?: string | undefined;
depth?: number | undefined;
}[];
}>;
export interface GitHubApiFileItem {
name: string;
path: string;
sha: string;
size: number;
type: 'file' | 'dir';
url: string;
html_url: string;
git_url: string;
download_url: string | null;
_links: {
self: string;
git: string;
html: string;
};
}
export interface GitHubRepositoryContentsResult {
path: string;
baseUrl: string;
files: Array<{
name: string;
size: number;
url: string;
}>;
folders: string[];
branchFallback?: {
requested: string;
used: string;
message: string;
};
}
export interface GitHubRepositoryStructureResult {
owner: string;
repo: string;
branch: string;
path: string;
apiSource: boolean;
summary: {
totalFiles: number;
totalFolders: number;
truncated: boolean;
filtered: boolean;
originalCount: number;
};
files: Array<{
path: string;
size?: number;
url: string;
}>;
folders: {
count: number;
folders: Array<{
path: string;
url: string;
}>;
};
}
export interface GitHubRepositoryStructureError {
error: string;
status?: number;
triedBranches?: string[];
defaultBranch?: string;
rateLimitRemaining?: number;
rateLimitReset?: number;
}