cloro

dev.cloro由 cloro.dev 發布官方發布者v0.5.0更新於 Nov 6, 2026

Scrape AI answer engines and Google Search/News with country and state-level geo-targeting.

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取AI 與機器學習

概覽

AI 產生的概覽

cloro 可依國家與州級地理定位抓取 ChatGPT、Gemini、Google AI Mode、Google 搜尋與新聞的回答及引用來源。

可以做什麼
  • 查詢 AI 回答引擎:向 ChatGPT、Gemini 或 Google AI Mode 送出提示詞,取得附引用來源的回答。
  • 執行 Google 搜尋與新聞搜尋:取得自然結果、AI Overview 與「其他人也問」的 AI 回答,支援桌機或行動裝置模擬與翻頁。
  • 解析 Google 轉址連結:把結果中空白或 goto 形式的連結還原成實際目標網址。
  • 查詢定位選項:列出支援的國家代碼與州代碼,可依引擎篩選。
適用情境
適合 AI 能見度與品牌監測、比較不同回答引擎在同一提示詞下於各市場的表現,或為研究蒐集帶地理定位的 Google 搜尋與新聞結果。
執行需求
使用 mcp.cloro.dev 的遠端 Streamable HTTP 端點,或自行架設 Node.js 版本以 stdio 或 HTTP 執行。需要 cloro 帳號,並透過 OAuth 登入或 cloro API 金鑰驗證,金鑰可放在 Authorization Bearer 標頭、URL 路徑中,stdio 模式使用 CLORO_API_KEY。呼叫會消耗付費額度。
安裝前請注意
每次抓取都會消耗付費組織帳戶的額度,結果會回傳已扣與剩餘額度。把 API 金鑰放在 URL 路徑可能經由日誌外洩,建議改用 Authorization 標頭或 OAuth。同步呼叫最長等待約五分鐘,用戶端逾時為 320 秒。伺服器會把你的憑證轉送至 api.cloro.dev。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 cloro,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/dev.cloro%2Fcloro/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "cloro": {
      "type": "http",
      "url": "https://mcp.cloro.dev/mcp"
    }
  }
}

README

cloro MCP Server

A Model Context Protocol (MCP) server for cloro, the LLM scraping API that includes a Google SERP API. It gives Claude, Codex, Cursor and any MCP client answers from ChatGPT, Gemini, Google AI Mode and Google AI Overview, plus Google web search and Google News results. Ask your agent "compare Google's top results for best LLM scraping API with ChatGPT's answer" and it calls cloro and reasons over the parsed results and cited sources.

Runs hosted at mcp.cloro.dev, or locally over stdio.

How do you connect an agent to the cloro MCP server?

In Claude, you sign in with OAuth and do not need a key:

  1. Go to Customize → Connectors and select Add custom connector.
  2. Enter https://mcp.cloro.dev/mcp. Under Authentication, choose Sign in when needed.
  3. Ask Claude to use a cloro tool. Sign in to cloro and select the organization whose credits pay for the calls.

Other clients use a cloro API key from the dashboard. The hosted server speaks Streamable HTTP. Put the key in the URL path so it works in clients that cannot set custom headers:

json
{  "mcpServers": {    "cloro": {      "type": "http",      "url": "https://mcp.cloro.dev/YOUR_CLORO_API_KEY/mcp"    }  }}

If your client can set headers, use https://mcp.cloro.dev/mcp with Authorization: Bearer YOUR_CLORO_API_KEY. In Claude Code:

bash
claude mcp add --transport http cloro https://mcp.cloro.dev/YOUR_CLORO_API_KEY/mcp

In Cursor

This repo is also a Cursor plugin. Install it from the Cursor marketplace, or point Cursor at the repo, and Cursor prompts for one variable:

VariableValue
CLORO_API_KEYYour key from the dashboard

Cursor stores the key on its side and sends it as Authorization: Bearer, so the key stays out of the URL and out of the repo. The manifest is .cursor-plugin/plugin.json and the server definition is mcp.json.

Running it yourself

bash
npm installnpm run buildMCP_TRANSPORT=stdio CLORO_API_KEY=your_key node dist/index.js

MCP_TRANSPORT is http (default) or stdio. In stdio mode the client spawns the process and the key comes from CLORO_API_KEY; in http mode keys arrive per request and no key is configured on the server. PORT defaults to 8095 and CLORO_API_URL to https://api.cloro.dev.

OAuth is off unless you set CLERK_ISSUER. The hosted server sets it to https://clerk.cloro.dev. api.cloro.dev accepts only tokens from that issuer, so a self-hosted server that forwards to it must use the same value. MCP_PUBLIC_URL (default https://mcp.cloro.dev) sets the resource URL in the protected resource metadata.

What tools does it expose?

ToolEndpoint
scrape_chatgptPOST /v1/monitor/chatgpt
scrape_geminiPOST /v1/monitor/gemini
scrape_google_ai_modePOST /v1/monitor/aimode
scrape_googlePOST /v1/monitor/google
scrape_google_newsPOST /v1/monitor/google/news
resolve_google_redirectPOST /v1/monitor/google/goto
list_countriesGET /v1/countries
list_statesGET /v1/states

The assistant tools take a prompt and a country (ISO 3166-1 alpha-2), plus an optional state for US state-level targeting. The Google tools take gl for the result geography and an optional hl for the interface language; country still works as a deprecated alias for gl. scrape_google_ai_mode targets sub-country with location or uule rather than state. scrape_google runs either from a query plus gl, or from a complete google.com/search URL that carries the query and pagination itself, and accepts include.aioverview for Google's AI Overview. Every tool takes an optional include object for heavier payload fields; leave it unset for the leanest response.

A Google result link can come back empty, or as a google.com/goto URL, with a redirectLink beside it. Pass the redirectLink to resolve_google_redirect to get the destination.

There is no Grok tool. Grok is discontinued: grok.com shows a sign-up wall to logged-out visitors, and the cloro API rejects Grok calls with a 400 (MODEL_UNAVAILABLE).

There are no Copilot or Perplexity tools. Both are discontinued: they block access for logged-out sessions, and the cloro API rejects their calls with a 400 (MODEL_UNAVAILABLE). These calls cost no credits.

How it works

The server holds no business logic and no secrets. Each request forwards the caller's own credential, an API key or an OAuth access token, to api.cloro.dev as a Bearer token, so authentication, credit billing, rate limiting and concurrency are all enforced by the API rather than here. In http mode every POST builds a fresh server and transport bound to that caller's credential, which is why one deployment serves everyone with no session state.

initialize and tools/list answer without a credential, so a client can list the tools before sign-in. The first tools/call without one returns 401 with a WWW-Authenticate header that points at /.well-known/oauth-protected-resource/mcp. An OAuth client reads the authorization server from there and runs the flow. The server checks a token's signature against the issuer's public JWKS (code in src/oauth-tokens/), so it needs no Clerk secret.

Tool input schemas are the same zod schemas the API validates with, vendored into src/schemas/ from cloro's backend. They are copied rather than imported because that package is not published. The API reference is authoritative if the two ever disagree.

FAQ

Do I need to self-host this?

No. mcp.cloro.dev is hosted and is the path most people should take. This repo exists so you can read what runs, and self-host if your setup calls for it.

Does it cost credits?

Yes. The scrape tools call the sync API, so each call costs the API rate plus a 2-credit sync surcharge. For example, a ChatGPT call costs 7 credits (5 + 2). Each tool description states its cost, and each result returns the credits charged and remaining. resolve_google_redirect costs 1 credit, with no surcharge. list_countries and list_states read fixed reference lists and charge nothing. See pricing.

Why is my API key in the URL?

Because several MCP clients cannot set custom headers. If yours can, use the Authorization header form instead and keep the key out of the path. If your client supports OAuth, use that and there is no key at all. The URL path accepts API keys only, never OAuth tokens.

What is the request timeout?

320 seconds. Sync scrapes can take up to five minutes server-side, so the client budget leaves headroom. For long-running batches use the async task API rather than MCP.

Are there agent skills for cloro?

Yes. cloro-dev/skills has one skill per surface (ChatGPT, Gemini, Google AI Mode, Google AI Overview, Google Search, Google News) and skills for SERP research, LLM answer monitoring and AI visibility tracking. Install them with npx skills add cloro-dev/skills. The skills tell the agent which tool or endpoint to call, what it costs, and how to read the result. They work with this server or with the REST API.

Learn more

License

MIT. See LICENSE.

來源:README.md,提交 6baf0df

工具

8

scrape_chatgpt

Scrape ChatGPT

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. Costs 7 credits (5 base + 2 sync surcharge); any of include.rawResponse, searchQueries, ads or shopping adds 2 once; include.productDetails adds 2 more; each prompt after the first adds 1; a state adds 2.

輸入參數statelegacyprompt必填country必填includedisableWebSearch

scrape_gemini

Scrape Google Gemini

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. Costs 6 credits (4 base + 2 sync surcharge); a state adds 2.

輸入參數stateprompt必填country必填include

scrape_google_ai_mode

Scrape Google AI Mode

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. Costs 6 credits (4 base + 2 sync surcharge).

輸入參數glhluuledeviceprompt必填countryincludelocation

scrape_google

Scrape Google Search

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 + gl, 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. A result link can come back empty with a redirectLink beside it; pass the redirectLink to resolve_google_redirect to get the destination. Costs 5 credits (3 base + 2 sync surcharge); include.aioverview and/or include.paaAioverview add 2 once; each page after the first adds 2.

輸入參數glhlurluulepagesquerydevicecountryincludelocation

scrape_google_news

Scrape Google News

Run a Google News search from a chosen country and return news results. Supports desktop, mobile, iOS, and Android emulation and multi-page results. Costs 5 credits (3 base + 2 sync surcharge); each page after the first adds 2.

輸入參數glhlpagesquery必填devicecountryinclude

resolve_google_redirect

Resolve a Google redirect link

Resolve one Google redirect link to its destination URL. Use it when a link or url field from scrape_google, scrape_google_news or scrape_google_ai_mode is empty, missing, or a google.com/goto URL: pass that result's redirectLink. Returns { url }. A link that does not resolve returns a 502; retry it later. Costs 1 credit, with no sync surcharge, and only when the destination is returned.

輸入參數url必填

list_countries

List supported countries

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

輸入參數model

list_states

List states for a country

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.

輸入參數country必填

版本歷史

4
  1. v0.5.0最新Nov 6, 2026
  2. v0.4.0Nov 3, 2026
  3. v0.2.0Sep 29, 2026
  4. v0.1.0Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分