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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5128d80c196578bff6d68441cabac93d8e477605656e40f65e59ed94e133a47f
|
|
| MD5 |
0d8998c42114319eba07c823ee0cf6f3
|
|
| BLAKE2b-256 |
1873fcfd3dc654673b5241a508c4a120cc3839c459b8dbb671e444eb6b378d14
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52109a2f4199ece5db7e62ecdb037c21a0694fc801a24e8d753f71a740ae8d46
|
|
| MD5 |
f3b8bb52009060608c14ddf358ebcede
|
|
| BLAKE2b-256 |
e12f73eb5c5b21af386d0d1304dcebe8fc8224f91ab9f41ef4f77a628fa8d597
|