Skip to main content

An MCP server implementing memory solution for data-rich applications

Project description

MCP Memory

A Model Context Protocol (MCP) server implementing memory solutions for data-rich applications with efficient knowledge graph capabilities.

Overview

This MCP server implements a memory solution for data-rich applications that involve searching information from many sources including uploaded files. It uses HippoRAG internally to manage memory through an efficient knowledge graph.

Features

  • Session-based Memory: Create and manage memory for specific chat sessions
  • Efficient Knowledge Graph: Uses HippoRAG for advanced memory management
  • Multiple Transport Support: Works with both stdio and SSE transports
  • Search Capabilities: Search information from various sources including uploaded files

Installation

Install from PyPI:

pip install mcp-mem

Or install from source:

git clone https://github.com/ddkang1/mcp-mem.git
cd mcp-mem
pip install -e .

Usage

You can run the MCP server directly:

mcp-mem

By default, it uses stdio transport. To use SSE transport:

mcp-mem --sse

You can also specify host and port for SSE transport:

mcp-mem --sse --host 127.0.0.1 --port 3001

Configuration

To use this tool with Claude in Windsurf, add the following configuration to your MCP config file:

"memory": {
    "command": "/path/to/mcp-mem",
    "args": [],
    "type": "stdio",
    "pollingInterval": 30000,
    "startupTimeout": 30000,
    "restartOnFailure": true
}

The command field should point to the directory where you installed the python package using pip.

Available Tools

The MCP server provides the following tools:

  • create_memory: Create a new memory for a given chat session
  • store_memory: Add memory to a specific session
  • retrieve_memory: Retrieve memory from a specific session

Development

Installation for Development

git clone https://github.com/ddkang1/mcp-mem.git
cd mcp-mem
pip install -e ".[dev]"

Running Tests

pytest

Code Style

This project uses Black for formatting, isort for import sorting, and flake8 for linting:

black src tests
isort src tests
flake8 src tests

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

mcp_mem-0.1.0.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

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

mcp_mem-0.1.0-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file mcp_mem-0.1.0.tar.gz.

File metadata

  • Download URL: mcp_mem-0.1.0.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for mcp_mem-0.1.0.tar.gz
Algorithm Hash digest
SHA256 5128d80c196578bff6d68441cabac93d8e477605656e40f65e59ed94e133a47f
MD5 0d8998c42114319eba07c823ee0cf6f3
BLAKE2b-256 1873fcfd3dc654673b5241a508c4a120cc3839c459b8dbb671e444eb6b378d14

See more details on using hashes here.

File details

Details for the file mcp_mem-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mcp_mem-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for mcp_mem-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 52109a2f4199ece5db7e62ecdb037c21a0694fc801a24e8d753f71a740ae8d46
MD5 f3b8bb52009060608c14ddf358ebcede
BLAKE2b-256 e12f73eb5c5b21af386d0d1304dcebe8fc8224f91ab9f41ef4f77a628fa8d597

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