cloro
by cloro.dev · remote · no sign-in to list tools · v0.2.0 · published by dev.cloro
Scrape AI answer engines and Google Search/News with country and state-level geo-targeting.
10 tools: 8 change things and 2 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things8Claude Code: ask: see these tools
- Only reads2Claude Code: allow: see these tools
8 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http cloro https://mcp.cloro.dev/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnscrape_chatgpt
The server marks "scrape_chatgpt" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
- Warnscrape_gemini
The server marks "scrape_gemini" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
- Warnscrape_copilot
The server marks "scrape_copilot" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
The server marks "scrape_perplexity" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
- Warnscrape_grok
The server marks "scrape_grok" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
The server marks "scrape_google_ai_mode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Show 2 more findingsShow fewer
- Warnscrape_google
The server marks "scrape_google" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.
The server marks "scrape_google_news" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
10 tools
Changes things 8Claude Code: ask
scrape_chatgptSubmit a prompt to ChatGPT from a chosen country (and optionally US state) and return the full answer: text, cited sources, and optionally markdown, search queries, shopping result…1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_chatgpt" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to ChatGPT from a chosen country (and optionally US state) and return the full answer: text, cited sources, and optionally markdown, search queries, shopping results, and ads. Use this to see how ChatGPT answers a prompt and which brands/sources it mentions.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_copilotSubmit a prompt to Microsoft Copilot from a chosen country (and optionally US state) and return the answer with cited sources.1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_copilot" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to Microsoft Copilot from a chosen country (and optionally US state) and return the answer with cited sources. Use this to see how Microsoft Copilot answers a prompt and which brands/sources it mentions.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_geminiSubmit a prompt to Google Gemini from a chosen country (and optionally US state) and return the answer with cited sources.1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_gemini" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to Google Gemini from a chosen country (and optionally US state) and return the answer with cited sources. Use this to see how Google Gemini answers a prompt and which brands/sources it mentions.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_googleRun a Google search from a chosen country and return organic results, with optional AI Overview extraction (include.aioverview) and People-Also-Ask AI answers (include.paaAiovervie…1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_google" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run a Google search from a chosen country and return organic results, with optional AI Overview extraction (include.aioverview) and People-Also-Ask AI answers (include.paaAioverview). Two modes: structured (query + country, with optional location/uule/pages) or url (a complete google.com/search URL that owns query, location, and pagination). Supports desktop, mobile, iOS, and Android emulation and multi-page results.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_google_ai_modeSubmit a prompt to Google AI Mode from a chosen country and return the AI answer with cited sources.1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_google_ai_mode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to Google AI Mode from a chosen country and return the AI answer with cited sources. Supports location or UULE targeting and desktop/mobile emulation.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_google_newsRun a Google News search from a chosen country and return news results.1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_google_news" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run a Google News search from a chosen country and return news results. Supports desktop, mobile, iOS, and Android emulation and multi-page results.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_grokSubmit a prompt to Grok (xAI) from a chosen country (and optionally US state) and return the answer with cited sources.1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_grok" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to Grok (xAI) from a chosen country (and optionally US state) and return the answer with cited sources. Use this to see how Grok (xAI) answers a prompt and which brands/sources it mentions.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
scrape_perplexitySubmit a prompt to Perplexity from a chosen country (and optionally US state) and return the answer with cited sources.1 finding
Why it is in this group
- The description's first verb is "submit": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "scrape_perplexity" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.
Description, as the server wrote it Submit a prompt to Perplexity from a chosen country (and optionally US state) and return the answer with cited sources. Use this to see how Perplexity answers a prompt and which brands/sources it mentions.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- openWorldHint: true
Only reads 2Claude Code: allow
list_countriesList the ISO 3166-1 alpha-2 country codes supported for geo-targeting.No findings
Why it is in this group
- The name "list_countries" says "list": a word for reading.
Description, as the server wrote it List the ISO 3166-1 alpha-2 country codes supported for geo-targeting. Pass a model to get the codes available for that specific engine (some engines block certain countries).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_statesList the state codes available for state-level geo-targeting in a country (used as the "state" parameter on the scrape tools).No findings
Why it is in this group
- The name "list_states" says "list": a word for reading.
Description, as the server wrote it List the state codes available for state-level geo-targeting in a country (used as the "state" parameter on the scrape tools). Only countries with state-level targeting are accepted.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http cloro https://mcp.cloro.dev/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__cloro__list_countries",
"mcp__cloro__list_states"
],
"ask": [
"mcp__cloro__scrape_chatgpt",
"mcp__cloro__scrape_gemini",
"mcp__cloro__scrape_copilot",
"mcp__cloro__scrape_perplexity",
"mcp__cloro__scrape_grok",
"mcp__cloro__scrape_google_ai_mode",
"mcp__cloro__scrape_google",
"mcp__cloro__scrape_google_news"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as cloro. Review it before you use it.