搜索协议服务器

OpenDeepSearch MCP Server是一个模型上下文协议服务器,为LLM应用程序提供与OpenDeepSearch搜索功能交互的标准化接口。

  • by sengokudaikon
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 sengokudaikon/opendeepsearch_mcp

使用说明

OpenDeepSearch MCP服务器

这是一个用于OpenDeepSearch的模型上下文协议(MCP)服务器,允许LLM应用程序与OpenDeepSequest的搜索功能进行交互。

特性

  • 将OpenDeepSearch的搜索功能作为MCP工具公开
  • 与Claude Desktop和其他MCP兼容客户端集成
  • 为LLM应用程序访问web搜索功能提供标准化接口

设置

此项目使用 uv 用于依赖性管理。

  1. 安装 uv:按照说明操作 这里.
  2. 同步依赖关系:导航到 mcp_server 目录并运行:
    uv sync
    
    这将基于以下内容安装依赖项 pyproject.toml 和 uv.lock.

配置

服务器需要某些环境变量才能正常工作,尤其是底层服务的API键。这些可以直接在您的环境中设置,也可以通过MCP客户端配置传递(例如,使用Smithery CLI)。

变量 描述 必填 默认 备注
LLM提供商 (至少提供一个)
OPENAI_API_KEY OpenAI LLM的API密钥。 可选 无 如果使用OpenAI模型,则需要。
OPENAI_BASE_URL OpenAI兼容端点的自定义基本URL。 可选 无
ANTHROPIC_API_KEY 人类LLM的API密钥。 可选 无 如果使用Anthropic模型,则需要。
OPENROUTER_API_KEY OpenRouter的API密钥。 可选 无 如果使用OpenRouter型号,则需要。
FIREWORKS_API_KEY Fireworks AI的API密钥。 可选 无 如果使用Fireworks模型,则需要。
GEMINI_API_KEY Google Gemini的API密钥。 可选 无 如果使用Gemini型号,则需要。
AZURE_API_KEY Azure OpenAI服务的API密钥。 可选 无 如果使用Azure OpenAI模型,则需要。
AZURE_API_BASE Azure OpenAI服务的API基本URL。 可选 无 如果使用Azure OpenAI模型,则需要。
AZURE_API_VERSION Azure OpenAI服务的API版本。 可选 无 如果使用Azure OpenAI模型,则需要。
AZURE_DEPLOYMENT_ID Azure OpenAI服务的部署ID。 可选 无 如果使用Azure OpenAI模型,则需要。
DEEPSEEK_API_KEY DeepSeek的API密钥。 可选 无 如果使用DeepSeek模型,则需要。
搜索提供程序
SERPER_API_KEY Serper搜索提供商的API密钥。 可选 无 如果是必需的 search_provider 设置为 'serper' (默认情况下或通过工具参数)。
SEARXNG_INSTANCE_URL SearXNG实例的URL。 可选 无 如果是必需的 search_provider 设置为 'searxng' (默认情况下或通过工具参数)。
SEARXNG_API_KEY SearXNG实例的API密钥(如果实例需要)。 可选 无 如果使用 search_provider 设置为 'searxng'.
重新排名
JINA_API_KEY Jina AI Reranker的API密钥。 可选 无 如果是必需的 reranker 设置为 'jina' (默认情况下或通过工具参数)。
其他工具
WOLFRAM_ALPHA_APP_ID WolframAlpha工具集成的应用程序ID(如果在代理中启用)。 可选 无
服务器行为
LOG_LEVEL 控制服务器的日志记录详细程度(调试、信息、警告、错误、严重)。 可选 信息 也可以通过设置 --log-level 传递的CLI参数 smithery.yaml.

注: API键作为参数直接传递给 perform_search 工具(serper_api_key, searxng_api_key, jina_api_key)将临时覆盖该特定调用的环境变量。

使用Smithery CLI

您可以使用Smithery CLI和提供的 smithery.yaml 配置文件。这使您可以轻松管理所需的环境变量。

# Example: Run with OpenRouter key and Serper key
npx -y @smithery/cli@latest run . --config '{"openrouterApiKey":"sk-or-...", "serperApiKey":"your-serper-key"}'

# Example: Run with OpenAI key and SearXNG
npx -y @smithery/cli@latest run . --config '{"openaiApiKey":"sk-...", "searxngInstanceUrl":"https://your-searxng-instance.com"}'

# Example: Run with Gemini key
npx -y @smithery/cli@latest run . --config '{"geminiApiKey":"..."}'

# Example: Run with Azure keys
npx -y @smithery/cli@latest run . --config '{"azureApiKey":"...", "azureApiBase":"https://your-azure.openai.azure.com/", "azureApiVersion":"2024-02-01", "azureDeploymentId":"your-deployment"}'

这 smithery.yaml 文件定义了必要的配置模式。有关所有可用选项,请参阅它。

发展

此软件包遵循MCP规范,并通过OpenDeepSearch提供搜索功能的工具。