配备谷歌搜索支持的Gemini MCP服务器
 ](https://nodejs.org/) 
概述
一个可投入生产的MCP(模型上下文协议)服务器,它集成了谷歌的Gemini 2.5 Pro模型,并具备实时谷歌搜索接地能力。这一最小化实现通过一个设计用于与MCP客户端无缝集成的强大工具,提供了当前信息检索功能。
特点/功能
- 实时信息通过谷歌搜索获取最新信息
- Gemini 2.5 Pro 集成利用谷歌最强大的AI模型
- 自动日期上下文在所有查询中动态包含今天的日期
- 零膨胀架构仅仅121行代码,2个依赖项,无需构建过程
- 专业MCP协议完全符合通过标准输入输出(stdio)的MCP JSON-RPC规范
- 生产就绪全面的错误处理和Google Cloud ADC认证
- 现场测试成功测试,使用当前新闻查询返回准确、最新的信息
先决条件
- Node.js 18.0.0 或更高版本
- 已启用Vertex AI API的Google Cloud项目
- 已安装Google Cloud CLI(gcloud)
- npm 或 yarn 包管理器
安装
- 克隆仓库
git clone https://github.com/jaysm03/gemini-grounded-search
cd gemini-grounded-search- 安装依赖项
npm install- 配置Google Cloud
# Set your Google Cloud project
export GOOGLE_CLOUD_PROJECT="your-project-id"
# Authenticate (creates Application Default Credentials)
gcloud auth application-default login- 可选:创建 .env 文件
cp .env.example .env
# Edit .env and add your Google Cloud project ID- 验证安装
node index.js预期输出: Gemini MCP server running
MCP设置配置
环境变量
创建一个 .env 项目根目录下的文件:
GOOGLE_CLOUD_PROJECT=your-project-id-here
# Optional: GOOGLE_CLOUD_LOCATION=us-central1| 变量 | 必需 | 默认值 | 描述 |
|---|---|---|---|
GOOGLE_CLOUD_PROJECT | 是 | - | 您的 Google Cloud 项目 ID |
GOOGLE_CLOUD_LOCATION | 编号 | us-central1 | Vertex AI 位置 |
MCP客户端配置
MCP服务器按需运行,并在需要时由MCP客户端自动启动。请使用以下设置配置您的MCP客户端:
对于Roo/Cline(VS Code)
配置文件位置:
- macOS(发音为“Mac OS”,全称为“Macintosh Operating System”,即“麦金塔操作系统”):
~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json - Windows:
%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\mcp_settings.json - Linux(发音:/ˈlɪnʊks/):
~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json
完整配置:
{
"mcpServers": {
"gemini-grounded-search": {
"command": "node",
"args": [
"/absolute/path/to/gemini-grounded-search/index.js"
],
"env": {
"GOOGLE_CLOUD_PROJECT": "your-project-id"
},
"alwaysAllow": [
"grounded_search"
],
"timeout": 3600
}
}
}对于Claude Desktop
配置文件位置:
- macOS(苹果电脑操作系统):
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
完整配置:
{
"mcpServers": {
"gemini-grounded-search": {
"command": "node",
"args": ["/absolute/path/to/gemini-grounded-search/index.js"],
"env": {
"GOOGLE_CLOUD_PROJECT": "your-project-id"
},
"alwaysAllow": [
"grounded_search"
]
}
}
}重要的配置注意事项:
- 替换
/absolute/path/to/gemini-grounded-search/以及您项目目录的实际绝对路径 - 替换
your-project-id使用您实际的Google Cloud项目ID - 在路径中使用正斜杠(/),即使在Windows系统上也是如此
- 这个(或“它”)
timeout参数是可选的,默认为系统设置 - 配置更改后重启您的MCP客户端
用法
可用工具
grounded_search - 使用Gemini结合Google搜索进行实时信息查询
参数:
query(字符串,必填):当前信息的搜索查询
使用示例
基本搜索
{
"method": "tools/call",
"params": {
"name": "grounded_search",
"arguments": {
"query": "latest AI developments in 2025"
}
}
}时事新闻查询
{
"method": "tools/call",
"params": {
"name": "grounded_search",
"arguments": {
"query": "recent breakthroughs in quantum computing"
}
}
}技术信息
{
"method": "tools/call",
"params": {
"name": "grounded_search",
"arguments": {
"query": "Node.js 22 new features and release date"
}
}
}响应格式
Today's date: 2025-10-25
Query: [your query]
[Comprehensive response with current information from Google Search grounding]模型信息
双子座2.5专业版
这台服务器使用 双子座2.5专业版谷歌最强大的人工智能模型,具有以下特点:
- 高级推理卓越的分析和解决问题的能力
- 谷歌搜索锚定(或“谷歌搜索定位”)通过谷歌搜索实时获取最新信息
- 大上下文窗口处理包含丰富上下文的复杂查询
- 多模态理解处理并理解各种类型的信息
- 生产就绪企业级的可靠性和性能
何时使用此服务器
- 最新信息当你需要最新信息,而这些信息可能并不包含在模型的训练数据中时
- 实时数据对于近期事件、新闻或发展的查询
- 事实核实将信息与当前网络资源进行核对
- 研究任务对于需要多个电流源的综合性研究
- 动态内容当信息频繁变化时(天气、股票价格、新闻)
Google Cloud 设置
1. 创建/选择 Google 云项目
gcloud projects create your-project-id
gcloud config set project your-project-id2. 启用Vertex AI API
gcloud services enable aiplatform.googleapis.com3. 设置身份验证
gcloud auth application-default login这会创建应用程序默认凭据(ADC),服务器使用这些凭据进行身份验证。
部署
生产部署考虑事项
安全性:
- 使用应用程序默认凭据安全地获取Google Cloud凭据
- 实施速率限制以防止滥用
- 所有外部通信均使用HTTPS
- 定期进行安全审计并更新依赖项
- 仅授权用户可访问API
监测:
- 监控 Google Cloud API 的使用情况和配额
- 跟踪响应时间和性能指标
- 建立错误追踪和警报系统
- 实现全面的日志记录以进行调试
可扩展性:
- 该服务器支持通过多个实例进行水平扩展
- 为高可用性部署实现负载均衡
- 监控资源使用情况并根据需要进行优化
- 考虑对频繁请求的信息进行缓存
环境设置:
- 在生产环境中使用像PM2这样的进程管理器进行部署
- 为不同阶段配置适当的环境变量
- 实施健康检查并设置自动重启
- 建立备份和恢复程序
服务器操作
MCP服务器按需运行:
- 当需要时,由MCP客户端自动启动
- 不使用时关闭以节省资源
- 无需手动管理服务器
- 支持来自多个客户端的并发请求
故障排除
常见问题
1. “需要设置GOOGLE_CLOUD_PROJECT环境变量”
export GOOGLE_CLOUD_PROJECT="your-project-id"或者添加到你的 .env 文件:
GOOGLE_CLOUD_PROJECT=your-project-id2. “无法初始化Gemini客户端”
- 确保已启用Vertex AI API:
gcloud services enable aiplatform.googleapis.com- 检查身份验证:
gcloud auth application-default login- 验证项目ID是否正确:
gcloud config get-value project3. “Gemini API错误:权限被拒绝”
- 确保您的账户拥有Vertex AI用户角色
- 在Google Cloud Console中检查项目计费是否已启用
- 验证API配额未超出
4. MCP客户端无法连接
- 验证绝对路径到
index.js在MCP配置中 - 检查 Node.js 版本(需 18+):
node --version- 确保
GOOGLE_CLOUD_PROJECT在MCP配置中设置 - 配置更改后重启您的MCP客户端
认证问题
验证ADC设置:
gcloud auth application-default print-access-token检查当前项目:
gcloud config list测试API连接性:
gcloud ai models list --region=us-central1配置问题
路径问题:
- 在配置文件中使用绝对路径
- 避免使用
~或路径中的环境变量 - 在Windows系统中也使用正斜杠(/)
权限错误:
- 确保项目目录的文件权限设置正确
- 检查 Node.js 是否具有执行权限
index.js
网络问题:
- 检查防火墙设置和网络连接
- 验证Google Cloud API端点是否可访问
- 确保没有代理问题阻碍API调用
调试模式
运行时记录错误日志:
GOOGLE_CLOUD_PROJECT=your-project-id node index.js 2>&1 | tee debug.log检查服务器启动情况:
node index.js
# Should output: "Gemini MCP server running"支持
对于问题:
- 请在Google Cloud Console中检查API配额和账单
- 检查MCP客户端日志中的连接错误
- 测试认证:
gcloud auth application-default print-access-token - 评论 Google Cloud Vertex AI 文档
- 检查 MCP协议文档
项目结构
gemini-grounded-search/
├── package.json # Dependencies and metadata
├── package-lock.json # Dependency lock file
├── index.js # Complete MCP server (121 lines)
├── .env.example # Environment variable template
├── .env # Environment variables (create from .env.example)
├── .gitignore # Git ignore rules
├── LICENSE # MIT License
├── CHANGELOG.md # Version history
├── README.md # This file
├── node_modules/ # Dependencies
└── docs/ # Additional documentation许可证
这个项目遵循MIT许可证授权——详见 许可证 请查阅文件以获取详细信息。
做出贡献
欢迎贡献!请随时提交拉取请求。对于重大更改,请先打开一个议题进行讨论,说明您希望做出的更改。
______________________________________________________________________
当前版本1.0.0\ 发布日期2025年10月25日\ Node.js18岁以上\ MCP协议1.0.1\ 模型Gemini 2.5 Pro 配备 Google 搜索基础支持
