RAG多搜索MCP服务器

一个自定义的MCP服务器,提供基于LlamaIndex的检索增强生成(RAG)功能,并通过Google的Gemini 2.0 API和Linkup提供多种网络搜索选项。

  • by KunjShah01
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 kunjshah95/mcp-rag-search-server

使用说明

带RAG和多搜索的MCP服务器

一个定制的MCP(模型调用协议)服务器,通过谷歌的Gemini 2.0 API和Linkup,使用LlamaIndex和多个网络搜索选项提供RAG(Retrieval-Augeded Generation)功能。

特性

  • 使用本地文档的RAG工作流程
  • 多种网络搜索功能:
    • 谷歌的Gemini 2.0用于高级人工智能搜索
    • 传统网络搜索的链接
  • 使用FastMCP构建

设置

先决条件

  • Python 3.8或更高版本
  • Olama在本地安装了DeepSeek型号(或修改为使用您喜欢的型号)
  • Gemini API密钥(在https://ai.google.dev/)
  • 链接API密钥(可选)

安装

  1. 克隆此存储库:

    git clone <repository-url>
    cd own-mcp-server
    
  2. 安装所需的依赖项:

    pip install -r requirements.txt
    
  3. 设置环境变量(创建 .env 文件):

    # Required API keys
    GEMINI_API_KEY=your_gemini_api_key_here
    LINKUP_API_KEY=your_linkup_api_key_here
    
    # Optional configurations
    OLLAMA_HOST=http://localhost:11434
    
  4. 将文档添加到 data 目录(如果不存在,将自动创建)

运行服务器

使用以下命令启动服务器:

python server.py

用法

服务器提供以下工具:

  1. web_search:使用最佳可用搜索方法(首选Gemini 2.0,回退到Linkup)
  2. gemini_search:使用谷歌的Gemini 2.0 AI进行搜索
  3. linkup_search:使用链接搜索
  4. rag:使用RAG查询您的本地文档

必需的库

本项目使用:

  • 骆驼指数-核心RAG功能
  • ollama-本地LLM集成
  • 谷歌生成人工智能SDK-Gemini 2.0集成
  • Linkup SDK-网络搜索功能
  • FastMCP-MCP服务器实现
  • Python dotenv-环境管理
  • nest asyncio-异步支持

故障排除

如果您遇到问题:

  1. 确保Ollama正确安装并运行
  2. 拉取DeepSeek模型: ollama pull deepseek-r1:1.5b
  3. 如果您遇到Python 3.13兼容性问题,请考虑降级到Python 3.11或3.10
  4. 验证您的API密钥是否正确并具有必要的权限
  5. 对于Gemini 2.0问题,请确保您的API密钥可以访问最新的模型