M

MCP文档检索服务器

@qpd-v/mcp-ragdocs
0 Stars 434 次浏览 qpd-v 更新于 2026-08-23

一种模型上下文协议(MCP)服务器,它使用向量数据库(Qdrant)启用文档的语义搜索和检索。该服务器允许你从URL或本地文件中添加文档,然后使用自然语言查询进行搜索。

MCP 服务配置

复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用

{
  "mcpServers": {
    "ragdocs": {
      "args": [
        "/usr/local/lib/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"
      ],
      "command": "/usr/local/bin/node",
      "env": {
        "EMBEDDING_PROVIDER": "ollama",
        "OLLAMA_URL": "http://localhost:11434",
        "QDRANT_URL": "http://127.0.0.1:6333"
      }
    }
  }
}

服务介绍

MCP-Ragdocs

一个模型上下文协议(MCP)服务器,它使用向量数据库(Qdrant)实现文档的语义搜索和检索。该服务器允许您从URL或本地文件添加文档,然后使用自然语言查询进行搜索。

快速安装指南

  1. 全局安装包:

    npm install -g @qpd-v/mcp-server-ragdocs
    
  2. 启动 Qdrant(使用 Docker):

    docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant
    
  3. 确保 Ollama 正在运行并带有默认嵌入模型:

    ollama pull nomic-embed-text
    
  4. 在配置文件中添加:

    • 对于 Cline:%AppData%\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
    • 对于 Roo-Code:%AppData%\Roaming\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json
    • 对于 Claude Desktop:%AppData%\Claude\claude_desktop_config.json
    {
      "mcpServers": {
        "ragdocs": {
          "command": "node",
          "args": ["C:/Users/YOUR_USERNAME/AppData/Roaming/npm/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"],
          "env": {
            "QDRANT_URL": "http://127.0.0.1:6333",
            "EMBEDDING_PROVIDER": "ollama",
            "OLLAMA_URL": "http://localhost:11434"
          }
        }
      }
    }
    
  5. 验证安装:

    # 检查 Qdrant 是否正在运行
    curl http://localhost:6333/collections
    
    # 检查 Ollama 是否有该模型
    ollama list | grep nomic-embed-text
    

版本

当前版本:0.1.6

功能

  • 从 URL 或本地文件添加文档
  • 将文档存储在向量数据库中以进行语义搜索
  • 使用自然语言搜索文档
  • 列出所有文档来源

安装

使用 npm 全局安装:

npm install -g @qpd-v/mcp-server-ragdocs

这将把服务器安装到您的全局 npm 目录中,您需要按照以下配置步骤进行设置。

要求

  • Node.js 16 或更高版本
  • Qdrant(本地或云端)
  • 以下之一用于嵌入:
    • 本地运行的 Ollama(默认,免费)
    • OpenAI API 密钥(可选,付费)

Qdrant 设置选项

选项 1:本地 Qdrant

  1. 使用 Docker(推荐):
docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant
  1. 或者从 Qdrant 的网站 下载

选项 2:Qdrant 云

  1. Qdrant 云 创建账户
  2. 创建一个新的集群
  3. 从仪表板获取集群 URL 和 API 密钥
  4. 在配置中使用这些信息(参见下面的配置部分)

配置

该服务器可以与 Cline/Roo 和 Claude Desktop 一起使用。它们之间的配置略有不同:

Cline 配置

将下面的内容添加到你的 Cline 设置文件 (%AppData%\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json)
和/或
将下面的内容添加到你的 Roo-Code 设置文件 (%AppData%\Roaming\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json):

  1. 使用 npm 全局安装(推荐):
{
        "mcpServers": {
                "ragdocs": {
                        "command": "node",
      "args": ["C:/Users/YOUR_USERNAME/AppData/Roaming/npm/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"],
      "env": {
        "QDRANT_URL": "http://127.0.0.1:6333",
        "EMBEDDING_PROVIDER": "ollama",
        "OLLAMA_URL": "http://localhost:11434"
      }
    }
  }
}

对于使用 OpenAI 而不是 Ollama 的情况:

{
        "mcpServers": {
                "ragdocs": {
                        "command": "node",
      "args": ["C:/Users/YOUR_USERNAME/AppData/Roaming/npm/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"],
      "env": {
        "QDRANT_URL": "http://127.0.0.1:6333",
        "EMBEDDING_PROVIDER": "openai",
        "OPENAI_API_KEY": "your-openai-api-key"
      }
    }
  }
}
  1. 使用本地开发环境设置:
{
        "mcpServers": {
                "ragdocs": {
                        "command": "node",
                        "args": ["PATH_TO_PROJECT/mcp-ragdocs/build/index.js"],
                        "env": {
                                "QDRANT_URL": "http://127.0.0.1:6333",
                                "EMBEDDING_PROVIDER": "ollama",
                                "OLLAMA_URL": "http://localhost:11434"
                        }
                }
        }
}

Claude 桌面配置

将以下内容添加到你的 Claude 桌面配置文件中:

  • Windows: %AppData%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  1. 使用 Ollama 的 Windows 设置(使用完整路径):
{
  "mcpServers": {
    "ragdocs": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\npm\\node_modules\\@qpd-v/mcp-server-ragdocs\\build\\index.js"
      ],
      "env": {
                                "QDRANT_URL": "http://127.0.0.1:6333",
                                "EMBEDDING_PROVIDER": "ollama",
                                "OLLAMA_URL": "http://localhost:11434"
                        }
                }
        }
}

使用 OpenAI 的 Windows 设置:

{
        "mcpServers": {
                "ragdocs": {
                        "command": "C:\\Program Files\\nodejs\\node.exe",
                        "args": [
                                "C:\\Users\\YOUR_USERNAME\\AppData\\Roaming\\npm\\node_modules\\@qpd-v/mcp-server-ragdocs\\build\\index.js"
                        ],
                        "env": {
                                "QDRANT_URL": "http://127.0.0.1:6333",
                                "EMBEDDING_PROVIDER": "openai",
                                "OPENAI_API_KEY": "your-openai-api-key"
                        }
                }
        }
}
  1. 使用 Ollama 的 macOS 设置:
{
        "mcpServers": {
                "ragdocs": {
                        "command": "/usr/local/bin/node",
                        "args": [
                                "/usr/local/lib/node_modules/@qpd-v/mcp-server-ragdocs/build/index.js"
                        ],
                        "env": {
                                "QDRANT_URL": "http://127.0.0.1:6333",
                                "EMBEDDING_PROVIDER": "ollama",
                                "OLLAMA_URL": "http://localhost:11434"
                        }
                }
        }
}

Qdrant 云配置

对于 Cline 或 Claude Desktop,当使用 Qdrant 云时,请修改 env 部分:

使用 Ollama:

{
        "env": {
                "QDRANT_URL": "https://your-cluster-url.qdrant.tech",
                "QDRANT_API_KEY": "your-qdrant-api-key",
                "EMBEDDING_PROVIDER": "ollama",
                "OLLAMA_URL": "http://localhost:11434"
        }
}

使用 OpenAI:

{
        "env": {
                "QDRANT_URL": "https://your-cluster-url.qdrant.tech",
                "QDRANT_API_KEY": "your-qdrant-api-key",
                "EMBEDDING_PROVIDER": "openai",
                "OPENAI_API_KEY": "your-openai-api-key"
        }
}

环境变量

Qdrant 配置

  • QDRANT_URL(必需):你的 Qdrant 实例的 URL
    • 对于本地:http://localhost:6333
    • 对于云:https://your-cluster-url.qdrant.tech
  • QDRANT_API_KEY(对于云是必需的):你的 Qdrant 云 API 密钥

嵌入配置

  • EMBEDDING_PROVIDER(可选):选择 'ollama'(默认)或 'openai'
  • EMBEDDING_MODEL(可选):
    • 对于 Ollama:默认为 'nomic-embed-text'
    • 对于 OpenAI:默认为 'text-embedding-3-small'
  • OLLAMA_URL(可选):你的 Ollama 实例的 URL(默认为 http://localhost:11434)
  • OPENAI_API_KEY(如果使用 OpenAI 则必需):你的 OpenAI API 密钥

可用工具

  1. add_documentation

    • 从 URL 添加文档到 RAG 数据库
    • 参数:
      • url: 要获取的文档的 URL
  2. search_documentation

    • 搜索存储的文档
    • 参数:
      • query: 搜索查询
      • limit(可选): 返回的最大结果数量(默认:5)
  3. list_sources

    • 列出当前存储的所有文档来源
    • 不需要参数

示例用法

在 Claude Desktop 或任何其他 MCP 兼容客户端中:

  1. 添加文档:
Add this documentation: https://docs.example.com/api
  1. 搜索文档:
Search the documentation for information about authentication
  1. 列出来源:
What documentation sources are available?

开发

  1. 克隆仓库:
git clone https://github.com/qpd-v/mcp-server-ragdocs.git
cd mcp-server-ragdocs
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build
  1. 本地运行:
npm start

许可证

MIT

故障排除

常见问题

请根据您的具体情况替换代码块中的 #X 标记部分。如果您遇到具体问题或需要进一步的帮助,请参考相关文档或联系支持团队。

  1. Qdrant 连接错误

    Error: Failed to connect to Qdrant at http://localhost:6333
    
    • 检查 Docker 是否正在运行
    • 验证 Qdrant 容器是否正在运行:docker ps | grep qdrant
    • 尝试重启容器
  2. Ollama 模型缺失

    Error: Model nomic-embed-text not found
    
    • 运行:ollama pull nomic-embed-text
    • 验证模型是否已安装:ollama list
  3. 配置路径问题

    • Windows:将 YOUR_USERNAME 替换为您的实际 Windows 用户名
    • 检查文件权限
    • 验证路径是否存在
  4. npm 全局安装问题

    • 尝试以管理员权限安装
    • 检查 npm 是否在 PATH 中:npm -v
    • 验证全局安装:npm list -g @qpd-v/mcp-server-ragdocs

对于其他问题,请检查:

  • Docker 日志:docker logs $(docker ps -q --filter ancestor=qdrant/qdrant)
  • Ollama 状态:ollama list
  • Node.js 版本:node -v(应为 16 或更高版本)

贡献

欢迎贡献!请随时提交 Pull Request。

相关 MCP 服务