ATLAS: Task Management System
Important Version Note: Version 1.5.4 is the last version that uses SQLite as the database. Version 2.0 and onwards has been completely rewritten to use Neo4j, which requires either:Version 2.5.0 introduces a new 3-node system (Projects, Tasks, Knowledge) that replaces the previous structure.
Table of Contents
- Overview
- Features
- Installation
- Configuration
- Project Structure
- Tools
- Resources
- Database Backup and Restore
- Examples
- Contributing
- License
Overview
- Clients: Claude Desktop, IDEs, and other MCP-compatible clients
- Servers: Tools and resources for project, task, and knowledge management
- LLM Agents: AI models that leverage the server's management capabilities
System Integration
- Project-Task Relationship: Projects contain tasks that represent actionable steps needed to achieve project goals. Tasks inherit context from their parent project while providing granular tracking of individual work items.
- Knowledge Integration: Both projects and tasks can be enriched with knowledge items, providing team members with necessary information and context.
- Dependency Management: Both projects and tasks support dependency relationships, allowing for complex workflows with prerequisites and sequential execution requirements.
- Unified Search: The platform provides cross-entity search capabilities, allowing users to find relevant projects, tasks, or knowledge based on various criteria.
Features
Project Management
- Comprehensive Tracking: Manage project metadata, statuses, and rich content (notes, links, etc.) with built-in support for bulk operations.
- Dependency & Relationship Handling: Automatically validate and track inter-project dependencies.
Task Management
- Task Lifecycle Management: Create, track, and update tasks through their entire lifecycle.
- Prioritization & Categorization: Assign priority levels and categorize tasks with tags for better organization.
- Dependency Tracking: Establish task dependencies to create structured workflows.
Knowledge Management
- Structured Knowledge Repository: Maintain a searchable repository of project-related information.
- Domain Categorization: Organize knowledge by domain and tags for easy retrieval.
- Citation Support: Track sources and references for knowledge items.
Graph Database Integration
- Native Relationship Management: Leverage Neo4j's ACID-compliant transactions and optimized queries for robust data integrity.
- Advanced Search & Scalability: Perform property-based searches with fuzzy matching and wildcards while maintaining high performance.
Unified Search
- Cross-Entity Search: Find relevant projects, tasks, or knowledge based on content, metadata, or relationships.
- Flexible Query Options: Support for case-insensitive, fuzzy, and advanced filtering options.
Installation
- Clone the repository:
- Install dependencies:
- Configure Neo4j:
- Build the project:
Configuration
Environment Variables
.env
file based on .env.example
:MCP Client Settings
Project Structure
Tools
Project Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Task Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Knowledge Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Search Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Research Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Database Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Resources
Direct Resources
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
Resource Templates
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
Database Backup and Restore
src/services/neo4j/backupRestoreService.ts
.Automatic Backups (Note)
triggerBackgroundBackup
in src/services/neo4j/driver.ts
is commented out with a note indicating it was removed. Please use the manual backup process described below to protect your data.Backup Process
- Mechanism: The backup process exports all
Project
,Task
, andKnowledge
nodes, along with their relationships, into separate JSON files.
- Output: Each backup creates a timestamped directory (e.g.,
atlas-backup-YYYYMMDDHHMMSS
) within the configured backup path (default:./atlas-backups/
). This directory containsprojects.json
,tasks.json
,knowledge.json
, andrelationships.json
.
- Manual Backup: You can trigger a manual backup using the provided script:This command executes
scripts/db-backup.ts
, which calls theexportDatabase
function.
Restore Process
- Mechanism: The restore process first completely clears the existing Neo4j database. Then, it imports nodes and relationships from the JSON files located in the specified backup directory.
- Warning: Restoring from a backup is a destructive operation. It will overwrite all current data in your Neo4j database.
- Manual Restore: To restore the database from a backup directory, use the import script:Replace
<path_to_backup_directory>
with the actual path to the backup folder (e.g.,./atlas-backups/atlas-backup-20250326120000
). This command executesscripts/db-import.ts
, which calls theimportDatabase
function.
- Relationship Handling: The import process attempts to recreate relationships based on the
id
properties stored within the nodes during export. Ensure your nodes have consistentid
properties for relationships to be restored correctly.
Examples
examples/
directory contains practical examples demonstrating various features of the ATLAS MCP Server.- Backup Example: Located in
examples/backup-example/
, this shows the structure and format of the JSON files generated by thenpm run db:backup
command. See the Examples README for more details.
- Deep Research Example: Located in
examples/deep-research-example/
, this demonstrates the output and structure generated by theatlas_deep_research
tool. It includes a markdown file (covington_community_grant_research.md
) summarizing the research plan and a JSON file (full-export.json
) containing the raw data exported from the database after the research plan was created. See the Examples README for more details.
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes with a descriptive message
- Push to the branch
- Create a Pull Request
License
ATLAS: Task Management System
Important Version Note: Version 1.5.4 is the last version that uses SQLite as the database. Version 2.0 and onwards has been completely rewritten to use Neo4j, which requires either:Version 2.5.0 introduces a new 3-node system (Projects, Tasks, Knowledge) that replaces the previous structure.
Table of Contents
- Overview
- Features
- Installation
- Configuration
- Project Structure
- Tools
- Resources
- Database Backup and Restore
- Examples
- Contributing
- License
Overview
- Clients: Claude Desktop, IDEs, and other MCP-compatible clients
- Servers: Tools and resources for project, task, and knowledge management
- LLM Agents: AI models that leverage the server's management capabilities
System Integration
- Project-Task Relationship: Projects contain tasks that represent actionable steps needed to achieve project goals. Tasks inherit context from their parent project while providing granular tracking of individual work items.
- Knowledge Integration: Both projects and tasks can be enriched with knowledge items, providing team members with necessary information and context.
- Dependency Management: Both projects and tasks support dependency relationships, allowing for complex workflows with prerequisites and sequential execution requirements.
- Unified Search: The platform provides cross-entity search capabilities, allowing users to find relevant projects, tasks, or knowledge based on various criteria.
Features
Project Management
- Comprehensive Tracking: Manage project metadata, statuses, and rich content (notes, links, etc.) with built-in support for bulk operations.
- Dependency & Relationship Handling: Automatically validate and track inter-project dependencies.
Task Management
- Task Lifecycle Management: Create, track, and update tasks through their entire lifecycle.
- Prioritization & Categorization: Assign priority levels and categorize tasks with tags for better organization.
- Dependency Tracking: Establish task dependencies to create structured workflows.
Knowledge Management
- Structured Knowledge Repository: Maintain a searchable repository of project-related information.
- Domain Categorization: Organize knowledge by domain and tags for easy retrieval.
- Citation Support: Track sources and references for knowledge items.
Graph Database Integration
- Native Relationship Management: Leverage Neo4j's ACID-compliant transactions and optimized queries for robust data integrity.
- Advanced Search & Scalability: Perform property-based searches with fuzzy matching and wildcards while maintaining high performance.
Unified Search
- Cross-Entity Search: Find relevant projects, tasks, or knowledge based on content, metadata, or relationships.
- Flexible Query Options: Support for case-insensitive, fuzzy, and advanced filtering options.
Installation
- Clone the repository:
- Install dependencies:
- Configure Neo4j:
- Build the project:
Configuration
Environment Variables
.env
file based on .env.example
:MCP Client Settings
Project Structure
Tools
Project Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Task Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Knowledge Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Search Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Research Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Database Operations
[object Object] | [object Object] | [object Object] |
[object Object] | [object Object] | [object Object] |
Resources
Direct Resources
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
Resource Templates
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
[object Object] | [object Object] |
Database Backup and Restore
src/services/neo4j/backupRestoreService.ts
.Automatic Backups (Note)
triggerBackgroundBackup
in src/services/neo4j/driver.ts
is commented out with a note indicating it was removed. Please use the manual backup process described below to protect your data.Backup Process
- Mechanism: The backup process exports all
Project
,Task
, andKnowledge
nodes, along with their relationships, into separate JSON files.
- Output: Each backup creates a timestamped directory (e.g.,
atlas-backup-YYYYMMDDHHMMSS
) within the configured backup path (default:./atlas-backups/
). This directory containsprojects.json
,tasks.json
,knowledge.json
, andrelationships.json
.
- Manual Backup: You can trigger a manual backup using the provided script:This command executes
scripts/db-backup.ts
, which calls theexportDatabase
function.
Restore Process
- Mechanism: The restore process first completely clears the existing Neo4j database. Then, it imports nodes and relationships from the JSON files located in the specified backup directory.
- Warning: Restoring from a backup is a destructive operation. It will overwrite all current data in your Neo4j database.
- Manual Restore: To restore the database from a backup directory, use the import script:Replace
<path_to_backup_directory>
with the actual path to the backup folder (e.g.,./atlas-backups/atlas-backup-20250326120000
). This command executesscripts/db-import.ts
, which calls theimportDatabase
function.
- Relationship Handling: The import process attempts to recreate relationships based on the
id
properties stored within the nodes during export. Ensure your nodes have consistentid
properties for relationships to be restored correctly.
Examples
examples/
directory contains practical examples demonstrating various features of the ATLAS MCP Server.- Backup Example: Located in
examples/backup-example/
, this shows the structure and format of the JSON files generated by thenpm run db:backup
command. See the Examples README for more details.
- Deep Research Example: Located in
examples/deep-research-example/
, this demonstrates the output and structure generated by theatlas_deep_research
tool. It includes a markdown file (covington_community_grant_research.md
) summarizing the research plan and a JSON file (full-export.json
) containing the raw data exported from the database after the research plan was created. See the Examples README for more details.
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes with a descriptive message
- Push to the branch
- Create a Pull Request