项目简介

该项目是一个基于 Model Context Protocol (MCP) 的后端服务,旨在将您的AI助手连接到GitHub仓库。它为AI提供了标准化的接口和工具,使其能够访问、导航和深入理解GitHub代码库、文件内容、项目结构以及特定的Issue信息,从而提升AI回答的准确性和相关性,减少幻觉。

主要功能点

  • 获取仓库处理摘要: 提供整个仓库处理后的主要内容或摘要,方便AI快速概览。
  • 获取目录结构: 获取仓库的完整目录树结构(纯文本带缩进),帮助AI理解项目布局。
  • 获取文件内容: 根据路径获取仓库中任意指定文件的完整内容,支持AI深入分析具体代码或文档。
  • 获取Issue上下文: 获取指定GitHub仓库中特定Issue的详细信息,包括标题、描述、状态及所有评论,为AI讨论或总结Issue提供全面上下文。

安装步骤

  1. 克隆仓库: 打开终端,使用git命令将仓库克隆到您的本地计算机。
    git clone https://github.com/BaoNguyen09/github-second-brain.git
  2. 进入目录: 切换到克隆下来的仓库目录。
    cd github-second-brain
  3. 创建并激活虚拟环境: 使用 'uv' 工具创建并激活项目专用的虚拟环境。
    uv venv
    # Windows (PowerShell)
    .\.venv\Scripts\activate
    # macOS/Linux (bash/zsh)
    source .venv/bin/activate
  4. 安装依赖: 在激活的虚拟环境中,安装项目所需的所有依赖库。
    uv pip install -r requirements.txt

服务器配置

这是一个MCP服务器,旨在供支持MCP协议的AI客户端使用(例如Cursor、Claude Desktop等)。AI客户端需要通过配置来知晓如何启动并连接到此MCP服务器。配置信息通常保存在客户端的设置文件(如JSON文件)中。以下是常见的配置格式示例,您需要根据您实际安装的仓库路径进行调整:

{
  "mcpServers": {
    "github-second-brain": { // 服务器的唯一标识符,您可以自定义但需保持一致
       "command": "uv",     // 启动服务器的可执行程序,这里使用 uv
       "args": [            // 传递给 command 的参数列表
           "--directory",    // uv run 命令的一个参数,用于指定工作目录
           "path\\to\\your\\github-second-brain\\folder", // <-- **重要:请将此路径替换为您实际克隆仓库的绝对路径**
           "run",            // uv 的一个子命令,用于运行指定的Python脚本
           "mcp_server.py"   // 要作为MCP服务器启动的Python脚本文件
       ]
    }
    // 如果您有其他MCP服务器,它们的配置也会列在此处...
  }
}

重要提示: 该项目由一个FastAPI服务和一个MCP服务组成。在启动上述MCP服务器之前,您必须先在另一个终端窗口中启动FastAPI服务。请进入项目目录,激活虚拟环境,然后运行 'fastapi dev' 命令。确保FastAPI服务正常运行后,再通过AI客户端的配置启动MCP服务器。

基本使用方法

完成安装并按照上述说明启动 FastAPI服务 和通过AI客户端配置启动 MCP服务器 后,您的AI助手现在就具备了访问GitHub仓库的能力。

在支持MCP的AI客户端中,当您向AI提问关于某个GitHub仓库的问题时(例如关于代码、文件、结构或特定Issue),AI客户端会根据其内部逻辑和用户的指令,通过配置好的MCP服务器调用相应的工具(如 'get_file_content', 'get_directory_tree', 'get_issue_context' 等)。MCP服务器会处理这些请求,通过内部的FastAPI服务获取数据,并将结果返回给AI客户端。AI客户端收到数据后,会将其作为额外的上下文,生成更准确、更相关的回答。

您只需要像平常一样向AI提问,如果问题涉及GitHub仓库信息,AI客户端会自动利用配置的GitHub Second Brain MCP服务器来获取所需上下文。

信息

分类

开发者工具