Skip to content

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.

Changes · 8

10 tools: 8 change things and 2 only read.

Scanned Oct 21, 2026

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/mcp

Findings

Matches of fixed checks, with the text they matched.

8 warn
  • The server marks "scrape_chatgpt" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
  • The server marks "scrape_gemini" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
  • The server marks "scrape_copilot" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
  • The server marks "scrape_perplexity" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
  • The server marks "scrape_grok" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
  • The server marks "scrape_google_ai_mode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

    What this check looks for
Show 2 more findings
  • The server marks "scrape_google" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.

    What this check looks for
  • The server marks "scrape_google_news" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.

    What this check looks for

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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "run": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The description's first verb is "submit": a word for a change.

      What this check looks for
    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/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.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.