项目简介

II-Researcher MCP服务器是一个基于Model Context Protocol (MCP) 构建的应用后端,它将II-Researcher深度搜索Agent的能力以标准化的MCP工具形式对外提供。通过此服务器,LLM客户端可以注册并调用名为 'search' 的工具,以执行复杂的网络信息检索和问题解答任务。服务器简化了LLM应用与深度搜索功能的集成过程,使得开发者可以专注于LLM应用本身,而无需深入研究底层的搜索和信息处理逻辑。

主要功能点

  • 智能网络搜索: 利用集成在II-Researcher中的智能搜索Agent,提供精准的网络信息检索能力。
  • MCP工具注册与执行: 实现了MCP协议,可以将深度搜索功能注册为标准化的 'search' 工具,供兼容MCP协议的LLM客户端调用。
  • 资源管理: 服务器可以管理和维护网络搜索过程中产生的知识资源,为后续的LLM调用提供上下文信息。
  • 简化集成: 通过MCP协议,简化了LLM客户端集成深度搜索功能的流程,降低了开发复杂度和提高了系统的可扩展性。
  • 环境配置灵活: 支持通过环境变量进行详细配置,包括API密钥、模型选择、性能参数等,方便用户根据自身需求进行定制。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/Intelligent-Internet/ii-researcher.git
    cd ii-researcher
  2. 安装Python包:

    pip install -e .
  3. 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据需要编辑 '.env' 文件,填入API密钥 (如 OpenAI API Key, Tavily API Key, SerpAPI API Key, Firecrawl API Key) 和其他配置项 (如 'OPENAI_BASE_URL', 模型配置, 超时设置等)。

    关键环境变量说明:

    • 'OPENAI_API_KEY': 用于访问OpenAI或其他兼容LLM服务的API密钥。
    • 'TAVILY_API_KEY', 'SERPAPI_API_KEY', 'FIRECRAWL_API_KEY': 用于配置不同的搜索和抓取服务提供商的API密钥,根据您选择的服务商配置。
    • 'OPENAI_BASE_URL': 如果您使用本地LiteLLM服务器或其他兼容OpenAI API的服务器,请设置此项。
  4. 启动LiteLLM (本地LLM服务器,可选): 为了使用本地LLM或通过OpenRouter等服务,您可能需要配置和启动LiteLLM。按照仓库 'README.md' 中的步骤配置 'litellm_config.yaml' 文件,并运行 'litellm --config litellm_config.yaml' 启动LiteLLM服务器。

  5. 启动MCP服务器: 运行 'mcp/server.py' 脚本即可启动MCP服务器。

    python mcp/server.py

服务器配置 (MCP客户端配置)

MCP客户端需要配置以下JSON格式信息才能连接到 II-Researcher MCP 服务器。以下是配置示例,请根据您的实际环境进行调整。

{
  "server name": "II-Researcher",
  "command": "python",
  "args": [
    "mcp/server.py"
  ],
  "env": {
    // 环境变量配置,例如 API 密钥等,如果已经在系统环境变量中配置,此处可以留空
    // "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY",
    // "TAVILY_API_KEY": "YOUR_TAVILY_API_KEY"
    // ... 其他环境变量
  }
}

配置参数说明:

  • 'server name': MCP服务器的名称,设置为 '"II-Researcher"'。
  • 'command': 启动MCP服务器的命令,通常为Python解释器路径 '"python"'。
  • 'args': 启动命令的参数,指定MCP服务器脚本路径 '["mcp/server.py"]'。
  • 'env': 可选的环境变量配置,如果您的API密钥等敏感信息没有在系统环境变量中配置,可以在此处以键值对的形式添加。注意:生产环境中,建议使用更安全的方式管理密钥,例如环境变量或密钥管理工具,避免硬编码在配置文件中。

基本使用方法

  1. 安装MCP客户端: 确保您的LLM客户端已安装并配置了MCP客户端功能 (例如 Claude 桌面应用需要安装 MCP 集成)。

  2. 配置MCP客户端: 在LLM客户端中,按照其MCP配置说明,填入上述JSON格式的服务器配置信息。

  3. 调用 'search' 工具: 在LLM客户端中,您可以使用类似 '@tool_code search(question="your question")' 的语法来调用 II-Researcher MCP 服务器提供的 'search' 工具。将 '"your question"' 替换为您希望进行深度搜索的问题或查询。

  4. 获取搜索结果: LLM客户端将通过MCP协议与 II-Researcher MCP 服务器通信,服务器执行深度搜索后,会将搜索结果返回给LLM客户端,您可以在LLM应用中进一步处理和利用这些结果。

例如在 Claude 中使用:

按照仓库 'README.md' 中 "Using MCP" -> "Integrating with Claude" 的步骤进行操作,即可在 Claude 中集成和使用 II-Researcher MCP 服务器的深度搜索功能。

信息

分类

网页与API