代码合并 MCP 是一种基于 Model Context Protocol (MCP) 的服务器实现,专为代码文件内容提取、合并和分析而设计。它提供了一套强大的工具,能帮助大语言模型(如 GPT、Claude)更高效地处理和分析代码库。
本项目基于 Model Context Protocol (MCP) SDK 构建,使用 Node.js 实现。主要组件包括:
get_file_tree
生成项目文件结构的树状视图,支持多种过滤选项。
参数:
path
:目标目录路径use_gitignore
:是否使用 .gitignore 规则(可选)ignore_git
:是否忽略 .git 目录(可选)custom_blacklist
:自定义黑名单项目(可选)示例输出:
project/
├── src/
│ ├── main.js
│ └── utils/
│ └── helper.js
├── tests/
│ └── test.js
└── README.md
merge_content
将多个文件的内容合并为单一输出,适合准备用于大语言模型的代码分析。
参数:
path
:目标文件或目录路径compress
:是否压缩输出(可选)use_gitignore
:是否使用 .gitignore 规则(可选)ignore_git
:是否忽略 .git 目录(可选)custom_blacklist
:自定义黑名单项目(可选)输出:包含合并后的文件内容和统计信息
analyze_code
分析代码文件并提供统计信息,如行数和函数数量。
参数:
path
:目标文件或目录路径language
:可选的语言过滤器countLines
:是否统计代码行数countFunctions
:是否统计函数数量输出:包含代码分析结果的统计信息
git clone https://github.com/yourusername/codemerge-mcp.git
cd codemerge-mcp
npm install
node index.js
codemerge-mcp/
├── index.js # MCP 服务器主程序
├── mcp-sdk/ # MCP SDK 目录(已包含)
│ ├── config.json # MCP 配置文件
│ └── lib/ # 核心库文件
├── tools/ # 工具模块目录
│ ├── filetree.js # 文件树生成工具
│ ├── merger.js # 代码合并工具
│ └── analyzer.js # 代码分析工具
└── README.md # 项目文档
tools/
目录下添加新的功能模块。MIT License
本项目基于 TownBoats/codeMerge 开发,感谢原作者的贡献。