Data as of

Memory Bank MCP Server for Windsurf: Setup & Config

Windsurf: Manage project memory files through an MCP assistant using a shared storage root.

What you can do with Memory Bank in Windsurf

Choose it for straightforward, project-isolated memory files shared with an MCP coding assistant.

  • Manage memory documents for several projects from one server.
  • Create or revise memory-bank documents through an MCP client.

Before you start: Memory Bank in Windsurf

  • Node.js and npx
  • An MCP-compatible client
  • A configured memory-bank storage directory

This follows the README's Claude configuration. Set the storage root to your directory. Docker is an alternative and requires a host-volume mapping. Review any client auto-approval settings separately from the server launch.

Memory Bank Windsurf configuration

  1. Choose Windsurf configuration scope

    For Memory Bank MCP Server, open macOS/Linux: ~/.codeium/windsurf/mcp_config.json Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json. Merge into mcpServers; remote endpoints use serverUrl.

  2. Add Memory Bank MCP Server to Windsurf

    Use the memory-bank-mcp entry below in mcpServers. Keep Memory Bank MCP Server's documented stdio connection fields and your other Windsurf entries.

  3. Check Memory Bank MCP Server in Windsurf

    Memory Bank MCP Server: Refresh MCP in Windsurf settings and inspect Cascade’s tools.

Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json

Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json

JSON
{
  "mcpServers": {
    "memory-bank-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp@latest"
      ],
      "env": {
        "MEMORY_BANK_ROOT": "<directory that will hold project memory banks>"
      }
    }
  }
}

Memory Bank tools available to Windsurf

Memory Bank's stored tool list documents 5 tools; compare it with Windsurf's connected tool list, because the stored list is not a live check.

memory_bank_read

After refreshing Memory Bank in Windsurf settings, check Cascade's tool list for memory_bank_read.

Read a file from a selected project's memory bank.

memory_bank_write

After refreshing Memory Bank in Windsurf settings, check Cascade's tool list for memory_bank_write.

Create a new memory document within a project.

memory_bank_update

After refreshing Memory Bank in Windsurf settings, check Cascade's tool list for memory_bank_update.

list_projects

After refreshing Memory Bank in Windsurf settings, check Cascade's tool list for list_projects.

list_project_files

After refreshing Memory Bank in Windsurf settings, check Cascade's tool list for list_project_files.

Enumerate the memory files belonging to one project.

Memory Bank: full stored tool descriptions

Troubleshooting Memory Bank in Windsurf

  • Check npx @allpepper/memory-bank-mcp@latest (Node.js/npm) on the machine running Windsurf's MCP integration for Memory Bank MCP Server; refresh MCP and inspect Cascade's tools.
  • Check MEMORY_BANK_ROOT for Memory Bank MCP Server; do not bypass a Windsurf permission error with a broad administrator token.
  • Memory Bank MCP Server uses stdio here: Windsurf must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Requires choosing and maintaining a storage directory.
  • Known limitation: The documented interface does not include semantic-search tools.
  • Known limitation: Sample client settings can auto-approve writes and should be reviewed.
  • General Windsurf troubleshooting lives in the /clients/windsurf guide.

Memory Bank MCP Server — details. Windsurf guide

Frequently asked questions

Windsurf reads Memory Bank MCP Server under mcpServers in ~/.codeium/windsurf/mcp_config.json on macOS/Linux; Windows uses %USERPROFILE%\.codeium\windsurf\mcp_config.json.

Windsurf's memory-bank-mcp example uses stdio.

Memory Bank MCP Server's Windsurf configuration invokes npx @allpepper/memory-bank-mcp@latest (Node.js/npm).

Windsurf's Memory Bank MCP Server example references MEMORY_BANK_ROOT. Check these names if startup or authentication fails; the example alone does not distinguish required from optional values.

Memory Bank MCP Server's stored list contains 5 tools, including memory_bank_read, memory_bank_write, memory_bank_update. Compare those names with Windsurf's connected tool list; the stored list is not a live check.

MEMORY_BANK_ROOT selects the directory containing the project memory banks.

Yes. It documents building a local image and mounting a host memory directory into the container.