Introduction to Memory Bank

Today we'll learn about Memory Bank - a powerful approach to maintaining context with AI coding assistants like Cursor.

What You'll Learn
  • How to set up a Memory Bank for your projects
  • The structure and purpose of each core file
  • How to maintain and update your Memory Bank
  • How to build a real project using Memory Bank
What is Memory Bank?

Memory Bank is a structured documentation system that allows Cursor to maintain context across sessions. It transforms Cursor from a stateless assistant into a persistent development partner that can effectively "remember" your project details over time.

When working with AI coding, you've likely encountered this common limitation: the AI has no memory of your previous conversations once you start a new session. This means:

  • You need to re-explain your project repeatedly
  • The AI can't recall decisions you made together
  • You lose continuity in complex projects
  • Each session starts from scratch
How Memory Bank Solves This Problem

Memory Bank addresses this limitation through a systematic approach to documentation:

  • Structured Documentation: A hierarchy of markdown files that build a complete picture of your project
  • Context Preservation: Key information is stored in a format that's easy for both you and Cursor to reference
  • Continuous Updates: Documentation evolves as your project progresses
Memory Bank is Not Magic

It's important to understand that Memory Bank isn't a magical feature that gives Cursor perfect memory. It's a methodical approach to documentation that you maintain.

In the next stage, we'll dive deeper into the Memory Bank concept, exploring the file hierarchy and how the different components work together to maintain context.

Setting Up Memory Bank

To set up Memory Bank we will use Memory Bank MCP Server. It's a simple way to create a Memory Bank for your projects automatically based on provided context.

First of all, we need to install uv and uvx tools to run Memory Bank MCP Server.

Install uv and uvx tool:
Install uv and uvx tool if it's not installed yet

Then, we need to configure Memory Bank MCP Server.

Create mcp.json config with Memory Bank MCP Server:
1. Create .cursor folder in project if it doesn't exist. 2. Create mcp.json file in .cursor folder with the following content: { "mcpServers": { "mcp-memory-bank": { "command": "uvx", "args": [ "--from", "git+https://github.com/ipospelov/mcp-memory-bank", "mcp_memory_bank" ] } } } If mcp.json file is already created, just add "mcp-memory-bank" to the "mcpServers" array.

You will See a pop-up menu asking to enable a new MCP server

Memory Bank MCP Server allow

Now, we need to enable Memory Bank MCP Server in Cursor settings. Go to Cursor settings:

  • For Mac: Cursor → Settings → Cursor Settings → MCP Servers or CMD⌘ + Shift + P → Cursor Settings → MCP Servers
  • For Windows: Settings → Cursor Settings → MCP Servers or CTRL + Shift + P → Cursor Settings → MCP Servers

After that, you should see the green checkmark on the server name:

Memory Bank MCP Server Enabled

Alternative ways to setup Memory Bank MCP Server

Skip this section if you already have Memory Bank MCP Server configured with uvx.

Setup with Docker
Ask Cursor to setup Memory Bank MCP Server with Docker:
1. Create .cursor folder in project if it doesn't exist. 2. Create mcp.json file in .cursor folder with the following content: { "mcpServers": { "memory-bank": { "command": "docker", "args": [ "run", "-i", "--rm", "19283744/mcp-memory-bank:latest" ] } } } If mcp.json file is already created, just add "mcp-memory-bank" to the "mcpServers" array.
Setup with Smithery

MCP Server deployment is available on Smithery platform.

Ask Cursor to setup Memory Bank MCP Server with Smithery:
1. Create .cursor folder in project if it doesn't exist. 2. Create mcp.json file in .cursor folder with the following content: { "mcpServers": { "memory-bank": { "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "@ipospelov/mcp-memory-bank", "--key", "your_smithery_key" ] } } } If mcp.json file is already created, just add "mcp-memory-bank" to the "mcpServers" array.
Don't forget to add your Smithery API key instead of "your_smithery_key" to the mcp.json file.
What's next?

Outcome of this stage:

.cursor/mcp.json is created
mcp.json file has Memory Bank MCP Server configuration
Memory Bank MCP Server is enabled in Cursor settings

Next, we will create and configure Memory Bank files.