Token导航 LogoToken导航

MCP Server · 搜索检索

Compaction MCP

一个管理LLM工作内存的服务器,用于在令牌预算内存储、检索和压缩上下文,确保对话不超出限制而不丢失有价值信息。

stdio官方级别未说明来源级核验工具 13
会话管理GoClaude

快速开始

作者 / 组织
lukaszraczylo
提供方
lukaszraczylo
运行时
Docker

工具数量

13

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

Compaction MCP 属于搜索检索类 MCP Server,公开资料标注 13 个工具,通过stdio 本地进程接入,适配 Claude,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

搜索检索

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

docker run -i ghcr.io/lukaszraczylo/compaction-mcp:latest

客户端配置示例

{
  "mcpServers": {
    "compaction-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "ghcr.io/lukaszraczylo/compaction-mcp:latest"
      ]
    }
  }
}

按公开安装命令拼出来的示例,字段名和参数以仓库 README 为准;带 YOUR_API_KEY 这类占位符的位置记得换成自己的值。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 13 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

压实机

在令牌预算内管理LLM工作内存的MCP服务器。存储、检索和压缩上下文,使对话保持在限制范围内,而不会丢失有价值的信息。

旨在通过处理短期会话上下文来补充长期记忆工具(如克劳德助记符)。

安装

二进制

下载自 发布 或从源代码构建:

go build -o compactor .

单一二进制,无外部依赖。约6 MiB。

码头工人

docker pull ghcr.io/lukaszraczylo/compaction-mcp:latest

基于无发行版构建的多平台镜像(linux/amd64、linux/arm64)。

用法

# Ephemeral (in-memory, default)
compactor

# With persistent state
compactor --state-dir ~/.local/share/compactor

# Explicit token budget
compactor --budget 80000

码头工人

容器将压缩器二进制文件作为其入口点运行。由于MCP服务器通过stdio进行通信,请使用 -i (交互式):

# Ephemeral
docker run -i ghcr.io/lukaszraczylo/compaction-mcp:latest

# With persistent state
docker run -i -v compactor-data:/data ghcr.io/lukaszraczylo/compaction-mcp:latest --state-dir /data

# With explicit budget
docker run -i ghcr.io/lukaszraczylo/compaction-mcp:latest --budget 80000

克劳德代码

.claude/settings.json (二进制):

{
  "mcpServers": {
    "compactor": {
      "command": "/path/to/compactor",
      "args": ["--state-dir", "/tmp/compactor-state"]
    }
  }
}

.claude/settings.json (Docker):

{
  "mcpServers": {
    "compactor": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-v", "compactor-data:/data", "ghcr.io/lukaszraczylo/compaction-mcp:latest", "--state-dir", "/data"]
    }
  }
}

游标/其他MCP客户端

同样的模式。服务器自动检测客户端并设置合理的预算:

  • 克劳德 客户端:8万个令牌(20万个上下文的40%)
  • 光标:6万个代币
  • 覆盖 --budget 旗帜

工具

工具说明
recall每次会议先打电话。 恢复以前的上下文--返回预算状态+按相关性列出的顶级项目
store使用可选摘要、标签和重要性存储内容(1-10)
queryBM25按文本和/或标签过滤进行排名搜索
status检查预算使用情况、项目计数、自动压缩设置
compact触发压缩到目标使用率
update添加/更新项目摘要(压缩后工作流)
pin / unpin保护物品免遭驱逐
forget删除特定项目
list分页项目列表(最新优先)
bulk_store在一次调用中存储多个项目(JSON数组)
export导出所有项目,可选择作为摘要导出
configure调整预算、自动压缩切换和阈值

压实工作原理

三相管道,在90%预算时自动触发或通过手动触发 compact:

  1. 总结推广 -用摘要替换内容(得分最低的项目优先)
  2. 去重 -合并单词重叠率>70%的项目(Jaccard相似性),保留得分较高的项目
  3. 驱逐 -删除得分最低的项目,直到达到目标使用率

压缩后,没有摘要的项目会被标记。然后,LLM可以通过以下方式生成摘要 update 用于未来的压实循环。

评分

每个项目都会得到一个结合四个信号的保留分数:

score = 0.4 * importance + 0.3 * recency + 0.2 * access - 0.1 * size_penalty

内容类型意识 自动调整评分:

类型检测分数乘数衰变半衰期
错误error:, panic:,堆叠痕迹1.5x30分钟
决定“已决定”、“继续”、“方法:”1.3x6小时
代码func, class,倒退围栏1.2倍6小时
散文默认值1.0x2小时
刀具输出$ 前缀,表字符0.7x15分钟

被钉住的物品永远不会被驱逐。

搜索

全文搜索使用BM25排名(k1=1.2,b=0.75),其中:

  • camelCase和snake_case令牌拆分
  • 标签匹配得分提高5倍
  • BM25相关性+项目保留率综合得分

自动标记

当没有提供标签时,项目会根据内容自动标记:

  • 内容类型(错误、代码、决策、工具输出)
  • 文件扩展名(.go、.ts、.py等)
  • 基础设施关键字(kubernetes、docker、cilium、postgres等)
  • URL存在(标记为“引用”)

坚持

随着 --state-dir,状态每30秒(脏时)和优雅关机时保存为原子JSON。没有它,每个会话的存储都是短暂的。

CLI标志

标志默认值描述
--budget100000令牌预算(覆盖自动检测)
--state-dir""持久状态目录(空=临时)

使其无缝衔接

压缩器是LLM必须积极使用的工具——它不会自动拦截上下文。为了使使用习惯化,请将此添加到您的 CLAUDE.md:

## Working Memory (compactor MCP)
- At session start, ALWAYS call `recall` to restore previous context
- After making decisions, reading key files, or encountering errors: call `store` with a summary
- Before re-reading a file: call `query` to check if it's already stored
- When `status` shows >80% usage: call `compact`, then `update` items it flags
- Pin architecture decisions and user preferences with `pin`

服务器还通过MCP握手发送指导LLM的指令,但CLAUDE.md规则更强,因为它们被视为硬要求。

三层如何协同工作

  1. MCP服务器说明 --在连接时注入,告诉LLM工作流程
  2. CLAUDE.md规则 --跨会话持久化,覆盖默认行为
  3. recall 工具 --为LLM提供了一个恢复上下文的单一操作,将12个工具的摩擦减少到1个入口点

坚持不懈(--state-dir),上下文在会话中存在。LLM电话 recall → 取回其存储的决策、错误、代码片段→ 继续它停止的地方。

建筑

main.go       - Entry point, CLI flags, MCP server setup, persistence wiring
store.go      - Core store: items, scoring, compaction, BM25 integration
tools.go      - MCP tool definitions and handlers
index.go      - BM25 inverted index with tag boosting
content.go    - Content type detection and auto-tagging
persist.go    - Atomic JSON persistence with background save
tokens.go     - Token count estimation (~4 chars/token)

许可证

私人。

工具与能力

工具数量

13

资源数量

0

提示词数量

0

能力标签

LLM内存管理Go本地部署上下文压缩会话管理自动标记BM25搜索

支持客户端

Claude

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

查资料带出处

把网页、论文和文档的检索结果连同链接一起带回对话。

站内知识检索

在自己的文档库里做语义搜索,比关键词更贴题。

事实核对

交叉多个来源确认一条信息,减少模型凭记忆作答。

选择建议

值得选的地方

  • 工具数量 13 个,一次接入能覆盖的操作比单点工具更全。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在搜索检索场景里让模型直接调用外部能力的人。
  • 已经在用 Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Compaction MCP

MCP World · 本页

13stdio有1 个2026-05-17
Baidu Netdisk

MCP World

未标注未说明未标注1 个2026-05-17
Sequentialthinking

MCP.so

1SSE有2 个2026-05-17
Brave Search 433812ff

MCP World

2未说明未标注1 个2026-05-17
mindsdb (430e18)

MCP World

0未说明有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Compaction MCP 怎么安装?

公开资料给出的安装命令是 docker run -i ghcr.io/lukaszraczylo/compaction-mcp:latest,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Compaction MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

Compaction MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Compaction MCP 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Compaction MCP 支持哪些客户端?

公开资料标注支持 Claude;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP