Google Search MCP 服务器(模型上下文协议)添加福利群:解决AI开发者的「MCP实战痛点」一个提供 Google 搜索功能和网页内容分析工具的 MCP(模型上下文协议)服务器。该服务器使 AI 模型能够以编程方式执行 Google 搜索并分析网页内容。
npm install
npm run build
您可以将这些设置为系统环境变量,或在 MCP 设置文件中进行配置。
所需环境变量:
GOOGLE_API_KEY:您的 Google API 密钥GOOGLE_SEARCH_ENGINE_ID:您的自定义搜索引擎 ID%APPDATA%/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):{
"mcpServers": {
"google-search": {
"autoApprove": [
"google_search",
"extract_webpage_content",
"extract_multiple_webpages"
],
"disabled": false,
"timeout": 60,
"command": "node",
"args": [
"/path/to/google-search-mcp-server/dist/google-search.js"
],
"env": {
"GOOGLE_API_KEY": "your-google-api-key",
"GOOGLE_SEARCH_ENGINE_ID": "your-custom-search-engine-id"
},
"transportType": "stdio"
}
}
}

启动 MCP 服务器:
npm run start
搜索 Google 并返回相关结果。该工具使用 Google 搜索引擎查找网页、文章和特定主题的信息。
{
"name": "google_search",
"arguments": {
"query": "your search query",
"num_results": 5, // 可选,默认值:5
"site": "example.com", // 可选,限制结果为特定网站
"language": "en", // 可选,按语言过滤(ISO 639-1 代码)
"dateRestrict": "m6", // 可选,按日期过滤(例如,"m6" 表示过去 6 个月)
"exactTerms": "exact phrase", // 可选,搜索确切短语
"resultType": "news", // 可选,指定类型(新闻、图片、视频)
"page": 2, // 可选,分页的页码(从 1 开始)
"resultsPerPage": 10, // 可选,每页结果数(最大:10)
"sort": "date" // 可选,按 "date" 或 "relevance" 排序(默认)
}
}

响应包括:
提取并分析网页内容,将其转换为可读文本。该工具获取主要内容,同时去除广告、导航元素和其他杂乱内容。
{
"name": "extract_webpage_content",
"arguments": {
"url": "https://example.com",
"format": "markdown" // 可选,格式选项:"markdown"(默认)、"html" 或 "text"
}
}

响应包括:
在单个请求中提取并分析多个网页的内容。适用于比较不同来源的信息或收集关于某个主题的全面信息。
{
"name": "extract_multiple_webpages",
"arguments": {
"urls": [
"https://example1.com",
"https://example2.com"
],
"format": "html" // 可选,格式选项:"markdown"(默认)、"html" 或 "text"
}
}

响应包括:
服务器提供详细的错误信息,包括:
服务器使用 TypeScript 构建,并使用 MCP SDK 提供标准化接口,使 AI 模型能够与 Google 搜索和网页内容分析工具进行交互。它由两个主要服务组成:
服务器使用缓存机制来提高性能并减少 API 调用。
如果您希望仅分发该工具的构建版本而不是源代码,可以按照以下步骤操作:
npm run build
# 创建一个发行目录
mkdir -p dist-package
# 复制编译后的 JavaScript 文件
cp -r dist dist-package/
# 复制包文件(不包括开发依赖)
cp package.json dist-package/
cp README.md dist-package/
# 为分发创建一个简化的 package.json
node -e "const pkg = require('./package.json'); delete pkg.devDependencies; delete pkg.scripts.build; delete pkg.scripts.dev; pkg.scripts.start = 'node dist/google-search.js'; require('fs').writeFileSync('dist-package/package.json', JSON.stringify(pkg, null, 2));"

# 仅安装生产依赖
npm install --production
# 启动服务器
npm start

这种方法允许您分发编译后的 JavaScript 文件,而无需暴露 TypeScript 源代码。用户仍需:
请注意,发行包中的 package.json 将仅包含生产依赖项和一组简化的脚本。
MIT