Atlas / MCP servers / cmann50 / Chrome Google Search

Chrome Google SearchCAUTION

mcp/cmann50/chrome-google-search
Verdict
CAUTION
Grade
B
Trust score
85 /100
Exposed tools
2 2r · 0w · 0d
Transport
stdio
License
MIT
Stars
25
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

MCP tool for Google search and webpage content extraction using Chrome browser. Works with Claude to enable Google search and content fetching capabilities.

Quick Installation

  1. Configure Claude Desktop
  2. Open Claude Desktop on Mac
  3. Go to Claude > Settings > Developer > Edit Config
  4. Add the following to your config file:
{
"mcpServers": {
"mcp-chrome-google-search": {
"command": "npx",
"args": [
"-y",
"@cmann50/mcp-chrome-google-search"
]
}
}
}
  • Restart Claude Desktop
  1. First Time Setup
  2. Grant Accessibility Permissions
  3. On first run, approve macOS accessibility permissions prompt
  4. Navigate to: System Preferences > Security & Privacy > Privacy > Accessibility
  5. Add and enable permissions for your terminal app
  • Enable Chrome JavaScript from Apple Events
  • Open Chrome
  • Navigate to: View > Developer > Allow JavaScript from Apple Events
  • One-time setup only

Once configured, Claude will be able to perform Google searches and extract webpage content through Chrome when you make requests.

Key Advantages

  • Free to search google
  • Opens and small windows and uses your chrome browser, so should not get blocked
  • Since it is using your Chrome window it can access authenticated content. Claude can just open the URL in your browser.

Platform Support

  • ✅ macOS
  • ❌ Windows (not supported)
  • ❌ Linux (not supported)

Requirements

  1. macOS
  2. Google Chrome
  3. Node.js 20 or higher

Alternative Installation Methods

NPX Installation

npx mcp-chrome-google-search

Custom Installation

  1. Checkout from git
  2. Run npm run build
  3. Add to Claude config (use absolute path):
{
"google-tools": {
"command": "node",
"args": [
"/your/checkout/path/mcp/mcp-chrome-google-search/dist/index.js"
]
}
}
Read from source at commit 8b88e5f28465OBSERVED · 2026-10-09
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add mcp-chrome-google-search -- npx -y @cmann50/[email protected]
claude-desktop
{
  "mcpServers": {
    "mcp-chrome-google-search": {
      "command": "npx",
      "args": [
        "-y",
        "@cmann50/[email protected]"
      ]
    }
  }
}
03

Exposed tools (2)

2 read · 0 write · 0 destructive.

ToolRiskDescription
web-searchreadSearch webpages and get a specific page of results (each page has ~10 results). Optionally filter by site and timeframe.
web_fetchreadExtract readable text content from a webpage using Chrome browser automation.\n\nKey Features:\n- Returns main content text and optionally links
04

Trust audit

CAUTIONgrade B · trust 85/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (4 observation(s))
Network
declared (2 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (7)

HIGHPrompt injection · prompt.zero_width · CWE-94, CWE-1427
test/data/wikipedia.home.html:98
<a id="js-link-box-fa" href="//fa.wikipedia.org/" title="Fārsi — ویکیپدیا — دانشنامهٔ آزاد" class="link-box" data-slogan="دانشنامهٔ آزاد">
Why it matters. invisible characters in instruction text
Fix. strip non-printing characters
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/toolsImpl/searchTool/index.ts:1
import { runOsascript } from '../../utils/osascript.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/toolsImpl/searchTool/index.ts:2
import { buildGoogleSearchUrl } from '../../utils/url.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/toolsImpl/searchTool/index.ts:3
import type { SearchParams, SearchResult } from '../../types/search.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
src/toolsImpl/webFetchTool/index.ts:1
import { runOsascript } from '../../utils/osascript.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
test/integration/web-fetch.test.ts:1
import {getWebContent} from '../../src/toolsImpl/webFetchTool';
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@modelcontextprotocol/sdk, @types/cheerio, cheerio, zod, @types/jest, @types/node, jest, ts-jest
Why it matters. 9 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-09 · audit v0.4.1 · source sha 8b88e5f28465full audit observations/trust-audit/mcp-server/cmann50__chrome-google-search.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-098b88e5f28465CAUTIONB85first audit
06

Questions

What tools does Chrome Google Search expose?

2 in total: 2 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Chrome Google Search safe to connect to an agent?

With care. The audit graded it B (85/100) and found 7 things worth knowing before you trust this server, listed below with the exact line each was found on.

What credentials does Chrome Google Search need?

No credential environment variables were found in its source, so it appears to need none.

How does Chrome Google Search run?

It speaks stdio, so it runs as a local process your client starts. It is published on npm as @cmann50/mcp-chrome-google-search at 1.0.6.

How current is this page?

The grade is for one exact copy of the source (8b88e5f28465), read on 2026-10-09. The repository is watched and re-audited when it changes.

Advertisement