文档语义搜索服务器

一个用于与GroundX API交互的MCP服务器,支持本地和Google Drive文档的高级语义搜索,并能与GitHub Copilot和Claude Desktop无缝集成。

  • by Geoffrey-42
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Geoffrey-42/rag-groundx-mcp-server

使用说明

RAG GroundX MCP服务器

MCP(模型上下文协议)服务器,用于与eyelevel.ai的GroundX API交互,具有本地代理,可连接到您选择的远程Google Drive MCP服务器URL(例如Zapier)。这种集成使GroundX功能能够无缝集成到您的GitHub Copilot和Claude Desktop工作流中,以便在您的Google Drive或本地文档上执行高级解析和语义搜索。

🌟 主要特点

  • GroundX API的MCP服务器 使用stdio传输
  • Google Drive集成 通过MCP代理
  • 双文档管理:
    • 将本地文件直接上传到GroundX
    • 或将Google Drive文档与GroundX同步
  • 高级语义搜索 在您的所有文档中
  • 无缝集成 与:
    • GitHub Copilot
    • 克劳德桌面

🚀 快速开始

先决条件

  • 安装了WSL 2的Windows(建议使用Ubuntu 22.04)
  • 安装uv 如果你还没有-Python 3.11或更高版本
  • A. GroundX API密钥 (免费版可用)
  • (可选)Google Drive MCP服务器URL-例如使用 扎皮尔 (免费版可用)-以及一个专门用于此Google Drive集成的Google帐户。

安装步骤

  1. 克隆存储库:

    git clone https://github.com/Geoffrey-42/rag-groundx-mcp-server.git
    cd rag-groundx-mcp-server
    
  2. 设置虚拟环境:

    # Create and activate virtual environment
    uv venv
    
    # Activate the virtual environment
    source .venv/bin/activate
    
  3. 安装依赖项:

    uv pip install -r requirements.txt
    
  4. (可选) 在.env文件中配置您的环境:

    • 创建一个 .env 根目录中的文件:
      touch .env
      
    • 编辑 .env 文件并添加您的凭据:
      # Required: Get your API key from https://dashboard.eyelevel.ai/home
      GROUNDX_API_KEY=your_groundx_api_key_here
      
      # Optional: Only needed for Google Drive integration
      # GOOGLE_DRIVE_SERVER_URL=your_google_drive_mcp_server_url
      
    • 注意:如果在claude_desktop_config.json文件中配置环境,则可以跳过(见下文)。

🔌 Claude桌面配置

要将此服务器与Claude Desktop和GitHub Copilot一起使用:

  1. 配置 claude_desktop_config.json 文件:

    • 地点: %APPDATA%\Claude\claude_desktop_config.json (Windows)
    • 将以下MCP服务器添加到配置中,并用您的值填充占位符以配置服务器:
    {
      "mcpServers": {
        "Groundx_RAG_MCP_Server": {
          "command": "wsl",
          "args": [
            "-d", "Ubuntu-22.04",
            "-e", "bash", "-c",
            "export GROUNDX_API_KEY=<your_groundx_api_key> && export PATH=$HOME/.local/bin:$PATH && cd /home/<your-name>/<project-folder>/rag-groundx-mcp-server/src && uv run Groundx_RAG_MCP_Server.py"
          ],
          "env": {
            "GROUNDX_API_KEY": "<your_groundx_api_key>"
          }
        },
        "GoogleDriveProxyServer": {
          "command": "wsl",
          "args": [
            "-d", "Ubuntu-22.04",
            "-e", "bash", "-c",
            "export GOOGLE_DRIVE_SERVER_URL=<your_google_drive_mcp_server_url> && export PATH=$HOME/.local/bin:$PATH && cd /home/<your-name>/<project-folder>/rag-groundx-mcp-server/src && uv run Google_Drive_Proxy_Server.py"
          ],
          "env": {
            "GOOGLE_DRIVE_SERVER_URL": "<your_google_drive_mcp_server_url>"
          }
        }
      }
    }
    

故障排除

  • 您可以使用环境变量或命令行参数来传递API密钥和Google Drive MCP服务器URL。理论上,您可以使用两台服务器的环境变量参数“env”,但建议使用命令行参数“args”以避免WSL环境中的问题。因此,这里显示了这两种方法。

  • 您还可以使用.env文件将API密钥和Google Drive MCP服务器URL传递给服务器。在.env文件中写入GOOGLE_DRIVE_SERVER_URL=<your_GOOGLE_DRIVE_mcp_SERVER_URL>和GRUNDX_API_KEY=<your_GROUNDX_API_KEY>。

  • 您还必须在命令行参数“args”中指定项目根目录的路径(例如,/home/<您的名字>/<项目文件夹>/rag groundx mcp server/src)。

  • 您还可以使用fastmcp.cli.claude在claude Desktop中配置MCP服务器。看https://gofastmcp.com/python-sdk/fastmcp-cli-claude#fastmcp-cli-claude了解更多信息。

  • Anthropic还引入了“桌面扩展”(.dxt文件),简化了本地MCP服务器的安装和管理,允许一键设置。

  1. 重新启动克劳德桌面和VS代码 (文件->退出)应用更改

一旦为Claude Desktop配置,MCP工具也将通过GitHub Copilot在VS Code中可用。 重新启动Claude Desktop和VS Code后,VS Code代理或Claude Desktop将自动检测并在相关时使用这些工具。 别忘了在VS Code中启用代理模式,并在Claude Desktop中启用MCP工具。

🤖 GitHub复制集成

要将此服务器与GitHub Copilot一起使用:

  1. 在VS代码中启用代理模式
  2. MCP工具将被自动检测
  3. 自然交互-代理将根据需要使用适当的工具

🚀 Claude Desktop快速入门

  1. 确保MCP服务器通过Claude Desktop配置运行
  2. 单击Claude Desktop聊天输入字段下方的工具徽标,验证您的MCP工具是否存在。
  3. 自然交互——代理将根据需要使用适当的工具。
  4. 您可以让Claude在您的Google云端硬盘中搜索文档。
  5. 您可以要求Claude将文档从您的Google Drive上传到GroundX。
  6. 您可以要求Claude使用检索工具根据您的GroundX文档回答查询。

🚀 VS代码复制品快速入门

  1. 确保MCP服务器通过Claude Desktop配置运行。
  2. 打开VS Code并在Copilot中启用代理模式。
  3. 通过单击Copilot聊天输入字段下方的工具徽标来验证您的MCP工具是否存在。
  4. 自然交互——代理将根据需要使用适当的工具。
  5. 要将本地文件上传到groundx:在VS Code的WSL下打开此项目文件夹。然后,代理将可以访问此文件夹中您可以复制到的任何文档。
  6. 您可以要求客服在您的Google云端硬盘中搜索文档。
  7. 您可以要求代理将文件从您的Google Drive上传到GroundX。
  8. 您可以要求代理使用检索工具根据您的GroundX文档回答查询。

交互示例

在启用GitHub Copilot的VS Code中工作时,您可以简单地用自然语言描述您想做什么,代理将自动使用适当的MCP工具。例如:

  1. 一般信息:“列出我的groundx bucket和我的谷歌驱动器文档”
  2. 将本地文件上传到groundx:“将文件路径/to/document.pdf从我的本地计算机上传到我的groundx bucket,id为<bucket_id>”
  3. 搜索文档:“在谷歌驱动器的<folder_name>文件夹中找到<article_name>.pdf,并将其准备好放入我的groundx桶中,id为<bucket_id>。”
  4. 上传文件:“将此文档从我的谷歌驱动器添加到我的groundx bucket中,id为<bucket_id>”
  5. 检索知识:请代理在从您的groundx文档中检索到信息后回答查询。

代理将根据您的自然语言请求自动处理所有工具调用和API调用。

📚 可用工具

主要工具

  • Retrieval_from_Groundx:跨文档执行语义搜索
  • upload_local_file_to_Groundx:将本地文件上传到GroundX
  • upload_remote_file_to_Groundx:将文件从公共URL上传到GroundX
  • crawl_website_to_Groundx:抓取网站并将其上传到GroundX
  • google_drive_retrieve_files_from_google_drive:从Google云端硬盘检索特定文档的详细信息。仅当您配置了Google Drive MCP服务器URL(例如,使用Zapier),并将其作为Google_Drive_Server_URL复制到.env文件中或复制到claude_desktop_config.json文件中时才可用。
  • 许多其他

🤝 贡献

欢迎投稿!请随时提交拉取请求。

📞 支持

如有疑问或问题,请在存储库中打开问题。