返回市场
代码合并MCP

代码合并MCP

作者:yy158813322 星标更新:2025-05-04

项目介绍

MseeP.ai 安全评估徽章

Code Merge MCP 服务器

Code Merge MCP 是基于模型上下文协议(MCP)实现的服务器,专门用于提取、合并和分析代码文件的内容。它提供了一套强大的工具,帮助大型语言模型(如GPT、Claude)更有效地处理和分析代码库。

核心功能

  • 文件树生成:生成项目文件结构的树视图。
  • 代码合并:将多个文件的内容合并成一个输出。
  • 代码分析:提供代码统计信息,例如行数和函数数量。
  • 智能过滤:支持 .gitignore 规则和自定义黑名单。

技术架构

该项目基于模型上下文协议(MCP)SDK,并使用Node.js实现。主要组件包括:

  • MCP服务器:处理客户端请求并提供工具功能。
  • 工具模块:实现各种代码处理功能。
  • 核心库:提供文件系统操作和过滤功能。

工具描述

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:是否计算函数数量

输出:包含代码分析结果的统计信息。

安装与使用

环境要求

  • Node.js(推荐 v16.x 或更高版本)
  • Npm(通常随 Node.js 一起安装)

从Git仓库获取项目

# 克隆仓库
git clone https://github.com/yourusername/code-merge-mcp.git
cd code-merge-mcp

# 安装依赖
npm install

VS Code 配置

添加:

{
  "mcpServers": {
    "code-merge": {
      "command": "node",
      "args": [
        "<项目完整路径>/src/main.js"
      ],
    }
  }
}

请将 <项目完整路径> 替换为实际路径,例如 C:\Users\username\code-merge-mcp

项目结构

code-merge-mcp/
├── bin/                # 可执行文件目录
│   ├── cli.js           # 命令行入口点
│   └── mcp-server.js    # MCP服务器入口点
├── src/
│   ├── core/           # 核心功能模块
│   │   ├── compressor.js   # 内容压缩
│   │   ├── file-lister.js  # 文件列表生成
│   │   ├── file-reader.js  # 文件读取
│   │   └── filter.js       # 文件过滤
│   ├── tools/          # 工具实现
│   │   ├── analyze_code.js  # 代码分析工具
│   │   ├── get_file_tree.js # 文件树生成工具
│   │   └── merge_content.js # 内容合并工具
│   ├── main.js         # 主入口点
│   └── m_服务器实现
├── package.json        # 项目配置
└── README.md           # 项目文档

贡献指南

欢迎提交Issue和Pull Requests以改进此工具。在提交代码之前,请确保:

  1. 代码符合项目的编码标准。
  2. 添加适当的测试用例。
  3. 更新相关文档。

许可证

MIT 许可证

致谢

本项目基于 TownBoats/codeMerge 开发,感谢原作者的贡献。