项目简介

Omnisearch MCP Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为LLM客户端提供统一的接口,访问多种搜索引擎和AI工具。它集成了 Tavily, Perplexity, Kagi, Jina AI, Brave, 和 Firecrawl 等服务,提供全面的搜索、AI响应、内容处理和增强功能。

主要功能点

  • 统一搜索: 集成多种搜索引擎,包括 Tavily, Brave, 和 Kagi,提供全面的网络搜索能力,满足不同场景下的信息检索需求。
  • AI 响应: 利用 Perplexity AI 和 Kagi FastGPT 等先进的AI模型,为用户的问题生成智能回复,并提供引用来源。
  • 内容处理: 支持多种内容处理工具,包括 Jina AI Reader, Kagi Summarizer, Tavily Extract 和 Firecrawl 系列工具,能够从网页中提取、总结和分析内容,并支持网页抓取和数据结构化。
  • 功能增强: 提供额外的知识索引和事实核查能力,例如 Kagi Enrichment 和 Jina AI Grounding,帮助提升LLM应用的知识覆盖度和信息准确性。
  • 灵活配置: 设计为即插即用,用户只需配置所需的API密钥,服务器将自动检测并启用相应的服务,无需复杂的配置过程。

安装步骤

  1. 克隆仓库代码:
    git clone https://github.com/spences10/mcp-omnisearch.git
    cd mcp-omnisearch
  2. 安装依赖:
    pnpm install
  3. 构建项目:
    pnpm run build

服务器配置

Omnisearch MCP Server 需要通过 MCP 客户端进行配置。您需要在您的 MCP 客户端(例如 Cline 或 Claude Desktop)中添加服务器配置信息。

以下是针对不同 MCP 客户端的配置示例,您需要根据您的实际使用环境进行选择和调整。请注意,您只需要配置 MCP 服务器的启动命令和参数,无需编写代码。

Cline 配置示例 (JSON):

{
	"mcpServers": {
		"mcp-omnisearch": {
			"command": "node",
			"args": ["/path/to/mcp-omnisearch/dist/index.js"],
			"env": {
				"TAVILY_API_KEY": "your-tavily-key",
				"PERPLEXITY_API_KEY": "your-perplexity-key",
				"KAGI_API_KEY": "your-kagi-key",
				"JINA_AI_API_KEY": "your-jina-key",
				"BRAVE_API_KEY": "your-brave-key",
				"FIRECRAWL_API_KEY": "your-firecrawl-key"
			},
			"disabled": false,
			"autoApprove": []
		}
	}
}

Claude Desktop with WSL 配置示例 (JSON):

{
	"mcpServers": {
		"mcp-omnisearch": {
			"command": "wsl.exe",
			"args": [
				"bash",
				"-c",
				"TAVILY_API_KEY=key1 PERPLEXITY_API_KEY=key2 KAGI_API_KEY=key3 JINA_AI_API_KEY=key4 BRAVE_API_KEY=key5 FIRECRAWL_API_KEY=key6 node /path/to/mcp-omnisearch/dist/index.js"
			]
		}
	}
}

配置参数说明:

  • '"mcp-omnisearch"': 服务器名称,您可以自定义。
  • '"command": "node"': 启动服务器的命令,这里使用 'node' 运行 JavaScript 代码。
  • '"args": ["/path/to/mcp-omnisearch/dist/index.js"]': 启动参数,指向 'mcp-omnisearch/dist/index.js' 文件的绝对路径请务必将其替换为您本地仓库中 'dist/index.js' 文件的实际路径。
  • '"env"': 环境变量配置,用于设置API密钥。
    • '"TAVILY_API_KEY": "your-tavily-key"': Tavily 搜索的 API 密钥,请替换为您的 Tavily API 密钥。如果您不使用 Tavily 搜索,可以省略此项。
    • '"PERPLEXITY_API_KEY": "your-perplexity-key"': Perplexity AI 的 API 密钥,请替换为您的 Perplexity API 密钥。
    • '"KAGI_API_KEY": "your-kagi-key"': Kagi 服务(包括搜索、FastGPT、Summarizer 等)的 API 密钥。
    • '"JINA_AI_API_KEY": "your-jina-key"': Jina AI 服务(包括 Reader, Grounding 等)的 API 密钥。
    • '"BRAVE_API_KEY": "your-brave-key"': Brave 搜索的 API 密钥。
    • '"FIRECRAWL_API_KEY": "your-firecrawl-key"': Firecrawl 服务(包括 Scrape, Crawl, Map, Extract, Actions 等)的 API 密钥。
    • 请根据您需要使用的服务,配置相应的API密钥。您不需要配置所有API密钥,只需配置您拥有的API密钥即可。服务器将自动检测可用的服务。
  • '"disabled": false': 设置为 'false' 表示启用该服务器。
  • '"autoApprove": []': 自动批准工具列表,默认为空,表示需要手动批准工具调用。

重要提示:

  • 路径替换: 请务必将配置示例中的 '/path/to/mcp-omnisearch/dist/index.js' 替换为您本地 'mcp-omnisearch/dist/index.js' 文件的绝对路径。您可以使用 'pwd' 命令(在仓库目录下执行)和手动拼接相对路径的方式获取绝对路径。
  • API 密钥: 请替换示例中的 '"your-tavily-key"' 等为您的实际 API 密钥。您可以访问各个服务提供商的开发者平台获取 API 密钥。
  • 环境变量: API 密钥也可以通过系统环境变量配置,而无需直接写入配置文件。

基本使用方法

  1. 启动 MCP 客户端: 启动您配置了 Omnisearch MCP Server 的 MCP 客户端(如 Cline 或 Claude Desktop)。
  2. 连接服务器: MCP 客户端应该会自动连接到 Omnisearch MCP Server。您可以在客户端的服务器列表中查看连接状态。
  3. 在 LLM 应用中使用工具: 在您的 LLM 应用中,您可以像使用其他 MCP 工具一样调用 Omnisearch MCP Server 提供的工具。工具名称和参数请参考仓库的 README 文档或通过 MCP 客户端的工具列表查看。
    • 例如,要使用 Tavily 搜索,您可以调用 'tavily_search' 工具,并提供 'query' 参数作为搜索关键词。
    • 要使用 Perplexity AI 获取智能回复,您可以调用 'perplexity_search' 工具,并提供 'query' 参数作为问题。
    • 要处理网页内容,您可以使用 'jina_reader_process', 'kagi_summarizer_process', 'firecrawl_scrape_process' 等工具,并提供 'url' 参数作为网页链接。

示例工具调用 (JSON):

{
  "action": "call_tool",
  "tool_name": "tavily_search",
  "tool_arguments": {
    "query": "最新的量子计算进展"
  }
}

请根据您的需求选择合适的工具,并参考仓库文档了解每个工具的详细参数和使用方法。

信息

分类

网页与API