agy-web-search-mcp
agy-web-search MCP
独立的 Streamable HTTP MCP:把 agy 的 Google 登录做成可部署的 /mcp 端点。Agent 里的名称是 agy,工具是 search_web(网页搜索)和 generate_image(生成图片)。本地、Cloudflare Workers、Vercel Edge 共用同一套 handler。
先部署,再打开网站用 Google 登录拿 session。服务端不必事先写入 AGY_REFRESH_TOKEN。
一键部署
内置了 agy 桌面端 OAuth 客户端,部署完直接打开网站 Sign in with Google。不必再填 AGY_OAUTH_CLIENT_ID / AGY_OAUTH_CLIENT_SECRET。
可选:设一个 MCP_AUTH_TOKEN,保护公开的 /mcp。Cloudflare 更合适:搜索经常超过 Vercel Hobby 的 10s 超时。
Related MCP server: Cloudflare Google OAuth MCP Server
Cloudflare Workers
npx wrangler login
npx wrangler secret put MCP_AUTH_TOKEN # 可选:自己生成一个 Bearer,保护 /mcp
npx wrangler deploy打开 https://agy-web-search-mcp.<subdomain>.workers.dev/,点 Sign in with Google。
agy 用的是桌面端 OAuth 客户端,只能回调 http://localhost:51121/oauth-callback。授权后那个页面会打不开,把地址栏完整 URL 贴回网站。登录成功后 session 写在这个浏览器的 localStorage,首页会显示已登录,并给出带 X-Agy-Refresh-Token 的 Grok 配置。
上线 MCP:https://agy-web-search-mcp.<subdomain>.workers.dev/mcp
首页监控在 Cloudflare 上记到 Durable Object,Grok 调 /mcp 之后刷新网站能看到成功/失败/耗时。本地 bun run dev 仍是进程内存。
Vercel
npx vercel env add MCP_AUTH_TOKEN # 可选
npx vercel --prodHobby 默认 10s 超时,搜索偶尔会不够;Cloudflare 更合适。
本地
bun run dev打开 http://127.0.0.1:8787/ 登录。本机回调由服务自己接住。如果本机已经 agy 登录过,也会自动读 ~/.gemini/antigravity-cli/antigravity-oauth-token。
侧边栏 工具测试 可以直接调 search_web / generate_image(和 Agent 一样 POST /mcp),不必先配 MCP 客户端。生图支持上传本地参考图,浏览器会读成 base64。调用会出现在监控里。
Grok
登录成功后首页点 一键复制,把 prompt 贴给 Agent,让它写入 MCP 配置。token 来自这个浏览器的 localStorage。远程一般是:
[mcp_servers.agy]
url = "https://agy-web-search-mcp.<subdomain>.workers.dev/mcp"
headers = { Authorization = "Bearer ${AGY_MCP_TOKEN}", "X-Agy-Refresh-Token" = "${AGY_REFRESH_TOKEN}" }AGY_MCP_TOKEN 就是 MCP_AUTH_TOKEN。页面 storage 只给网页自己用;Grok 调 /mcp 时必须带 header。也可以事后 wrangler secret put AGY_REFRESH_TOKEN,这样 Grok 就不用带 X-Agy-Refresh-Token。
本地:
[mcp_servers.agy]
url = "http://127.0.0.1:8787/mcp"可选:从本机 agy 文件导入
bun run import-agy从 token 文件抽出 refresh_token,写入 .dev.vars(已 gitignore)。
环境变量
变量 | 作用 |
| 可选。覆盖内置的 agy 桌面端 OAuth client id |
| 可选。覆盖内置的 agy 桌面端 OAuth client secret |
| 可选。自己的 Web 客户端回调,例如 |
| 可选。服务端保存的 Google refresh token |
| 保护 |
| 默认 |
| 默认 |
| 可选。覆盖 |
| 本地 token 文件覆盖路径 |
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote streamable-HTTP MCP server running on a single Cloudflare Worker. Your assistant gets live Airbnb, Amazon, Booking.com, Google Flights, Maps and Reddit data, social search on X, Instagram and TikTok, the Meta Ad Library, and image/video generation without any keys. Connect your own accounts to let it send WhatsApp or Telegram messages, work an IMAP inbox, manage Meta Ads campaigns and publish to X and LinkedIn. OAuth 2.1 with PKCE; stored credentials are AES-256-GCM encrypted.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP server for Firecrawl — web search, scraping, and biomedical/arXiv paper search.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables Google search queries and webpage content extraction through an MCP server deployed on Cloudflare Workers. Supports single and batch webpage content extraction with integrated OAuth authentication.1-
- FlicenseNot gradedqualityDmaintenanceA remote MCP server deployable on Cloudflare Workers that provides integrated Google OAuth authentication for secure tool access. It serves as a reference implementation for building persistent, authenticated MCP connections using Cloudflare Durable Objects and Streamable HTTP.1-
- AlicenseNot gradedqualityCmaintenanceA minimal MCP server that exposes a private SearXNG instance as a search tool over streamable-HTTP, enabling web search from the llama.cpp WebUI or any compatible MCP client.5MIT
- AlicenseAqualityFmaintenanceMCP server for web search powered by Google AI Mode (Gemini). Enables any AI agent to search the web in real-time for free and without rate limits.2181MIT