Skip to main content

llama-index-tools-decodo

A LlamaIndex tool spec that wraps the Decodo web scraping API, exposing four tools for LlamaIndex agents: scrape_url, search_web, search_amazon, and search_reddit.

Decodo handles JavaScript rendering, anti-bot measures, CAPTCHA, and proxy rotation so your agent can reliably extract content from any page.

Installation

pip install llama-index-tools-decodo

Authentication

Obtain your API token from the Decodo dashboard.

Set it as an environment variable:

export DECODO_API_TOKEN="your-token-here"

Or pass it directly to the constructor.

Auth modes

auth_mode Encoding Endpoint
"basic" (default) base64("token:") POST /v2/scrape
"token" plain token POST /unified/v1/scrape

Both modes use the Authorization: Basic <value> header.

Quick start

from llama_index.tools.decodo import DecodoToolSpec

# Uses DECODO_API_TOKEN from environment
spec = DecodoToolSpec()
tools = spec.to_tool_list()

Use with a ReAct agent:

from llama_index.core.agent import ReActAgent
from llama_index.llms.openai import OpenAI
from llama_index.tools.decodo import DecodoToolSpec

spec = DecodoToolSpec()
tools = spec.to_tool_list()
agent = ReActAgent.from_tools(tools, llm=OpenAI(model="gpt-4o"), verbose=True)
response = agent.chat("Summarise the homepage of https://news.ycombinator.com")
print(response)

Tool reference

scrape_url(url)

Scrape any web page and return its content as markdown.

spec = DecodoToolSpec(api_token="your-token")
content = spec.scrape_url("https://news.ycombinator.com")
print(content)

search_web(query, num_results=10)

Search Google and return a list of results, each with url, content, and status_code.

results = spec.search_web("latest AI research papers", num_results=5)
for r in results:
    print(r["url"], r["content"][:200])

search_amazon(query, num_results=10)

Search Amazon product listings.

results = spec.search_amazon("noise cancelling headphones", num_results=5)
for r in results:
    print(r["url"], r["content"][:200])

search_reddit(query, num_results=10)

Search Reddit via Google with a site:reddit.com filter.

results = spec.search_reddit("best Python async libraries", num_results=5)
for r in results:
    print(r["url"], r["content"][:200])

Auth mode examples

# Basic mode (default) — recommended for most users
spec = DecodoToolSpec(api_token="your-token", auth_mode="basic")

# Token mode — for unified API access
spec = DecodoToolSpec(api_token="your-token", auth_mode="token")

# Custom timeout (seconds)
spec = DecodoToolSpec(api_token="your-token", timeout=300.0)

License

MIT

Metadata

Release files for llama-index-tools-decodo 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llama-index-tools-decodo 0.1.0
File Size Uploaded
llama_index_tools_decodo-0.1.0.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llama-index-tools-decodo 0.1.0
File Interpreter ABI Platform
llama_index_tools_decodo-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 13.2 kB

Release files / llama_index_tools_decodo-0.1.0.tar.gz

Download URL llama_index_tools_decodo-0.1.0.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
6cfbb47b4fc1006e0d1e1c44bbc25210cd982c6391fedc6771d02c1eba3d3525
BLAKE2b-256 checksum
How to use checksums
b0d77153f0d483d76e98eba5e3ae8f8f7eeac293d0d38fb083cb73b389488b10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 1, 2026.

Transparency log

Release files / llama_index_tools_decodo-0.1.0-py3-none-any.whl

Download URL llama_index_tools_decodo-0.1.0-py3-none-any.whl
Size 6.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5560e2402274f14be4637e8bedcfddfe731150847092ccbd03f76854db9cb973
BLAKE2b-256 checksum
How to use checksums
3ad025588db0f0e72d49e213165bfd664387cdfeea941e660fd7eee7560e0059
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.5

2 release files

0.1.4

2 release files

0.1.2

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page