项目简介
RagCode MCP是一款基于Model Context Protocol (MCP) 的本地AI服务器,旨在增强GitHub Copilot、Cursor、Claude等AI助手对您代码库的理解能力。它通过在本地运行大型语言模型和向量数据库,实现代码的语义搜索、智能导航和上下文检索,确保您的专有代码始终保持私密,不上传至云端。RagCode提供9项强大的工具,让AI能够快速准确地访问和理解代码,显著提升开发效率。
主要功能点
- 语义代码搜索: 依据代码的含义而非关键词进行智能搜索,快速定位相关代码片段。
- 混合搜索: 结合语义搜索与关键词搜索,提供更精准的查找结果。
- 获取函数详情: 立即获取函数、方法或类型定义(包括签名、参数、返回值和代码体)。
- 查找类型定义: 快速定位类、结构体、接口等类型定义及其成员。
- 查找实现/引用: 发现特定符号(如函数、接口)的所有使用或实现之处。
- 列出包导出符号: 浏览任何包或模块导出的所有函数、类型和常量。
- 搜索项目文档: 在项目Markdown文档中进行语义搜索,获取相关信息。
- 获取代码上下文: 读取指定文件特定行范围的代码,并包含上下文行。
- 工作区自动索引: 自动检测您的项目工作区,并在后台增量索引代码,无需手动干预。
- 隐私优先: 所有AI模型和数据均在本地运行,您的代码永不离开本地机器。
- 多语言支持: 目前支持Go、PHP (Laravel)、Python (即将推出) 和 JavaScript/TypeScript (计划中)。
- 多工作区支持: 可同时管理和索引多个项目。
安装步骤
RagCode MCP的安装非常简单,只需一条命令即可完成:
- 安装Docker Desktop: 如果您尚未安装Docker,请先访问 Docker官网 下载并安装Docker Desktop,确保其正在运行。RagCode使用Docker来运行Qdrant向量数据库和可选的Ollama模型。
- 运行一键安装器: 根据您的操作系统选择并执行以下命令:
- Linux (amd64):
curl -fsSL https://github.com/doITmagic/rag-code-mcp/releases/latest/download/rag-code-mcp_linux_amd64.tar.gz | tar xz && ./ragcode-installer -ollama=docker -qdrant=docker - macOS (Apple Silicon):
curl -fsSL https://github.com/doITmagic/rag-code-mcp/releases/latest/download/rag-code-mcp_darwin_arm64.tar.gz | tar xz && ./ragcode-installer -ollama=docker -qdrant=docker - macOS (Intel):
curl -fsSL https://github.com/doITmagic/rag-code-mcp/releases/latest/download/rag-code-mcp_darwin_amd64.tar.gz | tar xz && ./ragcode-installer -ollama=docker -qdrant=docker - Windows (PowerShell):
Invoke-WebRequest -Uri "https://github.com/doITmagic/rag-code-mcp/releases/latest/download/rag-code-mcp_windows_amd64.zip" -OutFile "ragcode.zip" Expand-Archive ragcode.zip -DestinationPath . -Force .\ragcode-installer.exe -ollama=docker -qdrant=docker
- Linux (amd64):
服务器配置
RagCode MCP服务器安装后通常不需要手动配置。它会自动检测您的项目并开始工作。 对于MCP客户端(如VS Code的GitHub Copilot),您可能需要在其MCP服务器配置中添加RagCode服务器信息。以下是通用配置示例:
// 文件路径示例 (取决于您的操作系统和IDE): // Linux: ~/.config/Code/User/globalStorage/mcp-servers.json // Windows: %APPDATA%\Code\User\globalStorage\mcp-servers.json // macOS: ~/Library/Application Support/Code/User/globalStorage/mcp-servers.json { "mcpServers": { "ragcode": { // 指定RagCode MCP服务器的可执行文件路径。 // 示例: "/home/YOUR_USERNAME/.local/share/ragcode/bin/rag-code-mcp" // 请将YOUR_USERNAME替换为您的实际系统用户名。 "command": "PATH_TO_RAGCODE_BINARY", "args": [], // 启动参数,通常为空 "env": { // Ollama服务器的基础URL,用于本地LLM和嵌入模型。默认已配置。 "OLLAMA_BASE_URL": "http://localhost:11434", // 用于代码分析的LLM模型。默认已配置为phi3:medium。 "OLLAMA_MODEL": "phi3:medium", // 用于生成嵌入向量的模型。默认已配置为nomic-embed-text。 "OLLAMA_EMBED": "nomic-embed-text", // Qdrant向量数据库的URL。默认已配置。 "QDRANT_URL": "http://localhost:6333" } } } }
请注意:'PATH_TO_RAGCODE_BINARY' 通常是 '~/.local/share/ragcode/bin/rag-code-mcp' (Linux/macOS)或 'C:\Users\YOUR_USERNAME.local\share\ragcode\bin\rag-code-mcp.exe' (Windows),具体路径在安装后会提示。
基本使用方法
- 打开项目: 在您支持MCP的IDE(如VS Code)中打开一个代码项目。
- 向AI助手提问: 直接向您的AI助手(如GitHub Copilot Chat)提问关于代码的问题,例如:"这段代码的认证逻辑是如何工作的?" 或 "查找所有处理用户数据的函数。"
- 自动工作: RagCode MCP会在后台自动检测您的工作区,创建索引(首次查询可能需要一些时间,之后会立即响应),并由AI助手调用相应的工具来回答您的问题。文件更改也会被自动检测并增量重新索引。
信息
分类
开发者工具