UNPKG

@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.

96 lines (95 loc) 2.39 kB
import { ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js"; import { Neo4jKnowledge, Neo4jProject, Neo4jTask } from "../../services/neo4j/types.js"; /** * Resource URIs for the Atlas MCP resources */ export declare const ResourceURIs: { PROJECTS: string; PROJECT_TEMPLATE: string; TASKS: string; TASKS_BY_PROJECT: string; TASK_TEMPLATE: string; KNOWLEDGE: string; KNOWLEDGE_BY_PROJECT: string; KNOWLEDGE_TEMPLATE: string; }; /** * Resource templates for the Atlas MCP resources */ export declare const ResourceTemplates: { PROJECT: ResourceTemplate; TASK: ResourceTemplate; TASKS_BY_PROJECT: ResourceTemplate; KNOWLEDGE: ResourceTemplate; KNOWLEDGE_BY_PROJECT: ResourceTemplate; }; /** * Project resource response interface */ export interface ProjectResource { id: string; name: string; description: string; status: string; urls: Array<{ title: string; url: string; }>; completionRequirements: string; outputFormat: string; taskType: string; createdAt: string; updatedAt: string; } /** * Task resource response interface */ export interface TaskResource { id: string; projectId: string; title: string; description: string; priority: string; status: string; assignedTo: string | null; urls: Array<{ title: string; url: string; }>; tags: string[]; completionRequirements: string; outputFormat: string; taskType: string; createdAt: string; updatedAt: string; } /** * Knowledge resource response interface */ export interface KnowledgeResource { id: string; projectId: string; text: string; tags: string[]; domain: string; citations: string[]; createdAt: string; updatedAt: string; } /** * Convert Neo4j Project to Project Resource */ export declare function toProjectResource(project: Neo4jProject): ProjectResource; /** * Convert Neo4j Task (with added assignedToUserId) to Task Resource */ export declare function toTaskResource(task: Neo4jTask & { assignedToUserId: string | null; }): TaskResource; /** * Convert Neo4j Knowledge (with added domain/citations) to Knowledge Resource */ export declare function toKnowledgeResource(knowledge: Neo4jKnowledge & { domain: string | null; citations: string[]; }): KnowledgeResource;