询问谷歌MCP服务器
ask-google-mcp 是一个公开单个工具的stdio MCP服务器, ask_google.
该工具在启用谷歌搜索的情况下向双子座发送一个问题,然后返回:
- 综合答案
- 附加源链接
- Gemini执行了附加搜索查询
这适用于需要MCP客户端(如Claude Code)中的当前web信息的代理工作流。
它做什么
ask_google 当代理需要不应仅从过时的训练数据中回答的信息时,它很有用,例如:
- 最新版本、发布和更改日志
- 当前文档、标准或API更改
- 当前产品或库之间的比较
- 最近的公告或状态检查
- 带有引文的简短网络研究任务
服务器有意缩小范围:
- 一个MCP工具:
ask_google - 仅限stdio传输
- 无web用户界面
- 无HTTP服务器
推荐设置:Claude Code用户作用域
我查看了本地的Claude Code CLI帮助。
claude mcp --help 这表明 add 支持范围 local, user,以及 project,以及 claude mcp add --help 显示默认范围为 local.
如果您希望在所有项目中都能使用此功能,请使用 --scope user.
选项1:全局从npm安装
npm install -g @gpriday/ask-google-mcp然后将其添加到用户范围的Claude Code中,并直接在MCP配置中设置API密钥:
claude mcp add --scope user -e GOOGLE_API_KEY=your_api_key_here ask-google -- ask-google-mcp验证它:
claude mcp get ask-google
claude mcp list选项2:使用本地结账
这更有利于开发,而不是正常使用。
git clone https://github.com/gpriday/ask-google-mcp.git
cd ask-google-mcp
npm install然后使用Claude Code注册该结账:
claude mcp add --scope user -e GOOGLE_API_KEY=your_api_key_here ask-google -- node /absolute/path/to/ask-google-mcp/src/index.js需求
- Node.js
>=20 - Google AI Studio API密钥,可访问Gemini
在此处获取API密钥:
- https://aistudio.google.com/apikey
配置实际上是如何工作的
服务器按以下顺序加载环境变量:
process.cwd()/.env~/.env- 现有过程环境变量
这意味着:
- 它确实读过
~/.env - 除非服务器进程从该目录启动,否则它不会读取固定的存储库根目录
- 对于Claude代码,通过
claude mcp add -e GOOGLE_API_KEY=...是最清晰、最可靠的设置
实时工具调用所需的最小变量:
GOOGLE_API_KEY=your_api_key_here可选变量:
ASK_GOOGLE_TIMEOUT_MS=300000
ASK_GOOGLE_MAX_RETRIES=3
ASK_GOOGLE_INITIAL_RETRY_DELAY_MS=1000
# Auto-routing (on by default)
# ASK_GOOGLE_ROUTER_ENABLED=true
# ASK_GOOGLE_ROUTER_MODEL=flash-lite
# ASK_GOOGLE_ROUTER_TIMEOUT_MS=5000
# ASK_GOOGLE_ROUTER_FALLBACK_MODEL=flash
# Optional model alias overrides
# ASK_GOOGLE_MODEL_PRO=gemini-3.1-pro-preview
# ASK_GOOGLE_MODEL_FLASH=gemini-3-flash-preview
# ASK_GOOGLE_MODEL_FLASH_LITE=gemini-3.1-flash-lite-preview运行时行为
- 即使发生以下情况,服务器也会启动
GOOGLE_API_KEY不见了。 - MCP客户端仍然可以在没有密钥的情况下初始化和列出工具。
- 这
ask_google工具本身返回一个[AUTH_ERROR]如果没有钥匙呼叫。 - 请求超时后
ASK_GOOGLE_TIMEOUT_MS毫秒,除非你覆盖它。 - 对于可重试的上游故障,启用了重试。
工具参考
工具名称
ask_google
输入
question-必填字符串,1到4000个字符(也可作为query别名;不要同时设置)model-可选:auto(默认),pro,flash,或flash-lite
模型别名
pro->gemini-3.1-pro-previewflash->gemini-3-flash-previewflash-lite->gemini-3.1-flash-lite-preview
如果谷歌重命名预览模型,这些默认值可以用环境变量覆盖。
自动布线(默认)
当 model 是 auto (默认),服务器在Flash Lite上运行一个微小的分类器调用,根据查询复杂性选择下游层:
- 闪光灯 -简单查找、单一事实、当前版本、API签名、数学、琐事
- 闪光 --研究简报、多源比较、需要当前语法的代码生成、“X中发生了什么变化”问题
- 专业版 --深入推理、权衡建议、架构/战略/迁移决策、意见问题
路由器具有严格的超时(默认为5秒)和严格的JSON枚举输出。如果超时、失败或返回不可用的内容,服务器将回退到 flash (可通过以下方式配置 ASK_GOOGLE_ROUTER_FALLBACK_MODEL)并继续进行正常的接地呼叫。
您仍然可以固定特定型号(pro, flash, flash-lite)绕过路由器。要完全禁用自动路由并恢复旧的默认模型行为,请设置 ASK_GOOGLE_ROUTER_ENABLED=false.
路由决策出现在响应中 diagnostics.router 在诊断脚注文本中(例如。, model=auto→pro · router=0.4s).
工具调用示例
当前基本信息查询
{
"name": "ask_google",
"arguments": {
"question": "Find the current Node.js LTS version and its release date"
}
}更快的查找 flash
{
"name": "ask_google",
"arguments": {
"question": "What is the latest stable TypeScript release?",
"model": "flash"
}
}研究风格比较
{
"name": "ask_google",
"arguments": {
"question": "React 19 vs React 18: current migration risks, breaking changes, and official upgrade guidance"
}
}工具返回什么
该工具返回的文本内容包括:
- 双子座的回答
- 一
Sources服务器附加的部分 - 一
Search queries performed服务器在可用时附加的部分
CLI使用情况
如果您全局安装了该软件包:
ask-google-mcp如果您从本地结账处运行:
npm startCLI标志:
ask-google-mcp --help
ask-google-mcp --version环境验证
对于本地开发,请使用以下方式验证配置:
npm run check-env该脚本检查:
- 是否为本地
.env或~/.env存在 - 是否
GOOGLE_API_KEY看起来存在且非占位符 - Node.js版本兼容性
- 可选的运行时设置,如超时标志
克劳德桌面
Claude Code是主要的推荐工作流,但Claude Desktop也可以运行服务器。
全局安装示例:
{
"mcpServers": {
"ask-google": {
"command": "ask-google-mcp",
"env": {
"GOOGLE_API_KEY": "your_api_key_here"
}
}
}
}本地结账示例:
{
"mcpServers": {
"ask-google": {
"command": "node",
"args": ["/absolute/path/to/ask-google-mcp/src/index.js"],
"env": {
"GOOGLE_API_KEY": "your_api_key_here"
}
}
}
}发展
项目结构:
src/
ask-google.js
config.js
errors.js
index.js
prompt.js
retry.js
router.js
router-prompt.txt
sanitize.js
server.js
system-prompt.txt
tool.js
scripts/
check-env.js
test/
integration/
support/
unit/脚本:
npm start-启动MCP服务器npm test-运行单元测试npm run test:integration-启用时运行实时集成测试npm run test:all-运行两个套房npm run dev-与跑步node --watchnpm run check-env-验证环境配置
实时集成测试仅在两者都设置时运行:
RUN_LIVE_TESTS=1
GOOGLE_API_KEY=your_api_key_here错误类别
工具故障以MCP错误的形式出现,并显示分类消息:
[AUTH_ERROR]-API密钥丢失或无效[QUOTA_ERROR]-超出配额或费率限制[TIMEOUT_ERROR]-请求超时[API_ERROR]-其他Gemini/API故障
许可证
麻省理工学院
