项目简介
该项目是一个基于 Model Context Protocol (MCP) 的后端服务,旨在将您的AI助手连接到GitHub仓库。它为AI提供了标准化的接口和工具,使其能够访问、导航和深入理解GitHub代码库、文件内容、项目结构以及特定的Issue信息,从而提升AI回答的准确性和相关性,减少幻觉。
主要功能点
- 获取仓库处理摘要: 提供整个仓库处理后的主要内容或摘要,方便AI快速概览。
- 获取目录结构: 获取仓库的完整目录树结构(纯文本带缩进),帮助AI理解项目布局。
- 获取文件内容: 根据路径获取仓库中任意指定文件的完整内容,支持AI深入分析具体代码或文档。
- 获取Issue上下文: 获取指定GitHub仓库中特定Issue的详细信息,包括标题、描述、状态及所有评论,为AI讨论或总结Issue提供全面上下文。
安装步骤
- 克隆仓库: 打开终端,使用git命令将仓库克隆到您的本地计算机。
git clone https://github.com/BaoNguyen09/github-second-brain.git - 进入目录: 切换到克隆下来的仓库目录。
cd github-second-brain - 创建并激活虚拟环境: 使用 'uv' 工具创建并激活项目专用的虚拟环境。
uv venv # Windows (PowerShell) .\.venv\Scripts\activate # macOS/Linux (bash/zsh) source .venv/bin/activate - 安装依赖: 在激活的虚拟环境中,安装项目所需的所有依赖库。
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服务器来获取所需上下文。
信息
分类
开发者工具