Token导航 LogoToken导航

MCP Server · 开发工具

diffchunk (Peteretelej)

diffchunk是一个MCP服务器,使LLM能够高效导航大型差异文件,通过模式导航直接跳转到相关更改。

未说明官方级别未说明来源级核验工具 4
PythonCline代码审查Cursor

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
peteretelej
提供方
peteretelej

工具数量

4

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

8

仓库热度

收录来源

2 个

MCP World

选型结论

diffchunk (Peteretelej) 属于开发工具类 MCP Server,公开资料标注 4 个工具,通过传输方式未标注接入,适配 Cursor、Cline,没有现成的安装命令;接入前要先准备 访问 Token。

分类

开发工具

传输方式

未说明

认证方式

访问 Token

部署方式

仅本地运行

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

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

  4. 4

    验证是否可用

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

接入前确认

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

公开资料仍需确认:安装命令

详细介绍

diffchunk

MCP服务器,使LLM能够高效地导航大型差异文件。LLM可以使用基于模式的导航直接跳转到相关更改,而不是按顺序读取整个差异。

问题

较大的差异超过了LLM上下文限制,并在无关的更改上浪费令牌。50k+行差异不能直接处理,手动拆分会丢失文件关系。

解决方案

带5个导航工具的MCP服务器:

  • load_diff -使用自定义设置解析diff文件(可选)
  • list_chunks -显示块概览,包括文件映射和每个文件的行数(自动加载)
  • get_chunk -检索特定块内容(自动加载)
  • find_chunks_for_files -按文件模式定位块(自动加载)
  • get_file_diff -提取单个文件的完整差异(自动加载)

设置

先决条件: 安装 紫外线 (一个非常快的Python包管理器),它提供 uvx 命令。

添加到MCP客户端配置中:

{
  "mcpServers": {
    "diffchunk": {
      "command": "uvx",
      "args": ["--from", "diffchunk", "diffchunk-mcp"]
    }
  }
}

用法

您的AI助手现在可以处理以前在Cline、Roocode、Cursor和其他工具中导致失败的大量变更集。

使用AI助手

配置后,您的AI助手可以使用diffchunk分析大型提交、分支或差异。

以下是一些示例用例:

分支比较:

  • _“检查开发中的所有更改,而不是主分支中的任何错误”_
  • _“告诉我尚未合并的所有更改”_
  • _“临时分支添加了哪些新功能?”_
  • _“总结过去2周对此仓库的所有更改”_

代码审查:

  • _“使用diffchunk检查我的功能分支是否存在安全漏洞”_
  • _“在我合并到生产环境之前,使用diffchunk查找任何突破性的更改”_
  • _“使用diffchunk检查此大型重构是否存在潜在问题”_

变更分析:

  • _“使用diffchunk向我显示需要运行的所有数据库迁移”_
  • _“使用diffchunk查找API的哪些更改可能会影响我们的移动应用程序”_
  • _“使用diffchunk分析最近添加的所有新依赖项”_

直接文件分析:

  • _“使用diffchunk分析/tmp/changes.diff上的差异,并找到任何错误”_
  • _“创建我未提交的更改的差异并对其进行审核”_
  • _“将我的本地分支与来源进行比较,并突出显示冲突”_

提示:AI助手规则

添加到AI助手的自定义说明中以自动使用:

When reviewing large changesets or git commits, use diffchunk to handle large diff files.
Create temporary diff files and tracking files as needed and clean up after analysis.

运作原理

当你让你的人工智能助手分析变化时,它会战略性地使用diffchunk的工具:

  1. 创建diff文件 (例如。, git diff main..develop > /tmp/changes.diff)根据你的问题
  2. 用途 list_chunks 通过以下方式了解diff结构和总体范围,包括每个文件的行数 file_details
  3. 用途 find_chunks_for_files 在询问特定文件类型时查找相关部分
  4. 用途 get_file_diff 获取一个特定文件的完整差异,而不加载整个块
  5. 用途 get_chunk 在不将整个差异加载到上下文中的情况下检查特定部分
  6. 系统地跟踪进展 通过大型变更集,逐块分析
  7. 清理临时文件 完成分析后

这使您的AI助手能够处理通常会导致其他工具崩溃的巨大差异,同时在不丢失上下文的情况下提供彻底的分析。

工具使用模式

概述一:

list_chunks("/tmp/changes.diff")
# -> 5 chunks across 12 files, 3,847 total lines, ~15,420 tokens
# Each chunk includes token_count and file_details with per-file line counts
# Response includes total_token_count for context-budget planning

目标特定文件:

find_chunks_for_files("/tmp/changes.diff", "*.py")
# → [1, 3, 5] - Python file chunks

get_chunk("/tmp/changes.diff", 1)
# → Content of first Python chunk

单文件差异:

get_file_diff("/tmp/changes.diff", "src/main.py")
# → Complete diff for src/main.py (header + all hunks)

# Glob patterns work when they match exactly one file
get_file_diff("/tmp/changes.diff", "*.config")
# → Complete diff for the single matching config file

系统分析:

# Process each chunk in sequence
get_chunk("/tmp/changes.diff", 1)
get_chunk("/tmp/changes.diff", 2)
# ... continue through all chunks

配置

路径要求

  • 仅绝对路径: /home/user/project/changes.diff
  • 跨平台:Windows(C:\path)和Unix(/path)
  • 房屋扩建: ~/project/changes.diff

自动加载默认值

工具通过优化设置自动加载:

  • max_chunk_lines: 1000
  • skip_trivial:true(仅限空格)
  • skip_generated:true(锁定文件、构建工件)

自定义设置

使用 load_diff 对于非默认行为:

load_diff(
    "/tmp/large.diff",
    max_chunk_lines=2000,
    include_patterns="*.py,*.js",
    exclude_patterns="*test*",
    context_lines=2
)

格式选项

使用 format 参数打开 get_chunk 将输出转换为LLM消耗:

# Default - raw diff output
get_chunk("/tmp/changes.diff", 1, format="raw")

# Annotated - structured with line numbers, file headers, hunk separation
get_chunk("/tmp/changes.diff", 1, format="annotated")

# Compact - token-efficient, only new hunks (context + added lines)
get_chunk("/tmp/changes.diff", 1, format="compact")

注释格式 添加 ## File: 标题, __new hunk__/__old hunk__ 具有新文件行号的部分和来自的函数上下文 @@ 标题。

紧凑格式 仅显示添加或保留的内容,省略删除的行和 __old hunk__ 部分完全。当你只需要看到最终状态时很有用。

上下文缩减

使用 context_lines 上 load_diff 在加载时减少每个块的上下文行数:

# Keep only 2 lines of context around each change
load_diff("/tmp/large.diff", context_lines=2)

# Keep only changes, no context
load_diff("/tmp/large.diff", context_lines=0)

这与 format -在加载时减少上下文,然后在显示时应用格式化。

支持格式

  • Git差异输出(git diff, git show)
  • 统一差异格式(diff -u)
  • 单个diff中有多个文件
  • 二进制文件更改指示器

演出

  • 高效处理100k+线路差异
  • 内存高效流媒体
  • 文件更改时自动重新加载

文档

  • 设计 -架构和实施细节
  • 贡献 -贡献指南和开发设置

许可证

麻省理工学院

工具与能力

工具数量

4

资源数量

0

提示词数量

0

能力标签

差异分析Python本地部署代码审查大型文件处理LLM工具Git工具

支持客户端

CursorCline

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

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 4 个工具,职责集中,接入后不容易误操作。
  • 已经适配 Cursor、Cline,换客户端不用重新研究配置。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 暂时拿不到访问 Token的人。
  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

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

MCP World · 本页

4未说明未标注2 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

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

常见问题

5 条

diffchunk (Peteretelej) 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

diffchunk (Peteretelej) 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

diffchunk (Peteretelej) 收费吗?

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

diffchunk (Peteretelej) 需要 API Key 吗?

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

diffchunk (Peteretelej) 支持哪些客户端?

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

来源信息

继续浏览同类 MCP