Skip to main content

A memory management server using FastMCP

Reason this release was yanked:

Forget to remove a deprecated import

Project description

memory_plus

pretty image

License: MIT visitors PyPI version

Memory-Plus

A lightweight, local Retrieval-Augmented Generation (RAG) memory store for MCP agents. Memory-Plus lets your agent record, retrieve, update, and visualize persistent "memories"—notes, ideas, and session context—across runs.

🏆 First Place at the Infosys Cambridge AI Centre Hackathon!

Key Features

  • Record Memories: Save user data, ideas, and important context.
  • Retrieve Memories: Search by keywords or topics over past entries.
  • Recent Memories: Fetch the last N items quickly.
  • Update Memories: Append or modify existing entries seamlessly.
  • Visualize Memories: Interactive graph clusters revealing relationships.
  • File Import (since v0.1.2): Ingest documents directly into memory.
  • Delete Memories (since v0.1.2): Remove unwanted entries.

alt text

Installation

1. Prerequisites

  • Google API Key: Obtain from Google AI Studio and set as GOOGLE_API_KEY in your environment:

    # macOS/Linux
    export GOOGLE_API_KEY="<YOUR_API_KEY>"
    
    # Windows (PowerShell)
    setx GOOGLE_API_KEY "<YOUR_API_KEY>"
    
  • UV Runtime: Required to serve the MCP plugin.

    pip install uv
    

    Or install via shell scripts:

    # macOS/Linux
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Windows (PowerShell)
    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    

VS Code One-Click Setup

Click the badge below to automatically install and configure Memory-Plus in VS Code (Insiders):

One Click Install in VS Code

This will add the following to your settings.json:

{
  "mcpServers": {
    ..., // your other MCP servers
    "memory-plus": {
      "command": "uvx",
      "args": ["memory-plus"]
    }
  }
}

For cursor, go to file -> Preferences -> Cursor Settings -> MCP and add the following:

{
  "mcpServers": {
    ..., // your other MCP servers
    "memory-plus": {
      "command": "uvx",
      "args": ["memory-plus"]
    }
  }
}

For Cline add the following to your cline_mcp_settings.json:

{
  "mcpServers": {
    ..., // your other MCP servers
    "memory-plus": {
      "disabled": false,
      "timeout": 300,
      "command": "uvx",
      "args": [
        "memory-plus"
      ],
      "env": {
        "GOOGLE_API_KEY": "${{ secrets.GOOGLE_API_KEY }}"
      },
      "transportType": "stdio"
    }
  }
}

remember to add the GOOGLE_API_KEY to your secrets / environment variables.

For other IDEs it should be mostly similar to the above.

Local Testing and Development

Using MCP Inspector, you can test the memory-plus server locally.

git clone https://github.com/Yuchen20/Memory-Plus.git
cd Memory-Plus
npx @modelcontextprotocol/inspector fastmcp run run .\\memory_plus\\mcp.py

Or If you prefer using this MCP in an actual Chat Session. There is a template chatbot in agent.py.

# Clone the repository
git clone https://github.com/Yuchen20/Memory-Plus.git
cd Memory-Plus

# Install dependencies
pip install uv
uv pip install fast-agent-mcp
uv run fast-agent setup        

setup the fastagent.config.yaml and fastagent.secrets.yaml with your own API keys.

# Run the agent
uv run agent_memory.py

RoadMap

  • Memory Update
  • Improved prompt engineering for memory recording
  • Better Visualization of Memory Graph
  • File Import
  • Remote backup!
  • Web UI for Memory Management

If you have any feature requests, please feel free to add them by adding a new issue or by adding a new entry in the Feature Request

License

This project is licensed under the MIT License. See LICENSE 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

memory_plus-0.1.3.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

memory_plus-0.1.3-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file memory_plus-0.1.3.tar.gz.

File metadata

  • Download URL: memory_plus-0.1.3.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for memory_plus-0.1.3.tar.gz
Algorithm Hash digest
SHA256 d558ff96ec5ac3bf97a610a3ecd4f4260185b211f7325564e2f070af17a2a7d8
MD5 9599fad38179a5b0c718b22235716be4
BLAKE2b-256 8c7b3e58bfc6a36ed68367e1965363d922b82266d36ae7711ae6906043c70525

See more details on using hashes here.

File details

Details for the file memory_plus-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: memory_plus-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for memory_plus-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 45dd42e4babad0992c339fb0f716b84d225bd155b460f9db9f69b4634a1b9cb1
MD5 fe054f4518362ceb251dd1939a13fd01
BLAKE2b-256 4aff1ea35bf9988f93963bfdaf3a28251ad679b1bba1882f6dc8bb2f45a82856

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