UNPKG

atlas-mcp-server

Version:

ATLAS (Adaptive Task & Logic Automation System): An MCP server enabling LLM agents to manage projects, tasks, and knowledge via a Neo4j-backed, three-tier architecture. Facilitates complex workflow automation and project management through LLM Agents.

67 lines (66 loc) 2.23 kB
import { Driver, Session } from "neo4j-driver"; /** * Neo4j connection management singleton * Responsible for creating and managing the Neo4j driver connection */ declare class Neo4jDriver { private static instance; private driver; private connectionPromise; private transactionCounter; private constructor(); /** * Get the Neo4jDriver singleton instance */ static getInstance(): Neo4jDriver; /** * Initialize the Neo4j driver connection * @returns Promise that resolves to the Neo4j driver */ private initDriver; /** * Get the Neo4j driver instance, initializing it if necessary * @returns Promise that resolves to the Neo4j driver */ getDriver(): Promise<Driver>; /** * Create a new Neo4j session * @param database Optional database name * @returns Promise that resolves to a new Neo4j session */ getSession(database?: string): Promise<Session>; /** * Execute a query with a transaction * @param cypher Cypher query to execute * @param params Parameters for the query * @param database Optional database name * @returns Promise that resolves to the query result records */ executeQuery<T = any>(cypher: string, params?: Record<string, any>, database?: string): Promise<T[]>; /** * Execute a read-only query * @param cypher Cypher query to execute * @param params Parameters for the query * @param database Optional database name * @returns Promise that resolves to the query result records */ executeReadQuery<T = any>(cypher: string, params?: Record<string, any>, database?: string): Promise<T[]>; /** * Publish a database write operation event * @param operation Details about the operation * @private */ private publishWriteOperation; /** * Triggers a database backup in the background, including rotation logic. * Logs errors but does not throw to avoid interrupting the main flow. * @private */ private triggerBackgroundBackup; /** * Close the Neo4j driver connection */ close(): Promise<void>; } export declare const neo4jDriver: Neo4jDriver; export {};