网页搜索与抓取服务

一个基于TypeScript的MCP服务器,提供使用Serper API的网页搜索和网页抓取功能,集成Claude Desktop以实现强大的网络搜索和内容提取功能。

  • by marcopesani
  • TypeScript
  • 本地部署
  • 171 星标
  • 更新于
在 GitHub 查看 marcopesani/mcp-server-serper

使用说明

服务器搜索和报废MCP服务器

一个基于类型脚本的MCP服务器,使用Serper API提供网络搜索和网页抓取功能。此服务器与Claude Desktop集成,可实现强大的网络搜索和内容提取功能。

特性

工具

  • google_search -通过Serper API进行网络搜索

    • 丰富的搜索结果,包括有机结果、知识图谱、“人们也问”和相关搜索
    • 支持地区和语言定位
    • 位置、分页、时间过滤器和自动更正的可选参数
    • 支持高级搜索运算符:
      • site:将结果限制到特定域
      • filetype:仅限于特定文件类型(例如“pdf”、“doc”)
      • inurl:搜索URL中包含单词的页面
      • intitle:搜索标题中有单词的页面
      • related:查找类似网站
      • cache:查看特定URL的Google缓存版本
      • before:YYYY-MM-DD格式的日期
      • after:YYYY-MM-DD格式的日期
      • exact:精确短语匹配
      • exclude:要从搜索结果中排除的术语
      • or:替代术语(OR运算符)
  • scrape -从网页中提取内容

    • 获取纯文本和可选的markdown内容
    • 包括JSON-LD和头部元数据
    • 保留文档结构

需求

  • Node.js>=18
  • Serper API密钥(设置为 SERPER_API_KEY 环境变量)

发展

安装依赖项:

npm install

构建服务器:

npm run build

对于自动重建的开发:

npm run watch

运行测试:

npm test                  # Run all tests
npm run test:watch       # Run tests in watch mode
npm run test:coverage    # Run tests with coverage
npm run test:integration # Run integration tests

环境变量

创建一个 .env 根目录中的文件:

SERPER_API_KEY=your_api_key_here

调试

由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员,可作为包脚本使用:

npm run inspector

检查器将提供一个URL,用于访问浏览器中的调试工具。

安装

通过Smithery安装

通过以下方式自动安装Serper Search and Scrape for Claude Desktop 铁匠铺:

npx -y @smithery/cli install @marcopesani/mcp-server-serper --client claude

克劳德桌面版

在以下位置添加服务器配置:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "serper-search": {
      "command": "npx",
      "args": ["-y", "serper-search-scrape-mcp-server"],
      "env": {
        "SERPER_API_KEY": "your_api_key_here"
      }
    }
  }
}

克莱恩

  1. 打开Cline扩展设置
  2. 打开“MCP服务器”选项卡
  3. 点击“配置MCP服务器”
  4. 添加服务器配置:
{
  "mcpServers": {
    "github.com/marcopesani/mcp-server-serper": {
      "command": "npx",
      "args": ["-y", "serper-search-scrape-mcp-server"],
      "env": {
        "SERPER_API_KEY": "your_api_key_here"
      },
      "disabled": false,
      "autoApprove": ["google_search", "scrape"]
    }
  }
}

其他Cline配置选项:

  • disabled:设置为 false 启用服务器
  • autoApprove:每次使用不需要明确批准的工具列表

光标

  1. 打开光标设置
  2. 打开“功能”设置
  3. 在“MCP服务器”部分,单击“添加新的MCP服务器”
  4. 选择一个名称,然后选择“命令”作为“类型”
  5. 在“命令”字段中,输入以下内容:
env SERPER_API_KEY=your_api_key_here npx -y serper-search-scrape-mcp-server

码头工人

您还可以使用Docker运行服务器。首先,建立形象:

docker build -t mcp-server-serper .

然后使用您的Serper API密钥运行容器:

docker run -e SERPER_API_KEY=your_api_key_here mcp-server-serper

或者,如果您在 .env 文件:

docker run --env-file .env mcp-server-serper

对于开发,您可能希望将源代码装载为卷:

docker run -v $(pwd):/app --env-file .env mcp-server-serper

注意:一定要更换 your_api_key_here 使用您的实际Serper API密钥。