MCP块编辑器
一种模型上下文协议服务器,为LLM提供面向块的文本文件编辑功能。此服务器使LLM能够使用语义上有意义的块而不是行号来编辑文件,从而实现更自然、更高效的编辑操作。
主要特点
- 语义分块:使用通用CTag来识别有意义的代码结构,如函数、类和方法
- 立即应用:更改会立即应用,并生成预览进行验证
- 简单撤消:支持恢复每个文件的最新更改
- 效率:针对LLM令牌的使用进行了优化,包括增量更新和延迟分块
可用工具
read_chunks-检索文件的块,无论是所有块还是特定范围。
- file_path (string,必填):要读取的文件的路径 - chunk_indices (整数数组,可选):要检索的块索引列表 - include_adjacent (boolean,可选):包含上下文前后的块 - encoding (字符串,可选):文件编码(默认值:utf-8)
replace_chunks-替换一个或多个块的内容,并立即应用更改。
- file_path (string,必填):要修改的文件的路径 - replacements (数组,必填):{index,new_content}对象列表 - encoding (字符串,可选):文件编码(默认值:utf-8)
undo-还原replace_chunks操作所做的最后一次更改。
- file_path (string,必填):要还原更改的文件的路径
create_file-使用给定内容创建新文件。
- file_path (string,必填):要创建的文件的路径 - content (string,必填):要写入文件的内容 - encoding (字符串,可选):文件编码(默认值:utf-8)
delete_file-删除文件。
- file_path (string,必填):要删除的文件的路径
先决条件
- Python 3.10或3.11(由于Python标签3的兼容性,目前还不支持Python 3.12+)
- 通用CTags(
apt-get install universal-ctags在Debian/Ubuntu上)
安装
使用紫外线(推荐)
使用时 uv 不需要特定的安装。我们将 使用 uvx 直接运行 *mcp块编辑器*.
使用PIP
或者,您可以安装 mcp-chunk-editor 通过pip:
pip install mcp-chunk-editor安装后,您可以使用以下命令将其作为脚本运行:
python -m mcp_chunk_editor配置
为Claude.app进行配置
添加到您的Claude设置中:
Using uvx
"mcpServers": {
"chunk-editor": {
"command": "uvx",
"args": ["mcp-chunk-editor"]
}
}Using docker
"mcpServers": {
"chunk-editor": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/chunk-editor"]
}
}Using pip installation
"mcpServers": {
"chunk-editor": {
"command": "python",
"args": ["-m", "mcp_chunk_editor"]
}
}定制-最大块尺寸
默认情况下,服务器将使用100行的最大块大小。这可以通过添加参数进行自定义 --max-chunk-size=200 (例如,设置200行) args 配置中的列表。
调试
您可以使用MCP检查器调试服务器。对于uvx安装:
npx @modelcontextprotocol/inspector uvx mcp-chunk-editor或者,如果您已将软件包安装在特定目录中或正在其上开发:
cd path/to/servers/src/chunk-editor
npx @modelcontextprotocol/inspector uv run mcp-chunk-editor运作原理
块编辑器的工作原理是首先使用通用CTag解析文件,以识别有意义的语义单元,如函数、类和方法。这些语义单元成为LLM可以操作的块。
编辑文件时:
- LLM从文件中请求块(
read_chunks) - LLM对特定块进行更改(
replace_chunks) - 更改将立即应用于文件
- 返回更改的预览以供验证
- 如果需要,LLM可以撤消最近的更改(
undo)
与传统的基于行的编辑器相比,这种工作流程对LLM来说更高效、更自然,后者需要精确的行号和内容哈希。
贡献
我们鼓励贡献,以帮助扩展和改进mcp块编辑器。无论您是想添加新工具、增强现有功能还是改进文档,您的意见都是有价值的。
有关其他MCP服务器和实现模式的示例,请参阅: https://github.com/modelcontextprotocol/servers
欢迎拉取请求!请随时贡献新想法、错误修复或增强功能,使mcp块编辑器更加强大和有用。
许可证
mcp块编辑器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。
