Skip to main content

MCP-server that implements memory stored in MongoDB

Project description

MCP Memory Graph Server

PyPI version Python Version License: MIT

Overview

The Memory Graph Server provides a persistent storage layer for knowledge graphs, allowing for:

  • Storage of entities and their properties
  • Management of relationships between entities
  • Querying and traversing the graph structure
  • Real-time updates and modifications

Features

  • MongoDB-based persistent storage
  • Graph operations (create, read, update, delete)
  • Entity management
  • Relationship handling
  • Query capabilities
  • Real-time updates

Configuration

Setting up a Free MongoDB Atlas Cluster (Quick Start)

If you do not already have a MongoDB instance running, you can spin up a free cloud cluster on MongoDB Atlas (https://cloud.mongodb.com) in just a few minutes:

  1. Register / Sign in
    Open https://cloud.mongodb.com and create an account. You can register with e‑mail or sign in via Google or GitHub.

  2. Create a Project & Cluster
    Create a new Project (e.g. mcp-memory) and choose Create → Deployment → Create a cluster. Select the Free Shared (M0) tier, pick the provider/region closest to you, give the cluster a name and click Create. Provisioning takes ~2‑3 minutes.

  3. Create a Database User
    Navigate to Database Access → Add New Database User. – Choose Password authentication. – Enter a Username (e.g. mcp_user) and a strong Password (or autogenerate one). – For quick tests, give the user Read and write to any database privileges (you can tighten this later). – Click Add User and store the credentials somewhere safe.

  4. Allow Your IP Address
    Go to Network Access → Add IP Address and whitelist the public IP address from which the server will connect. You can click Add Current IP Address or specify it manually.

  5. Get the Connection String (URI)
    On the Database Deployments screen click Connect → Drivers, choose Python and copy the URI, which looks like:

    mongodb+srv://<username>:<password>@<cluster>.mongodb.net/?retryWrites=true&w=majority
    

    Replace <username>/<password> with the credentials from step 3 and optionally append /<database> to select the default database, e.g. /mcp_memory.

  6. Configure the Memory Graph Server
    Export the connection string via the environment variable expected by the server:

    export MCP_MONGO_MEMORY_CONNECTION="mongodb+srv://mcp_user:<password>@cluster0.mongodb.net/mcp_memory?retryWrites=true&w=majority"
    

    Keep the quotes around the URI so that special characters are preserved, and never commit this string to version control.

Now you can launch the server as shown in the MCP Server Configuration section.

Using Environment Variables Directly

Alternatively, you can set the required environment variable directly:

MCP_MONGO_MEMORY_CONNECTION=mongodb://username:password@host:port/database

Installation and Setup

Prerequisites

  1. Install uvx (if not already installed):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Set up MongoDB connection (see Configuration section below)

MCP Server Configuration

Add the snippet below to your mcp configuration:

{
  "mcpServers": {
    "Memory": {
      "command": "/path/to/local/bin/uvx",
      "args": [
        "mongo-memory"
      ],
      "env": {
        "MCP_MONGO_MEMORY_CONNECTION": "mongodb://username:password@host:port/database"
      }
    }
  }
}

Replace /path/to/local/bin/ with your actual path to uvx. Replace the connection string with your actual MongoDB credentials.

Available Operations

The server provides the following operations for AI agents:

Entity Management:

  • create_entities - Create new entities with unique names
  • get_entity - Retrieve a single entity by name
  • update_entity - Update existing entity data
  • delete_entity - Remove an entity
  • find_entities - Search entities with query criteria

Relationship Management:

  • create_relationship - Create relationships between entities
  • get_relationships - Retrieve relationships with filtering
  • delete_relationship - Remove specific relationships

Memory Structure:

  • get_memory_structure - Get current memory organization
  • get_usage_guide - Get comprehensive usage examples and best practices

For detailed usage examples, patterns, and best practices, AI agents should call get_usage_guide().

Development

See DEVELOPMENT.md for development setup and guidelines.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mongo_memory-0.3.1.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mongo_memory-0.3.1-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file mongo_memory-0.3.1.tar.gz.

File metadata

  • Download URL: mongo_memory-0.3.1.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for mongo_memory-0.3.1.tar.gz
Algorithm Hash digest
SHA256 44aa08f788e3e3ca9e9e7e50d3b6932fa2175f0a98921f5cc7a4426776eee867
MD5 b0f32a448299a6446a8e6ddd10dcd97f
BLAKE2b-256 42d25f4ca43b15c44446d9fac10dfcdcf1279b2ccb01b773148328c5fabc6032

See more details on using hashes here.

File details

Details for the file mongo_memory-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: mongo_memory-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for mongo_memory-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b2f13a4021c4f672cd1fa591976dffe12f55e4b8e80fa2107cc3f54173494796
MD5 7493807f403b772bc1bca58e899f1668
BLAKE2b-256 d2b07b0c4e5e848d4ad4b679e622a2588581535c2bb25dd0ed768fded940a26f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page