Content
# MCP Server with Mem0 for Managing Coding Preferences
This demonstrates a structured approach for using an [MCP](https://modelcontextprotocol.io/introduction) server with [mem0](https://mem0.ai) to manage coding preferences efficiently. The server can be used with Cursor and provides essential tools for storing, retrieving, and searching coding preferences.
## Installation
1. Clone this repository
2. Initialize the `uv` environment:
```bash
uv venv
```
3. Activate the virtual environment:
```bash
source .venv/bin/activate
```
4. Install the dependencies using `uv`:
```bash
# Install in editable mode from pyproject.toml
uv pip install -e .
```
5. Update `.env` file in the root directory with your mem0 API key:
```bash
MEM0_API_KEY=your_api_key_here
```
## Usage
1. Start the MCP server:
```bash
uv run main.py
```
2. In Cursor, connect to the SSE endpoint, follow this [doc](https://docs.cursor.com/context/model-context-protocol) for reference:
```
http://0.0.0.0:8080/sse
```
3. Open the Composer in Cursor and switch to `Agent` mode.
## Demo with Cursor
https://github.com/user-attachments/assets/56670550-fb11-4850-9905-692d3496231c
## Features
The server provides three main tools for managing code preferences:
1. `add_coding_preference`: Store code snippets, implementation details, and coding patterns with comprehensive context including:
- Complete code with dependencies
- Language/framework versions
- Setup instructions
- Documentation and comments
- Example usage
- Best practices
2. `get_all_coding_preferences`: Retrieve all stored coding preferences to analyze patterns, review implementations, and ensure no relevant information is missed.
3. `search_coding_preferences`: Semantically search through stored coding preferences to find relevant:
- Code implementations
- Programming solutions
- Best practices
- Setup guides
- Technical documentation
## Why?
This implementation allows for a persistent coding preferences system that can be accessed via MCP. The SSE-based server can run as a process that agents connect to, use, and disconnect from whenever needed. This pattern fits well with "cloud-native" use cases where the server and clients can be decoupled processes on different nodes.
### Server
By default, the server runs on 0.0.0.0:8080 but is configurable with command line arguments like:
```
uv run main.py --host <your host> --port <your port>
```
The server exposes an SSE endpoint at `/sse` that MCP clients can connect to for accessing the coding preferences management tools.
Connection Info
You Might Also Like
MarkItDown MCP
MarkItDown-MCP is a lightweight server for converting various URIs to Markdown.
Context 7
Context7 MCP provides up-to-date code documentation for any prompt.

Continue
Continue is an open-source project for seamless server management.
wenyan-mcp
Wenyan MCP Server automates Markdown publishing to WeChat drafts with...
Awseom LLM Apps
Collection of LLM Applications
FLUJO
FLUJO is an early preview tool for MCP, offering installation guidance and support.