使用说明

项目简介

本项目 'google_search_mcp_server' 是一个实现了 Model Context Protocol (MCP) 的服务器,旨在为 Claude 等兼容 MCP 协议的 AI 助手提供实时的网页和图像搜索能力。它通过 Google Custom Search API 集成了两个核心工具,使得 AI 助手能够获取最新的在线信息和图像资源,从而增强其上下文理解和问题解决能力。

主要功能点

  • 网页搜索工具 (google_web_search): 使用 Google Custom Search API 执行网页搜索,帮助 AI 助手获取最新的网络信息,适用于回答时事新闻、查找资料、进行研究等场景。
  • 图像搜索工具 (google_image_search): 使用 Google Custom Search API 执行图像搜索,帮助 AI 助手查找与查询相关的图片,适用于需要视觉信息辅助的场景。
  • MCP 协议兼容: 遵循 MCP 协议标准,可以与任何兼容 MCP 协议的客户端(如 Claude、Cursor、VSCode 等)无缝集成。
  • JSON-RPC 通信: 使用标准的 JSON-RPC 协议与客户端进行通信。
  • Stdio 传输: 通过标准输入/输出 (stdio) 进行数据传输,易于部署和集成。
  • 速率限制: 内置简单的速率限制,以符合 Google Custom Search API 的免费配额 (每日100次查询)。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/hunter-arton/google_search_mcp_server.git
    cd google_search_mcp_server
  2. 安装依赖: 确保已安装 Node.js (v18 或更高版本) 和 npm。然后运行:

    npm install
  3. 配置 Google API 凭据:

    • 访问 Google Cloud Console 并创建一个新项目。
    • 启用 "Custom Search API"。
    • 创建 API 密钥。
    • 访问 Programmable Search Engine 创建一个新的可编程搜索引擎,选择 "搜索整个网络"。
    • 获取你的 Search Engine ID (cx 值)。
    • 在项目根目录下创建 '.env' 文件,并填入你的 API 密钥和 Search Engine ID:
      GOOGLE_API_KEY=你的_API密钥
      GOOGLE_CSE_ID=你的_Search_Engine_ID
  4. 构建服务器: 运行以下命令编译 TypeScript 代码:

    npm run build

    构建成功后,会在 'dist' 目录下生成 'index.js' 文件。

服务器配置

要将此 MCP 服务器连接到 MCP 客户端(例如 Claude Desktop, Cursor, VSCode with Claude),您需要在客户端中配置服务器信息。以下是通用的配置格式 (JSON),您需要根据您的客户端进行配置。

通用配置 (JSON 格式,用于 MCP 客户端配置):

{
  "mcpServers": {
    "google_search": {  // 服务器名称,在客户端中用于标识和调用
      "command": "node", // 启动服务器的命令,这里使用 node.js 运行时
      "args": [          // 启动命令的参数,指向编译后的服务器入口文件
        "/absolute/path/to/google-search-mcp-server/dist/index.js" //  **请替换为 'dist/index.js' 文件的绝对路径**
      ],
      "env": {           // 环境变量,用于传递 API 密钥和 Search Engine ID
        "GOOGLE_API_KEY": "你的_API密钥", // **请替换为您的 Google API 密钥**
        "GOOGLE_CSE_ID": "你的_Search_Engine_ID" // **请替换为您的 Google Search Engine ID**
      }
    }
  }
}

不同客户端配置示例:

  • Claude Desktop: 编辑 'claude_desktop_config.json' 文件(路径见 README),将上述 JSON 配置添加到 'mcpServers' 字段中。
  • VSCode with Claude (MCP Extension): 编辑 '.vscode/settings.json' 文件,将上述 JSON 配置添加到 'mcp.servers' 字段中。
  • Cursor: 在 Cursor 设置中搜索 "MCP",点击 "Add new MCP server",然后填入上述 JSON 配置。

注意:

  • 请务必将 '/absolute/path/to/google-search-mcp-server/dist/index.js', '你的_API密钥', '你的_Search_Engine_ID' 替换为您的实际路径和凭据。
  • 在客户端配置中,'command' 通常设置为 'node', 'args' 是指向 'dist/index.js' 的绝对路径。环境变量 'env' 用于安全地传递 API 密钥,避免硬编码在代码中。
  • 配置完成后,重启 MCP 客户端以加载新的服务器配置。

基本使用方法

成功连接 MCP 服务器后,您可以在 MCP 客户端 (例如 Claude) 中直接使用 'google_web_search' 和 'google_image_search' 这两个工具。

例如,在 Claude 中,您可以提问类似以下问题:

  • "使用网页搜索查找最新的可再生能源新闻"
  • "使用图像搜索查找电动汽车的图片"
  • "日本最受欢迎的旅游目的地有哪些?用网页搜索查一下"

Claude 会根据您的提问,智能地调用相应的搜索工具,并将搜索结果作为上下文信息提供给您,从而给出更准确和及时的回答。

您也可以通过手动构造 JSON-RPC 请求来测试服务器,具体方法请参考 README 文档中的 "Manual Testing" 部分。

信息

分类

网页与API