代码仓库分析工具

Repo Context MCP 是一个直接在VS Code中探索和分析本地或远程代码仓库的工具,提供文件浏览、内容读取和代码分析功能。

  • by pablo-peek
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 pablo-peek/Repo-context

使用说明

回购上下文 MCP 🚀

直接在VS Code中探索和分析任何本地或远程代码仓库。


🚀 为什么要使用 Repo-context-mcp?

在VS Code中工作时,看看有什么不同 没有 和 (与)一起;带着 这个工具:

❌ 无 Repo-context-mcp ✅ 有 Repo-context-mcp
🔍 探索仓库结构 手动浏览文件和文件夹 立即列出任何仓库中的文件和文件夹
📄 读取文件内容 逐个打开文件 用一条命令读取任何文件的内容
🧑‍💻 分析代码 手动检查/导出函数 自动获取导出的函数和类型
🔒 私有/公开仓库 需要克隆并在本地设置 分析本地或远程(即使是私有)仓库
根据全局信息和指令,以下是原文内容的翻译:

✨ 特点/功能

  • 📂 文件夹 列出文件和文件夹 在任何仓库中(本地或GitHub)
  • 📄(文件/纸张的符号,无直接对应中文词汇,可理解为“文件”或“纸张”) 读取文件内容 立即
  • 🧑‍💻(表示一个正在使用电脑的人) 分析导出的函数和类型 来自TypeScript/JavaScript文件
  • 🔒(锁形符号,通常表示安全、保密或锁定状态) 支持私有和公共仓库
  • ⚡(闪电符号,常用于表示快速、能量或电) 无需克隆从GitHub端点获取文件和元数据

🛠️ 安装

  1. 在VS Code中安装

    打开你的工作区并运行:

    npm install
    
  2. 构建项目

    npm run build
    
  3. 以开发模式启动服务器

    npm run start:dev
    

    或者,要运行编译后的代码:

    npm start
    

🚦 它的工作原理

使用这台MCP服务器,您可以:

  • 设置你想要分析的仓库路径(本地或远程)
  • 列出文件和文件夹
  • 读取文件内容
  • 分析TypeScript/JavaScript文件,以提取导出的函数及其类型信息

所有这些工具都可以直接在VS Code中使用,让您在工作时能够轻松理解和记录代码库。


🎯 示例:即时发现端点的期望

使用Repo Context MCP,您可以分析TypeScript仓库,并提出有关API端点的非常具体的问题——比如,为了成功请求,您需要发送哪些对象和类型。

例如:

“我需要发送什么到 POST /users/register 创建一个新用户?”

Repo Context MCP 将分析源代码,并提供所需的精确 JSON 结构和 TypeScript 类型,包括枚举类型和嵌套对象。
这意味着您将确切知道要发送什么,无需浪费时间猜测或查阅文档。

这对开发者的生产力提升是一个巨大的助力:

  • 即时发现终端负载及其类型
  • 避免试错和失败的请求
  • 更快地与任何后端集成,即使是私有API

如果您需要具体的示例,或者想查看任何端点的负载内容,只需提出要求——Repo Context MCP 将直接提取它们。


🔗 集成

将此MCP服务器注册为您的上下文提供程序 mcp.json:

{
  "servers": {
    "repo-context-mcp": {
      "command": "npx",
      "args": [
        "ts-node",
        "/home/pablo/Apps/repo-context/src/index.ts"
      ],
      "type": "stdio",
      "env": {
        "ENVIRONMENT": "local",
        "GITHUB_TOKEN": "",
        "GITHUB_NAME": ""
      }
    }
  }
}

🔒 分析私有和本地仓库

  • 本地仓库设置路径使用 setRepoPath 工具。

  • 私有GitHub仓库在你的MCP服务器配置中,将你的GitHub用户名和令牌添加到环境变量中mcp.json):

    "env": {
      "GITHUB_TOKEN": "<your-github-token>",
      "GITHUB_NAME": "<your-github-username>"
    }
    

    然后,使用工具通过指定仓库所有者、仓库名称和文件路径,从私有仓库中获取并分析文件。

注: 对于私有GitHub仓库,请在配置中提供您的GitHub凭据。对于本地仓库,只需传入本地路径即可。


📦 要求

  • Node.js 18及以上版本
  • npm(Node Package Manager)

💡 笔记

  • 动态设置要分析的存储库 setRepoPath 工具。
  • 该服务器提供了文件浏览和类型分析工具,非常适合用于代码理解和文档编写。
  • 你可以从GitHub端点获取文件和元数据,而无需克隆仓库