MCP Chrome Google Search
MCP Chrome Google 検索ツール
Chromeブラウザを使用してGoogle検索とウェブページのコンテンツ抽出を行うMCPツール。Claudeと連携して、Google検索とコンテンツ取得機能を有効にします。
クイックインストール
Claudeデスクトップの設定
MacでClaudeデスクトップを開く
Claude > 設定 > 開発者 > 設定の編集に移動します
設定ファイルに以下を追加します: GXP1
Claudeデスクトップを再起動します
初回セットアップ
アクセシビリティ権限を付与する
初回実行時にmacOSのアクセシビリティ権限プロンプトを承認する
システム環境設定 > セキュリティとプライバシー > プライバシー > アクセシビリティに移動します
ターミナルアプリの権限を追加して有効にする
Apple Events から Chrome JavaScript を有効にする
Chromeを開く
表示 > 開発者 > Apple Events からの JavaScript を許可に移動します。
一度だけの設定
設定が完了すると、Claude はリクエスト時に Google 検索を実行し、Chrome 経由で Web ページのコンテンツを抽出できるようになります。
Related MCP server: Google Search MCP
主な利点
Google検索は無料
小さなウィンドウを開いてChromeブラウザを使用するので、ブロックされることはありません。
Chromeウィンドウを使用しているため、認証済みのコンテンツにアクセスできます。ClaudeはブラウザでURLを開くだけで済みます。
プラットフォームサポート
✅ macOS
❌ Windows(サポートされていません)
❌ Linux(サポートされていません)
要件
macOS
グーグルクローム
Node.js 20以上
代替インストール方法
NPXのインストール
npx mcp-chrome-google-searchカスタムインストール
Gitからチェックアウト
npm run build実行します。Claude config に追加 (絶対パスを使用):
{
"google-tools": {
"command": "node",
"args": [
"/your/checkout/path/mcp/mcp-chrome-google-search/dist/index.js"
]
}
}地域開発
変更をローカルでテストするには、package.json のバージョンを上げて実行し、編集モードにします。
npm install -g .次にnpm run build実行すると、ファイルは claude が監視している dist に保存されます。
次に、ClaudeデスクトップでCtrl + Rを押します。再起動する必要はありません。
デバッグ
ログ監視
# Follow logs in real-time
tail -n 20 -F ~/Library/Logs/Claude/mcp*.log開発ツールへのアクセス
開発者設定を有効にする:
echo '{"allowDevTools": true}' > ~/Library/Application\ Support/Claude/developer_settings.jsonDevToolsを開く: ClaudeデスクトップでCommand-Option-Shift-i
Claudeデスクトップでエラーを追うときにCtrl+Rを使用する
トラブルシューティング
Chrome JavaScript エラー
次のような表示が出た場合:
execution error: Google Chrome got an error: Executing JavaScript through AppleScript
is turned off. For more information: https://support.google.com/chrome/?p=applescript (12)解決:
Chromeを開く
表示 > 開発者 > Apple Events からの JavaScript を許可する
アクセシビリティの許可に関する問題
Chrome コントロールが失敗した場合:
システム環境設定を開く
セキュリティとプライバシー > プライバシー > アクセシビリティ
ターミナルアプリがリストされ、有効になっていることを確認します
必要に応じてロックアイコンを使用して変更してください
実装の詳細
ChromeコントロールにAppleScriptを使用する
目に見える自動化 - Chromeウィンドウが開き、ナビゲートします
各リクエストごとに新しいChromeタブが開きます
最適なパフォーマンスを得るために、使用していないタブを定期的に閉じてください
信頼できる Claude インスタンスでのみ使用してください (Chrome コントロール アクセス権があります)
サポート
問題に対してGitHub Issueを作成する
macOSとChromeのバージョンの詳細を含める
ライセンス
MITライセンス - 詳細はLICENSEファイルを参照
Available Tools
2 toolsweb_fetchC
Extract readable text content from a webpage using Chrome browser automation.
Key Features:
Returns main content text and optionally links
| Name | Required | Description | Default |
|---|---|---|---|
| includeLinks | No | Whether to include extracted links in the output | |
| url | Yes | Webpage URL to fetch (must include http:// or https://) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions Chrome browser automation and returning main content text with optional links, but lacks critical behavioral details: it doesn't specify if this is a read-only operation, potential rate limits, authentication needs, error handling for inaccessible pages, or what 'readable text' entails (e.g., stripping HTML, handling dynamic content). The description adds some context but leaves significant gaps for a tool interacting with external webpages.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured with a clear opening sentence followed by a bullet point. Every sentence earns its place by stating the core purpose and a key feature. However, the bullet point format is slightly redundant with the main sentence, and it could be more front-loaded by integrating the optional links feature into the initial statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of web scraping (external interactions, potential failures) and lack of annotations or output schema, the description is incomplete. It doesn't explain return values beyond 'main content text and optionally links', leaving the agent uncertain about output structure, error responses, or behavioral constraints like timeouts or permissions. For a tool with no structured safety hints, this is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both parameters in the schema itself. The description adds minimal value beyond the schema: it mentions 'optionally links' which aligns with the 'includeLinks' parameter but doesn't provide additional semantic context. With high schema coverage, the baseline is 3, and the description doesn't significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Extract readable text content from a webpage using Chrome browser automation.' It specifies the verb (extract), resource (text content from a webpage), and method (Chrome browser automation). However, it doesn't explicitly differentiate from its sibling 'web-search' tool, which likely searches rather than extracts content from a specific URL.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'optionally links' as a feature but doesn't clarify scenarios where including links is beneficial or when to choose this over 'web-search'. There's no mention of prerequisites, limitations, or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web-searchA
Search webpages and get a specific page of results (each page has ~10 results). Optionally filter by site and timeframe.
| Name | Required | Description | Default |
|---|---|---|---|
| pageNumber | No | Which page of results to fetch (1-5). Each page contains ~10 results | |
| query_text | Yes | Plain text to search for (no Google operators plain text only - use other parameters for site/date filtering) | |
| site | No | Limit search to specific domain (e.g. 'github.com' or 'docs.python.org') | |
| timeframe | No | Time range filter (h=hour, d=day, w=week, m=month, y=year) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds some context beyond basic functionality: it mentions pagination ('each page has ~10 results') and optional filtering capabilities. However, it doesn't cover important aspects like rate limits, authentication needs, error handling, or what the output looks like (e.g., result format), which are significant gaps for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise and front-loaded: it states the core purpose in the first clause and adds key details in a second sentence. Every word earns its place, with no redundancy or fluff, making it highly efficient for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (4 parameters, no output schema, no annotations), the description is somewhat complete but has gaps. It covers the basic operation and filtering options but lacks details on output format, error cases, or integration with the sibling tool. Without annotations or output schema, more behavioral context would be beneficial for full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by hinting at the optional nature of site and timeframe filters, but it doesn't provide additional semantic context or usage examples. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search webpages and get a specific page of results.' It specifies the verb ('search') and resource ('webpages'), and distinguishes it from the sibling tool 'web_fetch' by implying this is for search results rather than fetching specific pages. However, it doesn't explicitly contrast with the sibling, keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage context by mentioning optional filters ('Optionally filter by site and timeframe'), which suggests when to use these parameters. However, it lacks explicit guidance on when to choose this tool over the sibling 'web_fetch' or any other alternatives, and doesn't specify prerequisites or exclusions, leaving room for ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.0- First observed
web_fetch - First observed
web-search
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: web_fetch extracts content from a specific webpage, while web_search performs web searches and returns result pages. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on the task.
Both tool names follow a consistent snake_case pattern with a clear verb-noun structure: web_fetch and web_search. The naming is predictable and readable, with no deviations in style or convention.
With only 2 tools, the server feels thin for a Google Search domain, which typically involves more operations like advanced filtering, image search, or history management. While the tools cover basic fetch and search, the scope is limited and could benefit from additional functionality to fully represent the domain.
The tools cover core search and content extraction, but there are notable gaps for a Google Search server, such as no tools for image search, news search, or handling search settings. Agents can perform basic tasks but may encounter dead ends for more advanced operations, indicating incomplete coverage of the domain.
Maintenance
Related MCP Connectors
Google search, news, maps, scholar and public webpages for AI agents, with Markdown results.
Real Chrome for agents: start a browser, read pages as numbered markdown, click, type, hand off.
Web search, browser automation, scraping, crawling and CAPTCHA solving for AI agents.
Web search and page-reading for AI agents. One-click OAuth connect, or a Caesar API key.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables web searching through Google, DuckDuckGo, and Bing using a headless Chrome browser, returning structured results with titles, URLs, and snippets. Also supports fetching and extracting text content from any webpage.16MIT
- AlicenseBqualityDmaintenanceEnables Large Language Models to perform real-time web searches using Google Custom Search API. Integrates with Claude Desktop to retrieve current information from the internet.1MIT
- AlicenseBqualityAmaintenanceEnables controlling a real Chrome browser from MCP hosts like Claude, with extension-based or CDP fallback, supporting tabs, navigation, interaction, and page reading tools.20464 npm6MIT
- AlicenseNot gradedqualityCmaintenanceMCP server that drives the user's real signed-in Chrome on macOS via AppleScript (Apple Events). 32 tools covering tab/window control, navigation, DOM extraction, form interaction, and arbitrary JS execution. Same engine as the familiar Claude Code skill in the repository.MIT