@mseep/atlas-mcp-server
Version:
A Model Context Protocol (MCP) server for ATLAS, a Neo4j-powered task management system for LLM Agents - implementing a three-tier architecture (Projects, Tasks, Knowledge) to manage complex workflows.
152 lines (151 loc) • 4.59 kB
TypeScript
import { z } from "zod";
export interface McpContent {
[key: string]: unknown;
type: "text";
text: string;
}
export interface McpToolResponse {
[key: string]: unknown;
content: McpContent[];
_meta?: Record<string, unknown>;
isError?: boolean;
}
export declare const ProjectStatus: {
readonly ACTIVE: "active";
readonly PENDING: "pending";
readonly IN_PROGRESS: "in-progress";
readonly COMPLETED: "completed";
readonly ARCHIVED: "archived";
};
export declare const TaskStatus: {
readonly BACKLOG: "backlog";
readonly TODO: "todo";
readonly IN_PROGRESS: "in-progress";
readonly COMPLETED: "completed";
};
export declare const PriorityLevel: {
readonly LOW: "low";
readonly MEDIUM: "medium";
readonly HIGH: "high";
readonly CRITICAL: "critical";
};
export declare const TaskType: {
readonly RESEARCH: "research";
readonly GENERATION: "generation";
readonly ANALYSIS: "analysis";
readonly INTEGRATION: "integration";
};
export declare const KnowledgeDomain: {
readonly TECHNICAL: "technical";
readonly BUSINESS: "business";
readonly SCIENTIFIC: "scientific";
};
export interface ProjectResponse {
id: string;
name: string;
description: string;
status: string;
urls?: Array<{
title: string;
url: string;
}>;
completionRequirements: string;
dependencies?: string[];
outputFormat: string;
taskType: string;
createdAt: string;
updatedAt: string;
}
export interface TaskResponse {
id: string;
projectId: string;
title: string;
description: string;
priority: string;
status: string;
assignedTo?: string;
urls?: Array<{
title: string;
url: string;
}>;
tags?: string[];
completionRequirements: string;
dependencies?: string[];
outputFormat: string;
taskType: string;
createdAt: string;
updatedAt: string;
}
export interface KnowledgeResponse {
id: string;
projectId: string;
text: string;
tags?: string[];
domain: string;
citations?: string[];
createdAt: string;
updatedAt: string;
}
export declare const createProjectStatusEnum: () => z.ZodEnum<[string, ...string[]]>;
export declare const createTaskStatusEnum: () => z.ZodEnum<[string, ...string[]]>;
export declare const createPriorityLevelEnum: () => z.ZodEnum<[string, ...string[]]>;
export declare const createTaskTypeEnum: () => z.ZodEnum<[string, ...string[]]>;
export declare const createKnowledgeDomainEnum: () => z.ZodEnum<[string, ...string[]]>;
export declare enum ResponseFormat {
FORMATTED = "formatted",
JSON = "json"
}
export declare function createResponseFormatEnum(): z.ZodNativeEnum<typeof ResponseFormat>;
export declare const ProjectInputSchema: {
readonly name: z.ZodString;
readonly description: z.ZodOptional<z.ZodString>;
readonly status: z.ZodDefault<z.ZodEnum<[string, ...string[]]>>;
};
export declare const UpdateProjectInputSchema: {
readonly id: z.ZodString;
readonly updates: z.ZodObject<{
readonly name: z.ZodOptional<z.ZodString>;
readonly description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
readonly status: z.ZodOptional<z.ZodDefault<z.ZodEnum<[string, ...string[]]>>>;
}, "strip", z.ZodTypeAny, {
status?: string | undefined;
name?: string | undefined;
description?: string | undefined;
}, {
status?: string | undefined;
name?: string | undefined;
description?: string | undefined;
}>;
};
export declare const ProjectIdInputSchema: {
readonly projectId: z.ZodString;
};
export interface ResourceContent {
[key: string]: unknown;
uri: string;
text: string;
mimeType?: string;
}
export interface ResourceResponse {
[key: string]: unknown;
contents: ResourceContent[];
_meta?: Record<string, unknown>;
}
export interface PromptMessageContent {
[key: string]: unknown;
type: "text";
text: string;
}
export interface PromptMessage {
[key: string]: unknown;
role: "user" | "assistant";
content: PromptMessageContent;
}
export interface PromptResponse {
[key: string]: unknown;
messages: PromptMessage[];
_meta?: Record<string, unknown>;
}
export declare const createToolResponse: (text: string, isError?: boolean) => McpToolResponse;
export declare const createResourceResponse: (uri: string, text: string, mimeType?: string) => ResourceResponse;
export declare const createPromptResponse: (text: string, role?: "user" | "assistant") => PromptResponse;