Memory MCP Server
Memory MCP 服务器
一个模型上下文协议(MCP)服务器,为AI代理提供持久记忆。记忆存储在本地SQLite数据库中(自动创建,零配置),并通过四十个工具以工具优先架构对外暴露。基于template-mcp-server生产脚手架构建(FastMCP + FastAPI、结构化日志、容器、OpenShift清单、CI)。
功能特性
跨四个领域的40个MCP工具:记忆、任务、时间(提醒/警报)、仪表板
七个记忆工具:存储、获取、搜索、列表、更新、删除、项目
七个待办工具:创建/搜索/列表/获取/更新/完成/删除,支持优先级和截止日期
八个看板工具:具有可配置列的面板;卡片的添加/移动/更新/删除
七个追踪器工具:状态追踪器,其条目汇总为进度指标
SQLite持久化,通过aiosqlite实现——单文件、调优的WAL基线、自动创建
全文关键词搜索——基于FTS5索引的整词、波特词干匹配,按相关性排序(最佳匹配优先)
记忆和待办事项上的标签和元数据
FastMCP + FastAPI,支持多种传输方式(HTTP、SSE、流式HTTP)
通过环境变量进行Pydantic配置
使用structlog进行结构化JSON日志记录
OAuth集成(默认禁用;参见
docs/authentication.md)容器就绪(Red Hat UBI基础镜像)并包含OpenShift清单
搜索与存储行为
搜索(memory_search、todo_search)在忽略大小写的全文索引上匹配整词标记:部分单词永远不会匹配(查询check不会匹配checklist),标点符号和运算符按字面处理,结果按bm25相关性排序——最相关优先,并列时最新优先。请注意,unicode61分词将整个CJK句子视为单个标记,因此整词匹配假定使用空格分隔的脚本。
数据库以WAL模式运行,synchronous=NORMAL:最近提交的事务可能在操作系统崩溃或断电时丢失(对于笔记/任务来说这是一个可接受的权衡——不适合作为记录系统)。稳态WAL大小受wal_autocheckpoint(约1000页≈4 MiB)限制;journal_size_limit(8 MiB)仅允许SQLite在检查点释放WAL文件后将其截断。维护(PRAGMA optimize + wal_checkpoint(TRUNCATE))在提醒轮询循环中每十次执行一次,可能短暂延迟一次;它受每个钩子超时和数据库繁忙超时的限制。
快速开始
git clone https://github.com/redhat-data-and-ai/memory-mcp-server
cd memory-mcp-server
make install # creates venv, installs deps + pre-commit hooks
make local # starts server on localhost:5001在另一个终端中验证:
curl http://localhost:5001/health手动设置(不使用Make):
# Create venv and install
uv venv && source .venv/bin/activate
uv pip install -e ".[dev]"
pre-commit install
# Configure and run
cp .env.example .env
memory-mcp-server
# Verify
curl http://localhost:5001/health工具
记忆
工具 | 用途 |
| 持久化新记忆;返回其id |
| 按id获取一条记忆 |
| 对内容进行整词关键词搜索,按相关性排序 |
| 按最新优先浏览记忆 |
| 部分更新记忆 |
| 按id删除记忆 |
待办事项
工具 | 用途 |
| 添加结构化任务 |
| 对标题/描述进行整词关键词搜索,按相关性排序 |
| 使用筛选器浏览待办事项 |
| 管理单个待办事项 |
看板
工具 | 用途 |
| 新面板;默认为backlog/todo/in_progress/done |
| 枚举或拆除面板 |
| 按列分组的完整面板状态 |
| 放置和重新排序工作 |
| 编辑或移除卡片 |
提醒与警报
工具 | 用途 |
| 安排未来警报(无/每小时/每天/每周重复) |
| 检查或编辑计划 |
| 最早到期优先 |
| 管理计划 |
| 查看和清除已触发的警报 |
后台调度器将到期提醒转换为服务器端警报;在会话开始时使用alert_list(acknowledged=false)查询它们。
管理
工具 | 用途 |
| 跨领域计数、未确认警报以及下一步到期事项 |
追踪器
工具 | 用途 |
| 管理追踪器 |
| 跟踪项目(not_started/in_progress/blocked/done) |
| 进度:总数/完成/百分比以及各状态计数 |
所有工具返回{status: "success" | "error", ...}字典,并且永远不会在工具边界抛出异常。
配置
变量 | 默认值 | 描述 |
|
| SQLite数据库文件(自动创建,包含父目录) |
|
| 后台调度器触发到期提醒的间隔 |
|
| 服务器绑定地址 |
|
| 服务器端口(1024-65535) |
|
| 传输协议( |
|
| HTTPS的SSL密钥/证书 |
|
| OAuth认证(参见 |
|
| 日志级别 |
* ENABLE_AUTH在.env.example中默认为False。始终将.env.example复制为.env以在禁用认证的情况下启动。
连接MCP客户端
将您的MCP客户端指向服务器端点:
{
"mcpServers": {
"memory": {
"url": "http://localhost:5001/mcp"
}
}
}参见examples/fastmcp_client.py,这是一个存储和搜索记忆的工作客户端。
开发
make lint # ruff + mypy
make test # pytest with coverage
make pre-commit # run all pre-commit hooks文档
许可证
Apache 2.0——衍生自 redhat-data-and-ai/template-mcp-server。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Persistent memory for AI agents. Search, store, and recall across sessions.
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
Universal memory for AI agents and tools. Save, organize and search context anywhere.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bsahane/memory-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server