llama-index-tools-anakin
LlamaIndex tools for Anakin: scrape, search, map and crawl the web, run deep research, use pre-built Wire actions on hundreds of sites, monitor pages for changes, compare AI answer engines and drive a cloud browser.
AnakinToolSpec has all 22 tools of Anakin's hosted MCP server
(mcp.anakin.io), with the same names, built on the official
anakin-sdk client.
Install
pip install llama-index-tools-anakin
export ANAKIN_API_KEY=... # free at https://anakin.io/dashboard
Use with an agent
import asyncio
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.anthropic import Anthropic
from llama_index.tools.anakin import AnakinToolSpec
agent = FunctionAgent(
tools=AnakinToolSpec().to_tool_list(),
llm=Anthropic(model="claude-opus-5-5"),
system_prompt="Answer with facts from the web. Cite the pages you used.",
)
async def main() -> None:
print(await agent.run("What do the top three CRM vendors charge per seat?"))
asyncio.run(main())
Any LlamaIndex LLM that supports function calling works.
To give the agent fewer tools (and a shorter prompt), pick them by name:
tools = AnakinToolSpec().to_tool_list(spec_functions=["search", "scrape", "crawl"])
Options
AnakinToolSpec(
api_key=None, # defaults to ANAKIN_API_KEY
read_only=False, # True leaves out the 7 tools that change something
allow_financial_actions=False, # see "Payments" below
poll_timeout=600.0, # seconds to wait for scrapes, crawls and research
client=None, # or pass your own anakin.Anakin client
)
read_only=True leaves out the tools that change something on a website or
in the user's Anakin account, or that start a long paid job: wire_write_action,
wire_login, wire_build, monitor_create, monitor_control, session_delete
and browser_task. Use it for agents that should only look things up.
Payments. Like the hosted MCP server, wire_write_action, wire_build and
browser_task refuse anything that looks like it completes a payment or moves
money (pay, checkout, purchase, place order, buy now, wire transfer, payout).
Adding to a cart or filling in a form is allowed. Pass
allow_financial_actions=True to turn the check off.
Tools
| Tool | What it does |
|---|---|
| Web data | |
scrape |
One page as clean markdown, optionally with AI-extracted JSON |
search |
Web search: URLs, titles and snippets, returned immediately |
map |
Every URL on a site, to decide what to crawl |
crawl |
Many pages of one site as markdown |
agentic_search |
Deep research across many sources, as a summary plus structured data |
| Wire: pre-built site actions | |
wire_discover |
Find actions for a task, e.g. "top phones on walmart" |
wire_catalog |
Every supported site, or one site's actions and their parameters |
wire_read_action |
Run an action that reads data |
wire_write_action |
Run an action that changes something on the site * |
wire_identities |
The user's saved site logins (credentials) |
wire_login |
Sign in to a site and get a credential * |
wire_build |
Ask Wire to build actions for a site it doesn't cover yet * |
wire_build_status |
Progress of those builds |
| Monitors | |
monitor_create |
Watch a page, a site or a Wire action on a schedule * |
monitor_list |
The user's monitors, or one monitor's settings |
monitor_changes |
Changes a monitor detected |
monitor_control |
Pause, resume, run now or delete a monitor * |
| AI visibility | |
ai_visibility_search |
Ask ChatGPT, Gemini and Google AI Overview the same question and compare |
ai_visibility_sources |
The answer engines available |
| Browser | |
session_list |
Saved browser logins, for pages behind a sign-in |
session_delete |
Delete a saved browser login * |
browser_task |
An AI agent that drives a real browser through a multi-step task * |
* Left out by read_only=True.
Each tool's description and parameter docs go to the model in the function schema. Descriptions stay under the 1,024 characters LlamaIndex allows for OpenAI function definitions.
Errors and timeouts
Tools raise the SDK's exceptions, such as anakin.AuthenticationError,
anakin.InsufficientCreditsError, anakin.RateLimitError and
anakin.JobFailedError. All of them subclass anakin.AnakinError, and
LlamaIndex agents pass the message back to the model. Scrapes, crawls and
research wait up to poll_timeout seconds. A browser task waits up to 6
minutes.
Agents call these tools in a worker thread, so they don't block an async event loop.
Development
uv sync
uv run pytest
uv run ruff check . && uv run ruff format --check . && uv run mypy llama_index
License
MIT
Metadata
Release files for llama-index-tools-anakin 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 | |
|---|---|---|---|---|
| llama_index_tools_anakin-0.1.0.tar.gz | 12.4 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| llama_index_tools_anakin-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.4 kB
Release files / llama_index_tools_anakin-0.1.0.tar.gz
| Download URL | llama_index_tools_anakin-0.1.0.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a73a2a91c4d2e17c172fc6f5228db0aeb5b0b0e0fd91457c9b2884738dec85b0
|
|
BLAKE2b-256 checksum How to use checksums |
d8c773562e9f4b8016468aeca948cc24cd9151b1061716dcbf4ec9d5e3d8451b
|
| 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 12, 2026.
Transparency logRelease files / llama_index_tools_anakin-0.1.0-py3-none-any.whl
| Download URL | llama_index_tools_anakin-0.1.0-py3-none-any.whl |
|---|---|
| Size | 13.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c4a0cca2c14da4f711a9d418d3e986fc498dea8ef6ea9de600f77be2c740647d
|
|
BLAKE2b-256 checksum How to use checksums |
315c6e4aa74a092e391aa750fc25988427a83a1486678e73f6cd8e2031dbb4fa
|
| 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 12, 2026.
Transparency logSecurity for llama-index-tools-anakin 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
All 2 files in this release have been uploaded with provenance metadata.
Attestation for llama_index_tools_anakin-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 Oct 12, 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.