crewai-cloro
CrewAI tools for cloro. cloro loads the live page of a search engine or an AI assistant for a query and a country, and returns the result as structured data.
| Tool | cloro endpoint | The agent gets | Credits per call |
|---|---|---|---|
CloroGoogleSearchTool |
POST /v1/monitor/google |
Google organic results: title, URL and snippet. With include_ai_overview=True, the Google AI Overview and its sources first. |
5, or 7 with the AI Overview |
CloroAIAnswerTool(engine="google_ai_mode") |
POST /v1/monitor/aimode |
The Google AI Mode answer as Markdown, with its sources | 6 |
CloroAIAnswerTool(engine="bing_ai_mode") |
POST /v1/monitor/bing/aimode |
The Bing AI Mode (Copilot Search in Bing) answer, with its sources | 6 |
CloroAIAnswerTool(engine="chatgpt") |
POST /v1/monitor/chatgpt |
The ChatGPT answer that users see, with its sources | 7 |
CloroAIAnswerTool(engine="gemini") |
POST /v1/monitor/gemini |
The Gemini answer, with its sources | 6 |
Installation
pip install crewai-cloro
Get an API key at dashboard.cloro.dev.
The free plan includes 500 credits each month. Set the key as CLORO_API_KEY, or pass api_key=... to a tool.
Usage
from crewai import Agent, Crew, Task
from crewai_cloro import CloroAIAnswerTool, CloroGoogleSearchTool
researcher = Agent(
role="Search analyst",
goal="Compare what Google and AI assistants say about a topic.",
backstory="You check live sources and cite the URLs you use.",
tools=[
CloroGoogleSearchTool(max_results=5, include_ai_overview=True),
CloroAIAnswerTool(engine="chatgpt"),
CloroAIAnswerTool(engine="google_ai_mode"),
],
)
task = Task(
description="Which SERP APIs do Google, ChatGPT and Google AI Mode recommend for AI agents?",
expected_output="A short comparison with the cited URLs.",
agent=researcher,
)
print(Crew(agents=[researcher], tasks=[task]).kickoff())
Each CloroAIAnswerTool gets its own tool name, cloro_<engine>, so one agent can hold several engines. Pass
name= to change it.
A direct call returns the same text the agent gets:
print(CloroGoogleSearchTool().run(query="retrieval-augmented generation", country="GB"))
Parameters
Both tools take:
api_key: the cloro API key. Defaults to theCLORO_API_KEYenvironment variable.country: ISO 3166-1 alpha-2 country code for the search location (defaultUS). The agent can also passcountryper call.timeout: request timeout in seconds (default 180). An AI answer can take 15 to 60 seconds.
CloroGoogleSearchTool also takes max_results (default 10) and include_ai_overview (default False).
Results with an empty link or a Google redirect link are skipped.
CloroAIAnswerTool also takes engine: google_ai_mode (default), bing_ai_mode, chatgpt or gemini.
Limits
- Bing AI Mode accepts a prompt of up to 3,500 characters after URL encoding. Non-Latin scripts allow fewer characters. The tool refuses a longer prompt before it sends the request.
- Your plan sets how many requests can run at the same time. A request sent while all slots are busy gets a
429(CONCURRENCY_LIMIT_EXCEEDED). - An API error raises
CloroErrorwith the HTTP status, the cloro error code and the message.
Development
uv run --python 3.12 --with crewai --with httpx --with pytest -- env PYTHONPATH=src python -m pytest tests
The tests mock the network. The API reference is at cloro.dev/docs.
License
MIT
Metadata
Release files for crewai-cloro 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| crewai_cloro-0.1.0.tar.gz | 7.3 kB | With provenance | Details for crewai_cloro-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| crewai_cloro-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for crewai_cloro-0.1.0-py3-none-any.whl |
Total release size: 14.2 kB
Release files / crewai_cloro-0.1.0.tar.gz
| Download URL | crewai_cloro-0.1.0.tar.gz |
|---|---|
| Size | 7.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
331f8dfa768dcca295561eecea03361c9ea8affa2a393aa9e55c0012fe281178
|
|
BLAKE2b-256 checksum How to use checksums |
054cf19e54d16b6bddfff975f26520dd29d67781feebffb925b25b9ef81e8244
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logRelease files / crewai_cloro-0.1.0-py3-none-any.whl
| Download URL | crewai_cloro-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
941135a5a1ac22472b25dcf976b1ee116218598ad128791321ac876935b3b1ac
|
|
BLAKE2b-256 checksum How to use checksums |
89bd665a37f186f0c9db06227c29511b3e5c6e62a6f2f08d6685b128f9f3dae4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logSecurity for crewai-cloro 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
Both files in this release have been uploaded with provenance metadata.
Attestation for crewai_cloro-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 8, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.