memory-bank-mcp-mongodb
MCP server for MongoDB-powered memory bank management with multi-project isolation, version control, and real-time statistics.
README
Memory Bank MCP Server
Fork Notice: This is a fork of the original memory-bank-mcp by Aliosh Pimenta, enhanced with MongoDB-native features and real-time statistics tracking.
A modern Model Context Protocol (MCP) server implementation for MongoDB-powered memory bank management.
Key Features
- ๐๏ธ MongoDB-powered storage with advanced indexing and search capabilities
- ๐ข Multi-project isolation with automatic project management
- ๐ Real-time statistics tracking for all projects and files
- ๐ Type-safe operations with Zod validation and error handling
- ๐ Smart merge functionality with automatic cleanup
- ๐ Optimized MCP protocol implementation
Prerequisites
- MongoDB Server running locally or remotely (MongoDB 4.4+ recommended)
- Node.js 18+ for running the MCP server
- An MCP-compatible client (Claude Desktop, Cline, Cursor, etc.)
Installation
NPM Installation (Recommended)
npm install -g memory-bank-mcp-mongodb
Manual Installation
git clone https://github.com/Sato-Isolated/memory-mongo-bank-mcp.git
cd memory-mongo-bank-mcp
pnpm install
pnpm run build
Quick Start
-
Start MongoDB:
# Windows (if installed as service) net start MongoDB # macOS/Linux mongod # Or use Docker docker run -d -p 27017:27017 mongo:latest -
Configure your MCP client (see Configuration section below)
Configuration
Environment Variables
MONGODB_URL(required): MongoDB connection string (e.g.,mongodb://localhost:27017)MONGODB_DB(optional): MongoDB database name (defaults tomemory_bank)
MCP Client Configuration
VS Code with MCP Extension:
{
"mcp": {
"servers": {
"memory-bank-mongo": {
"command": "npx",
"args": ["-y", "memory-bank-mcp-mongodb"],
"env": {
"MONGODB_URL": "mongodb://localhost:27017",
"MONGODB_DB": "memory_bank"
}
}
}
}
}
Claude Desktop, Cline, Cursor:
{
"memory-bank": {
"command": "npx",
"args": ["-y", "memory-bank-mcp-mongodb"],
"env": {
"MONGODB_URL": "mongodb://localhost:27017",
"MONGODB_DB": "memory_bank"
}
}
}
Cursor (Alternative):
env MONGODB_URL=mongodb://localhost:27017 MONGODB_DB=memory_bank npx -y memory-bank-mcp-mongodb
Documentation
This project uses distributed documentation to help you navigate different sections:
๐ Architecture & Code Structure
- Source Code Overview - Architecture patterns and project structure
- Domain Layer - Business entities and core logic
- Data Layer - Repository patterns and use cases
- Presentation Layer - Controllers and API endpoints
- Infrastructure - Database and external services
Available Tools
๐ฏ Priority Tools (Start Here)
๐ list_projects
[PRIORITY 1 - START HERE] List all projects in the memory bank. ALWAYS use this first to discover available projects before any other operation. Essential for understanding workspace structure.
๐ list_project_files
[PRIORITY 2 - EXPLORE] List all files within a specific project. Use after list_projects to discover what files exist before reading them. Critical for understanding project content.
๐ memory_bank_read
[PRIORITY 3 - READ] Read a memory bank file for a specific project. Primary method to access file content. Use after list_project_files to read specific files.
๐ memory_bank_search
[HIGH PRIORITY - SEARCH] Search for files containing specific text within a project. Essential for finding relevant files when you don't know exact filenames.
๐ File Management Tools
โ๏ธ memory_bank_write
[CREATE NEW] Create a new memory bank file for a specific project. Use when you need to create brand new files.
๐ memory_bank_update
[MODIFY EXISTING] Update an existing memory bank file for a specific project. Automatically creates version history.
๐ memory_bank_merge
[COMPREHENSIVE VIEW] Merge all files from a project into a single formatted document. Excellent for understanding full project context.
๐ท๏ธ memory_bank_get_files_by_tags
[SMART FILTER] Find files in a project by their tags. Helpful when you know the type of content you're looking for but not exact filenames.
๐ memory_bank_get_project_stats
[PROJECT OVERVIEW] Get statistics for a project including file count and total size. Use to understand project scope and scale.
๐๏ธ Deletion Tools (Use with Caution)
๐๏ธ memory_bank_delete_file
[CAREFUL - DELETE FILE] Delete a specific file from a project. โ ๏ธ WARNING: This action is permanent and cannot be undone.
๐ฅ memory_bank_delete_project
[DANGER - DELETE PROJECT] Delete an entire project and all its files. โ ๏ธ EXTREME CAUTION: This action is permanent and cannot be undone.
๐ Version Control Tools
๐ memory_bank_version_history
[VERSION HISTORY] Get complete version history for a specific file. Shows all previous versions with metadata and timestamps.
๐ memory_bank_read_version
[READ SPECIFIC VERSION] Read the content of a specific file version. Use to view historical content of a particular version.
โช memory_bank_revert_file_to_version
[RESTORE PREVIOUS VERSION] Restore a file to a previous version. Creates a new version with the old content for safety.
๐ memory_bank_compare_versions
[COMPARE VERSIONS] Compare two versions of a file to see differences. Use to understand what changed between versions.
๐งน memory_bank_cleanup_old_versions
[MAINTENANCE] Clean up old file versions to save storage space. Keeps recent versions and removes older ones.
๐ Project Template Tools
๐ memory_bank_get_project_templates
[TEMPLATE DISCOVERY] List available project templates. Essential when starting new projects from predefined structures.
๐ memory_bank_create_project_from_template
[RAPID PROJECT CREATION] Create a new project using a template. Fastest way to start structured projects.
โก memory_bank_install_predefined_templates
[FIRST-TIME SETUP] Install built-in project templates. Run this ONCE when first using the system to add default templates.
MongoDB Setup Examples
Local MongoDB:
MONGODB_URL=mongodb://localhost:27017
MONGODB_DB=memory_bank
MongoDB Atlas (Cloud):
MONGODB_URL=mongodb+srv://username:password@cluster.mongodb.net
MONGODB_DB=memory_bank
Troubleshooting
"Failed to connect to MongoDB"
- Ensure MongoDB is running on the specified port
- Check network connectivity and firewall settings
- Verify connection string format and credentials
"MONGODB_URL environment variable is required"
- Set the required environment variables in your MCP client configuration
- Verify the environment variables are properly formatted
Tools not appearing in AI client
- Restart your AI client after configuration changes
- Check that the package is properly installed
- Review client logs for connection errors
License
MIT License - see the LICENSE file for details.
Links
- NPM Package: https://www.npmjs.com/package/memory-bank-mcp-mongodb
- GitHub Repository: https://github.com/Sato-Isolated/memory-mongo-bank-mcp
- Original Project: https://github.com/alioshr/memory-bank-mcp
A modern, MongoDB-powered memory bank solution for AI assistants and development workflows.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.