{"slug": "how-to-search-google-from-claude-code-with-an-mcp-server", "title": "How to Search Google from Claude Code with an MCP Server", "summary": "A developer explains how to wire Claude Code to a Google Search MCP server, enabling the coding agent to perform web searches directly from the command-line terminal. The setup uses Ace Data Cloud's Serp MCP endpoint and requires a bearer token for authentication, with configuration options for local, user, or project scopes.", "body_md": "You are deep in a terminal session, debugging a server issue, and the one thing you need is a current search result without breaking your flow.\n\nThat is the small but useful problem this guide solves: wiring Claude Code to a Google Search MCP server so your coding agent can search from inside the command-line workflow.\n\nAfter the MCP server is configured, Claude Code can call a search tool directly from a session. In practice, that means you can ask questions like:\n\n```\nsearch nginx error 502 bad gateway upstream sent too big header how to fix\n```\n\nor:\n\n```\nsearch Kubernetes CronJob concurrencyPolicy official docs, difference between Forbid and Replace\n```\n\nThe underlying tool exposed by the server is:\n\n```\nserp_google_search\n```\n\nAccording to the Ace Data Cloud document, this tool supports Google search across web, images, news, videos, and related result types. It can also work with country, language, and time range options when you need more focused results.\n\nThis is not meant to replace careful documentation reading. The point is simpler: when you are already in Claude Code, the search step no longer requires copying an error message, switching to a browser, searching manually, then bringing the result back into your terminal context.\n\nThe setup uses Claude Code's MCP support and connects it to Ace Data Cloud's Serp MCP endpoint.\n\nThe endpoint from the documentation is:\n\n```\nhttps://serp.mcp.acedata.cloud/mcp\n```\n\nThe authentication shape is an HTTP header:\n\n```\nAuthorization: Bearer <your-token>\n```\n\nThe Claude Code command is:\n\n```\nclaude mcp add serp --transport http https://serp.mcp.acedata.cloud/mcp \\\n  -H \"Authorization: Bearer <your-token>\"\n```\n\nOne small detail matters here: use uppercase `-H`\n\n. In the documented command, `-H`\n\nis the header parameter. Lowercase `-h`\n\nis help, which is a surprisingly easy typo to make when you are moving fast.\n\nClaude Code supports different scopes for MCP configuration. The document calls out three practical choices:\n\n`local`\n\n: the default if you do not pass `-s`\n\n; applies only to the project directory where the command is run.`user`\n\n: pass `-s user`\n\n; makes the MCP server available across your projects.`project`\n\n: pass `-s project`\n\n; writes configuration to the project root `.mcp.json`\n\n, which can be shared with a team.For a personal workstation, I would usually start with a user-level config:\n\n```\nclaude mcp add serp -s user --transport http https://serp.mcp.acedata.cloud/mcp \\\n  -H \"Authorization: Bearer <your-token>\"\n```\n\nFor a team repository, project scope can be useful, but do not commit real tokens. A safer pattern is to use an environment-variable placeholder in the project config and let each developer provide their own secret locally.\n\nThe documented config locations are `~/.claude.json`\n\nfor local/user scopes and `.mcp.json`\n\nin the project root for project scope.\n\nOnce the server has been added, list your MCP servers:\n\n```\nclaude mcp list\n```\n\nYou should see `serp`\n\nmarked as connected. If it is not connected, the first things I would check are:\n\n`https://serp.mcp.acedata.cloud/mcp`\n\n?`-H`\n\nfor the header?`Authorization: Bearer <your-token>`\n\n?These checks catch most boring setup mistakes before you start debugging the wrong thing.\n\nWhen you are SSH'd into a machine and looking at unfamiliar logs, search can stay inside the same working context:\n\n```\nsearch nginx error 502 bad gateway upstream sent too big header how to fix\n```\n\nClaude Code can use the MCP tool, inspect search results, and help you reason about what to try next.\n\nFor API and infrastructure work, current docs often matter more than model memory. A query like this keeps the intent explicit:\n\n```\nsearch Kubernetes CronJob concurrencyPolicy official docs, difference between Forbid and Replace\n```\n\nThat phrasing nudges the search toward source material instead of random snippets.\n\nYou can also use time-sensitive research queries while planning an implementation:\n\n```\nsearch performance comparison of Python async ORM in 2025, SQLAlchemy 2.0 async vs Tortoise ORM\n```\n\nThis is useful when the answer depends on recent releases, benchmarks, or ecosystem changes.\n\nThe nice part of this integration is that it does not require changing your whole development environment. It is one MCP server, one endpoint, and one auth header. After that, the interaction becomes natural language inside Claude Code.\n\nIf you want the original reference with the exact command, scopes, and tool name, the Ace Data Cloud document is here: [https://platform.acedata.cloud/documents/claude-code-mcp-serp](https://platform.acedata.cloud/documents/claude-code-mcp-serp)", "url": "https://wpnews.pro/news/how-to-search-google-from-claude-code-with-an-mcp-server", "canonical_source": "https://dev.to/germey/how-to-search-google-from-claude-code-with-an-mcp-server-3n0i", "published_at": "2026-07-13 01:03:09+00:00", "updated_at": "2026-07-13 01:13:45.312993+00:00", "lang": "en", "topics": ["developer-tools", "ai-tools", "large-language-models"], "entities": ["Claude Code", "Ace Data Cloud", "Google Search", "MCP"], "alternates": {"html": "https://wpnews.pro/news/how-to-search-google-from-claude-code-with-an-mcp-server", "markdown": "https://wpnews.pro/news/how-to-search-google-from-claude-code-with-an-mcp-server.md", "text": "https://wpnews.pro/news/how-to-search-google-from-claude-code-with-an-mcp-server.txt", "jsonld": "https://wpnews.pro/news/how-to-search-google-from-claude-code-with-an-mcp-server.jsonld"}}