MCP Chunk Editor
一个 MCP 服务器,为 LLM 提供高效且安全的文本编辑器。 (Alternatively, depending on the specific context and target audience, you could also say:) 一个 MCP 服务器,为大型语言模型 (LLM) 提供高效且安全的文本编辑器。
dwymark
README
MCP Chunk Editor
一个模型上下文协议服务器,为 LLM 提供面向块的文本文件编辑功能。该服务器使 LLM 能够使用语义上有意义的块而不是行号来编辑文件,从而实现更自然和高效的编辑操作。
主要特性
- 语义分块: 使用 Universal CTags 来识别有意义的代码结构,如函数、类和方法
- 立即应用: 更改会立即应用,并生成预览以进行验证
- 简单撤销: 支持撤销每个文件的最近一次更改
- 效率: 针对 LLM token 使用进行了优化,具有增量更新和延迟分块功能
可用工具
-
read_chunks
- 检索文件的块,可以是所有块或特定范围。file_path
(字符串, 必需): 要读取的文件的路径chunk_indices
(整数数组, 可选): 要检索的块索引列表include_adjacent
(布尔值, 可选): 包含之前和之后的块以获取上下文encoding
(字符串, 可选): 文件编码 (默认: utf-8)
-
replace_chunks
- 替换一个或多个块的内容并立即应用更改。file_path
(字符串, 必需): 要修改的文件的路径replacements
(数组, 必需): {index, new_content} 对象列表encoding
(字符串, 可选): 文件编码 (默认: utf-8)
-
undo
- 撤消 replace_chunks 操作所做的最后一次更改。file_path
(字符串, 必需): 要撤消更改的文件的路径
-
create_file
- 创建具有给定内容的新文件。file_path
(字符串, 必需): 要创建的文件的路径content
(字符串, 必需): 要写入文件的内容encoding
(字符串, 可选): 文件编码 (默认: utf-8)
-
delete_file
- 删除文件。file_path
(字符串, 必需): 要删除的文件的路径
前提条件
- Python 3.10 或 3.11 (由于 python-ctags3 兼容性,尚不支持 Python 3.12+)
- Universal CTags (
apt-get install universal-ctags
在 Debian/Ubuntu 上)
安装
使用 uv (推荐)
当使用 uv
时,无需进行特定安装。我们将使用 uvx
直接运行 mcp-chunk-editor。
使用 PIP
或者,您可以通过 pip 安装 mcp-chunk-editor
:
pip install mcp-chunk-editor
安装后,您可以将其作为脚本运行:
python -m mcp_chunk_editor
配置
为 Claude.app 配置
添加到您的 Claude 设置:
<details> <summary>使用 uvx</summary>
"mcpServers": {
"chunk-editor": {
"command": "uvx",
"args": ["mcp-chunk-editor"]
}
}
</details>
<details> <summary>使用 docker</summary>
"mcpServers": {
"chunk-editor": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/chunk-editor"]
}
}
</details>
<details> <summary>使用 pip 安装</summary>
"mcpServers": {
"chunk-editor": {
"command": "python",
"args": ["-m", "mcp_chunk_editor"]
}
}
</details>
自定义 - 最大块大小
默认情况下,服务器将使用 100 行的最大块大小。可以通过将参数 --max-chunk-size=200
(例如,设置为 200 行)添加到配置中的 args
列表来自定义此设置。
调试
您可以使用 MCP inspector 来调试服务器。对于 uvx 安装:
npx @modelcontextprotocol/inspector uvx mcp-chunk-editor
或者,如果您已将软件包安装在特定目录中或正在开发它:
cd path/to/servers/src/chunk-editor
npx @modelcontextprotocol/inspector uv run mcp-chunk-editor
工作原理
块编辑器的工作原理是首先使用 Universal CTags 解析文件,以识别有意义的语义单元,如函数、类和方法。这些语义单元成为 LLM 可以操作的块。
编辑文件时:
- LLM 从文件请求块 (
read_chunks
) - LLM 更改特定块 (
replace_chunks
) - 更改会立即应用于文件
- 返回更改的预览以进行验证
- 如果需要,LLM 可以撤消最近的更改 (
undo
)
与传统的基于行的编辑器相比,此工作流程对于 LLM 来说更有效和自然,后者需要精确的行号和内容哈希。
贡献
我们鼓励大家贡献力量,以帮助扩展和改进 mcp-chunk-editor。无论您是想添加新工具、增强现有功能还是改进文档,您的投入都很有价值。
有关其他 MCP 服务器和实现模式的示例,请参见: https://github.com/modelcontextprotocol/servers
欢迎提交 Pull Request!随时贡献新的想法、错误修复或增强功能,以使 mcp-chunk-editor 更加强大和有用。
许可证
mcp-chunk-editor 在 MIT 许可证下获得许可。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。