@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
TypeScript
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;