Serper Search MCP Server v2.0.1-企业版
🚀 企业级谷歌搜索MCP服务器 随着 双重架构:用于集成的JavaScript+用于企业开发的TypeScript。
👨💻 作者 SMLabs01中的SMJAHID 📦 NPM: serper-search-mcp 🐳 Docker: smjahid/server-serper-search 🔧 架构: JavaScript(初级)+TypeScript(企业模块化设计)
______________________________________________________________________
🏗️ 双重架构方法
此服务器提供 两全其美:
JavaScript版本(主要)
- 文件:
index.js-单文件部署 - 运输: 完全支持HTTP/SSE+STDIO
- 集成: 零构建过程,立即部署
- 用例: Kilo Code集成,部署简单
TypeScript版本(企业版)
- 结构:
src/-模块化企业架构 - 特征: 类型安全、更好的IDE支持、团队开发
- 构建:
npm run build创造dist/文件夹 - 用例: 大团队、可维护性、高级开发
🏗️ 企业架构
此服务器遵循企业级模式:
src/
├── api/
│ └── SerperAPI.ts # Serper API client abstraction
├── tools/
│ └── SearchTools.ts # Tool definitions and validation
├── utils/
│ └── ResultFormatter.ts # Response formatting utilities
├── server/
│ └── SerperMCPServer.ts # Main server implementation
├── types/
│ └── index.ts # TypeScript type definitions
└── index.ts # Application entry point特性
- 🔍 多类型搜索:网络、图片、视频、新闻和购物搜索功能
- 🚀 多运输:STDIO(默认)和HTTP/SSE传输模式
- 🌍 高级过滤:国家、语言、新鲜度和内容过滤器
- 🤖 AI总结:根据搜索结果生成摘要
- 🐳 Docker支持:使用smjahid命名空间的多阶段构建
- 📦 NPM包:具有完整CLI支持的TypeScript
- ⚡ 快速结果:具有错误处理功能的优化API客户端
- 🎯 结构化数据:干净的JSON响应非常适合AI处理
- 🔧 企业级就绪:模块化架构,便于维护
🚀 快速入门和集成指南
🎯 使用JavaScript版本(index.js)集成:
# No build process required
node index.js --help
# HTTP transport ready
SERPER_MCP_TRANSPORT=http SERPER_MCP_PORT=8080 node index.js
# Docker integration
docker run -e SERPER_API_KEY=your_key smjahid/server-serper-search:2.0.0为什么使用JavaScript进行集成:
- ✅ 零配置 -无需构建步骤
- ✅ HTTP传输 -完全支持MCP SSE
- ✅ 部署简单 -单文件执行
- ✅ 标准方法 -与其他MCP服务器一样
企业发展(可选)
🏗️ 使用TypeScript版本(src/)发展:
# Build TypeScript
npm run build
# Use compiled version
node dist/index.js --help
# Enterprise benefits
# - Type safety and IntelliSense
# - Modular architecture
# - Better for large teams安装和设置
选项1:NPX(建议集成)
- 获取Serper API密钥 从 Serper.dev
- 配置MCP服务器 在MCP设置中:
{
"mcpServers": {
"serper-search": {
"command": "npx",
"args": ["-y", "serper-search-mcp"],
"env": {
"SERPER_API_KEY": "Your Serper Api Key"
}
}
}
}- 重新启动MCP客户端
选项2:Docker
- 从Docker Hub拉取 (推荐):
docker pull smjahid/server-serper-search:2.0.0- 或在当地建造:
docker build -t smjahid/server-serper-search:2.0.0 .- 配置MCP服务器:
{
"mcpServers": {
"serper-search": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SERPER_API_KEY=your_actual_api_key_here",
"smjahid/server-serper-search:2.0.0"
]
}
}
}选项2.1:Docker编写(开发)
- 设置API密钥:
export SERPER_API_KEY="your_actual_api_key_here"- 从Docker Compose开始:
# Production mode
docker-compose up
# Development mode with hot reload
docker-compose --profile dev up- 访问服务器 在
http://localhost:8080
选项3:本地安装
- 克隆并安装:
git clone https://github.com/smjahid012/serper-search-mcp-server.git
cd server-serper-search
npm install- 设置环境变量:
export SERPER_API_KEY="your_actual_api_key_here"- 在本地运行:
# STDIO mode (default)
npm start
# HTTP mode
npm run http
# Show help
npm run help选项4:命令行界面
# Show all options
node index.js --help
# Run with custom options
node index.js --transport http --port 3000 --host 127.0.0.1
# Environment variables
SERPER_MCP_TRANSPORT=http SERPER_MCP_PORT=3000 node index.js用法
配置后,您可以使用MCP客户端中的搜索工具:
可用工具:
1. search_web -一般网络搜索
参数:
query(必填):搜索查询字符串(最多400个字符,50个单词)num_results(可选):要返回的结果数(1-20,默认值:10)country(可选):国家代码(默认值:“US”)search_lang(可选):搜索语言(默认:“en”)ui_lang(可选):用户界面语言(默认:“en-US”)freshness(可选):时间过滤器(“pd”、“pw”、“pm”、“py”)safesearch(可选):内容过滤(“关闭”、“中等”、“严格”)summary(可选):启用AI摘要(默认值:false)
例子:
// Advanced search with filtering
await callTool("search_web", {
query: "artificial intelligence recent news",
num_results: 15,
country: "US",
freshness: "pw", // Past week
safesearch: "moderate",
summary: true // Get AI summary
});2. search_images -图片搜索
参数:
query(必填):图像搜索查询num_results(可选):要返回的结果数(默认值:10)
例子:
// Search for AI-generated images
await callTool("search_images", {
query: "artificial intelligence artwork",
num_results: 8
});3. search_videos -视频搜索
参数:
query(必填):视频搜索查询num_results(可选):要返回的结果数(默认值:10)
例子:
// Search for tutorial videos
await callTool("search_videos", {
query: "machine learning tutorials",
num_results: 5
});4. search_news -新闻搜索
参数:
query(必填):新闻搜索查询num_results(可选):要返回的结果数(默认值:10)
例子:
// Get latest AI news
await callTool("search_news", {
query: "artificial intelligence breakthroughs 2024",
num_results: 10
});5. search_shopping -购物/产品搜索
参数:
query(必填):购物搜索查询num_results(可选):要返回的结果数(默认值:10)
例子:
// Search for products
await callTool("search_shopping", {
query: "wireless headphones under $100",
num_results: 5
});配置
环境变量
服务器支持以下环境变量:
| 变量 | 描述 | 默认值 | 必填 |
|---|---|---|---|
SERPER_API_KEY | 您的Serper API密钥 | - | ✅ |
SERPER_MCP_TRANSPORT | 运输方式 | stdio | ❌ |
SERPER_MCP_PORT | HTTP服务器端口 | 8080 | ❌ |
SERPER_MCP_HOST | HTTP服务器主机 | 0.0.0.0 | ❌ |
SERPER_MCP_LOG_LEVEL | 日志记录级别 | info | ❌ |
命令行选项
node index.js [options]
Options:
--transport Transport type (default: stdio)
--port HTTP server port (default: 8080)
--host HTTP server host (default: "0.0.0.0")
--log-level Logging level (default: "info")
--api-key Serper API key
--help Show help message搜索功能
服务器通过Serper API支持所有主要的谷歌搜索类型:
| 搜索类型 | 用例 | 包含的数据 |
|---|---|---|
| 网络 | 一般研究、内容发现 | 标题、URL、摘录、SEO数据 |
| 图像 | 人工智能数据集、创意工具、视觉研究 | 图像URL、缩略图、源页面 |
| 视频 | 学习、娱乐、研究 | 标题、频道、持续时间、缩略图 |
| 新闻 | 时事、趋势监测 | 标题、来源、发布日期 |
| 购物 | 电子商务,价格比较 | 产品,价格,评级,来源 |
使用场景
凭借这些全面的搜索功能,Serper MCP服务器可用于:
🤖 人工智能与机器学习
- 数据集集合:收集图像以训练计算机视觉模型
- 研究:查找最新论文、教程和教育视频
- 内容生成:为人工智能生成的材料提供多样化的内容
🔍 研究与分析
- 市场调研:跟踪产品价格、评论和竞争
- 趋势分析:监控新闻和社交媒体以了解新趋势
- 竞争情报:研究竞争对手的产品和战略
📈 商业智能
- 潜在客户开发:查找业务联系信息和公司数据
- 内容营销:发现热门话题和病毒式传播的内容
- SEO研究:分析搜索结果和排名因素
🎨 创造性工作
- 设计灵感:搜索视觉参考和创意资产
- 媒体研究:查找项目的视频、图像和音频
- 内容策展:收集博客、演示文稿和报告的材料
💼 电子商务与购物
- 价格监控:跟踪不同零售商的产品价格
- 产品研究:查找详细的产品信息和评论
- 市场分析:比较产品并找出市场差距
许可证
MIT许可证-有关详细信息,请参阅许可证文件。
支持
对于问题和疑问:
📋 版本历史和迁移指南
v2.0.0(最新)-企业版🚀
发布日期: 2024年10月 作者 SMLabs01中的SMJAHID
🎯 新功能:
- 🌐 多运输支持:HTTP/SSE+STDIO传输模式
- 🎛️ 高级过滤:国家、语言、新鲜度、内容过滤器
- 🤖 AI总结:根据搜索结果生成摘要
- 🔧 命令行界面:带有帮助和选项的完整CLI
- 🐳 Docker Compose:开发和生产环境
- ⚙️ 增强配置:环境变量和CLI选项
- 📦 企业架构:模块化TypeScript结构可用
🔧 改进:
- 📊 参数验证:查询长度限制和输入验证
- 🔍 增强搜索参数:完整的Serper API功能支持
- 📚 综合文档:完整的集成指南
- 🏗️ 更好的架构:改进了错误处理和日志记录
- 🚀 性能优化:更快的启动和响应时间
📁 文件结构:
JavaScript (Primary): index.js - Single file deployment
TypeScript (Enterprise): src/ (6 modules) - Modular architecture⬆️ 从v1.x迁移:
- ✅ 向后兼容:所有v1.x配置都有效
- ✅ 默认传输:STDIO(与v1.x相同)
- ✅ 新功能:通过参数选择加入
- ⚡ 无重大变更:现有集成继续工作
v1.1.0-多类型搜索扩展
补充: 图片、视频、新闻、购物搜索功能 增强: 结果格式和文件
v1.0.0-初始版本
特征: 基本的网络搜索、Docker/NPX支持、MCP合规性
______________________________________________________________________
📋 v2.0.0集成摘要
| 组件 | JavaScript版本 | TypeScript版本 | 代理就绪 |
|---|---|---|---|
| 主服务器 | ✅ index.js | ❌ src/ (企业) | ✅ JavaScript |
| 运输支持 | ✅ HTTP/SSE+STDIO | ✅ STDIO | ✅ JavaScript |
| 需要构建 | ❌ 否 | ✅ 是的(npm run build) | ✅ JavaScript |
| Docker Hub | ✅ smjahid/server-serper-search | ✅ 相同 | ✅ 两者 |
| 企业级就绪 | ❌ 简单 | ✅ 模块化结构 | ✅ TypeScript |
______________________________________________________________________
