/ 目錄 / 演練場 / Memory Bank MCP
● 社群 alioshr 🔑 需要你的金鑰

Memory Bank MCP

作者 alioshr · alioshr/memory-bank-mcp

集中式記憶庫伺服器—將Cline/Cursor/Claude記憶檔案保存在一個資料夾中,每個專案的範圍,避免路徑遍歷。

memory-bank-mcp將Cline Memory Bank模式轉換為獨立的MCP伺服器。將其指向根目錄,每個專案都會獲得自己的記憶庫資料夾,代理可以透過五個簡單的工具進行讀取、寫入、更新和列出。為了讓多個用戶端( Claude Desktop、Cursor、Windsurf )共用相同的標準記憶體,您無需為每個IDE建立單獨的副本。

為什麼要用

核心特性

即時演示

實際使用效果

memory-bank-mcp.replay ▶ 就緒
0/0

安裝

選擇你的客戶端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "memory-bank-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp"
      ],
      "env": {
        "MEMORY_BANK_ROOT": "/path/to/memory/banks"
      }
    }
  }
}

開啟 Claude Desktop → Settings → Developer → Edit Config。儲存後重啟應用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "memory-bank-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp"
      ],
      "env": {
        "MEMORY_BANK_ROOT": "/path/to/memory/banks"
      }
    }
  }
}

Cursor 使用與 Claude Desktop 相同的 mcpServers 格式。專案級設定優先於全域。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "memory-bank-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp"
      ],
      "env": {
        "MEMORY_BANK_ROOT": "/path/to/memory/banks"
      }
    }
  }
}

點擊 Cline 側欄中的 MCP Servers 圖示,然後選 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "memory-bank-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp"
      ],
      "env": {
        "MEMORY_BANK_ROOT": "/path/to/memory/banks"
      }
    }
  }
}

格式與 Claude Desktop 相同。重啟 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "memory-bank-mcp",
      "command": "npx",
      "args": [
        "-y",
        "@allpepper/memory-bank-mcp"
      ]
    }
  ]
}

Continue 使用伺服器物件陣列,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "memory-bank-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@allpepper/memory-bank-mcp"
        ]
      }
    }
  }
}

加入 context_servers。Zed 儲存後熱重載。

claude mcp add memory-bank-mcp -- npx -y @allpepper/memory-bank-mcp

一行命令搞定。用 claude mcp list 驗證,claude mcp remove 移除。

使用場景

實戰用法: Memory Bank MCP

在Claude Desktop、Cursor和Windsurf上共用一個記憶庫

👤 在IDE之間切換並且想要單一專案知識來源的開發人員 ⏱ ~15 min beginner

何時使用: 您使用多個AI用戶端,並繼續複製有關專案的相同備註。

前置條件
  • 節點18 + — nvm install 18
  • 存放記憶庫的目錄 — mkdir -p ~/ai-memory
步驟
  1. 在每個用戶端的MCP配置中設置MEMORY_BANK_ROOT
    將每個MCP用戶端指向MEMORY_BANK_ROOT = ~/ai-memory並安裝@ allpepper/memory-bank-mcp。✓ 已複製
    → memory_bank_*工具出現在每個客戶端
  2. 建立第一個專案銀行
    memory_bank_write project = acme-api file = architecture.md —總結此儲存庫的服務界限。✓ 已複製
    → 檔案出現在~/ai-memory/acme-api/architecture.md
  3. 從其他用戶端讀取
    在遊標中: memory_bank_read project = acme-api file = architecture.md✓ 已複製
    → 傳回相同內容;來自任一客戶端的編輯即時顯示

結果: 每個IDE自動參考的共用、可版本化的記憶體資料夾。

注意事項
  • 變更MEMORY_BANK_ROOT後忘記重新啟動MCP用戶端 — 關閉並重新開啟用戶端; env vars僅在啟動時讀取
搭配使用: filesystem · github

為新的客服人員提供有關長期執行專案的即時情境資訊

👤 在同一代碼庫上執行多個代理的團隊 ⏱ ~10 min beginner

何時使用: 新的即時對話需要與上次即時對話相同的背景(慣例、過去的決定、已知錯誤)。

前置條件
  • 此專案的現有記憶體庫 — 在正常工作期間使用MEMORY_BANK_WRITE填充
步驟
  1. 列出專案銀行已擁有的檔案
    呼叫project = acme-api的list_project_files。✓ 已複製
    → architecture.md、decisions.md、open-questions.md等。
  2. 載入相關子集
    在開始任務之前,請先閱讀decisions.md和open-questions.md。✓ 已複製
    → 客服人員參考先前的決定,而不是重新詢問

結果: 新課程從溫暖而非寒冷開始;您每次都不再繳納申請流程稅。

注意事項
  • 讓銀行成長為一個巨大的檔案 — 依疑慮拆分:決策、架構、開放式問題、Runbook ,讓客服人員只載入所需內容
搭配使用: codebase-memory

像任何其他專案文件一樣,在git中版本化您的代理記憶體

👤 想要在機器和貢獻者之間存活記憶的團隊 ⏱ ~20 min intermediate

何時使用: 您希望審查記憶檔案,並與隊友分享。

前置條件
  • 代管銀行的Git repo — git初始化在MEMORY_BANK_ROOT或專案子資料夾中
步驟
  1. 將根目錄設為回購
    將~/ai-memory轉換為git repo ;為任何敏感內容新增.gitignore。✓ 已複製
    → 標準git回購結構
  2. 讓客服人員在工作階段更新記憶
    修正錯誤後,請呼叫memory_bank_update ,將根本原因記錄在bugs.md中。✓ 已複製
    → 新的提交就緒差異
  3. 承諾並推送
    查看內存差異、提交、推送。✓ 已複製
    → 團隊成員拉動,他們的客服人員立即分享情境

結果: 特務記憶變成一流的專案神器。

注意事項
  • 提交客服人員記錄下的祕密 — 在推送記憶體儲存庫之前,新增預先提交掃描程式(例如gitleaks )
搭配使用: github · git

組合

與其他 MCP 搭配,撬動十倍槓桿

memory-bank-mcp + filesystem

記憶體庫會保留代理備註;檔案系統會讀取它們所指代的代碼

從記憶體庫讀取decisions.md ,然後開啟它在src/中引用的檔案。✓ 已複製
memory-bank-mcp + github

公關合併後,將結果記錄在專案的記憶庫中

匯總合併的PR # 412 ,並更新memory-bank/acme-api/decisions.md。✓ 已複製
memory-bank-mcp + codebase-memory

兩個互補的記憶層—代碼圖記憶+人類可讀的筆記

將codebase-memory符號圖與memory-bank/architecture.md中的敘述結合起來。✓ 已複製

工具

此 MCP 暴露的能力

工具輸入參數何時呼叫成本
memory_bank_read project: str, file: str 在規劃之前提取現有記憶體 0
memory_bank_write project: str, file: str, content: str 建立全新的記憶檔案 0
memory_bank_update project: str, file: str, content: str 修改現有的記憶體檔案(如果遺失則失敗) 0
list_projects (none) 探索哪些專案已有記憶庫 0
list_project_files project: str 在閱讀之前查看可用的記憶體檔案 0

成本與限制

運行它的成本

API 配額
無外部API
每次呼叫 Token 數
取決於檔案大小;典型的NOTE 200–2000代幣
費用
免費—在本地運行
提示
保持記憶體檔案簡短且主題範圍;載入50KB檔案會在每次呼叫時浪費上下文。

安全

權限、密鑰、影響範圍

憑證儲存: 沒有憑證。MEMORY_BANK_ROOT路徑是唯一的配置。
資料出站: 沒有網路呼叫—讀取和寫入會停留在MEMORY_BANK_root下的本機檔案系統上。

故障排查

常見錯誤與修復

錯誤: MEMORY_BANK_ROOT未設定

在MCP用戶端設定中設定env var ,然後重新啟動用戶端。

驗證: echo $MEMORY_BANK_ROOT
讀取檔案時的ENOENT

請先呼叫LIST_PROJECT_FILES —檔案名稱必須正確存在。

驗證: ls $MEMORY_BANK_ROOT/<project>/
EACCES on write

確保MCP過程具有MEMORY_BANK_ROOT的寫入權限。

驗證: touch $MEMORY_BANK_ROOT/.probe && rm $MEMORY_BANK_ROOT/.probe

替代方案

Memory Bank MCP 對比其他方案

替代方案何時用它替代權衡
memory (official)你想要一個知識圖表,而不是基於文件的筆記圖形是結構化的,但較少人工編輯
memory-service您希望語義搜尋勝過記憶設置較重;需要嵌入
Cline Memory Bank (inline)您只使用Cline ,不需要跨IDE分享鎖定到Cline

更多

資源

📖 閱讀 GitHub 上的官方 README

🐙 查看未解決的 issue

🔍 瀏覽全部 400+ MCP 伺服器和 Skills