langchain-anakin
LangChain tools for Anakin: web scraping, site mapping
and crawling, AI search, multi-stage agentic research, Wire (pre-built
structured actions for hundreds of sites), website monitors, AI-engine answer
comparison, saved browser sessions and AI-driven browser tasks. One tool for
each of the 22 tools on Anakin's hosted MCP server (mcp.anakin.io), built on
the official anakin-sdk Python
client (not a separate HTTP implementation).
Install
pip install -U langchain-anakin
export ANAKIN_API_KEY="ask-..." # free at https://anakin.io/signup
No key yet? AnakinScrapeTool, AnakinWireDiscoverTool,
AnakinWireCatalogTool and AnakinWireReadActionTool work without one on a
free per-IP allowance. The other tools return a ConfigurationError message
with a signup link.
Tools
| Tool | What it does | Needs key |
|---|---|---|
| Web data | ||
AnakinScrapeTool |
Scrape a URL to markdown, or AI-extract JSON (generate_json / output_schema) |
No |
AnakinSearchTool |
Synchronous AI-powered web search with citations | Yes |
AnakinMapTool |
List the URLs on a site, optionally filtered by a search term | Yes |
AnakinCrawlTool |
Crawl a site and return each page's markdown | Yes |
AnakinAgenticSearchTool |
Multi-stage research: search, scrape citations, extract structured data with a summary (1-5 min) | Yes |
| Wire: pre-built site actions | ||
AnakinWireDiscoverTool |
Find a pre-built Wire action for a task on a site | No |
AnakinWireCatalogTool |
Every supported site, or one site's actions with their parameters | No |
AnakinWireReadActionTool |
Run an action that reads data | No |
AnakinWireWriteActionTool |
Run an action that changes something on the site * | Yes |
AnakinWireIdentitiesTool |
The user's saved site logins | Yes |
AnakinWireLoginTool |
Sign in to a site and get a credential * | Yes |
AnakinWireBuildTool |
Request actions for a site Wire doesn't cover yet * | Yes |
AnakinWireBuildStatusTool |
Progress of those requests | Yes |
| Monitors | ||
AnakinMonitorCreateTool |
Watch a page, a site or a Wire action on a schedule * | Yes |
AnakinMonitorListTool |
The user's monitors, or one monitor's settings | Yes |
AnakinMonitorChangesTool |
Changes a monitor detected | Yes |
AnakinMonitorControlTool |
Pause, resume, run now or delete a monitor * | Yes |
| AI visibility | ||
AnakinAIVisibilitySearchTool |
Ask ChatGPT, Gemini and Google AI Overview the same question and compare | Yes |
AnakinAIVisibilitySourcesTool |
The answer engines available | Yes |
| Browser | ||
AnakinSessionListTool |
Saved browser logins, for pages behind a sign-in | Yes |
AnakinSessionDeleteTool |
Delete a saved browser login * | Yes |
AnakinBrowserTaskTool |
An AI agent that drives a real browser through a multi-step task * | Yes |
* Left out by AnakinToolkit(read_only=True).
Tool names follow the hosted server's, with an anakin_ prefix
(anakin_scrape, anakin_wire_read_action, ...). Each argument's description
reaches the model in the tool's schema.
AnakinWireRunTool (0.3.0's single Wire runner) still works but is deprecated:
use AnakinWireReadActionTool and AnakinWireWriteActionTool.
Usage
from langchain_anakin import (
AnakinScrapeTool,
AnakinSearchTool,
AnakinWireDiscoverTool,
AnakinWireReadActionTool,
)
AnakinScrapeTool().invoke({"url": "https://example.com"})
AnakinScrapeTool().invoke({
"url": "https://example.com/product",
"output_schema": {"type": "object", "properties": {"price": {"type": "number"}}},
})
AnakinSearchTool().invoke({"prompt": "latest developments in AI agents"})
actions = AnakinWireDiscoverTool().invoke({"query": "search products on walmart"})
AnakinWireReadActionTool().invoke({"action_id": "walmart_search", "params": {"query": "phones"}})
Every tool also supports async (await tool.ainvoke(...)), backed by
anakin.AsyncAnakin.
Use with an agent. AnakinToolkit gives the agent every tool, sharing one
client:
from langchain.agents import create_agent
from langchain_anakin import AnakinToolkit
agent = create_agent(model, tools=AnakinToolkit().get_tools())
To give the agent fewer tools (and a shorter prompt), pass individual tools instead, as in the usage example above.
Read-only agents
AnakinToolkit(read_only=True) leaves out the 7 tools that change something
on a website or in the user's Anakin account, or start a long paid job (marked
* above). Use it for agents that should only look things up.
Payments
Like the hosted MCP server, AnakinWireWriteActionTool, AnakinWireBuildTool
and AnakinBrowserTaskTool 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. Create
those tools, or the toolkit, with allow_financial_actions=True to turn the
check off.
Errors
Errors (bad key, no credits, a Wire site that needs a connected account) come back to the agent as text instead of raising, including any URL it needs to fix the problem.
Development
Requires anakin-sdk 0.2.x.
uv sync --group test
uv run pytest
License
Apache-2.0.
Metadata
Release files for langchain-anakin 0.4.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 |
|---|---|---|---|---|
| langchain_anakin-0.4.0.tar.gz | 31.5 kB | With provenance | Details for langchain_anakin-0.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| langchain_anakin-0.4.0-py3-none-any.whl | Python 3 | none | any | Details for langchain_anakin-0.4.0-py3-none-any.whl |
Total release size: 55.6 kB
Release files / langchain_anakin-0.4.0.tar.gz
| Download URL | langchain_anakin-0.4.0.tar.gz |
|---|---|
| Size | 31.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cfe60fa7178440fffead3e269e67aaf8e99307121b4c025fa9221cb663b9f165
|
|
BLAKE2b-256 checksum How to use checksums |
300bece1b64c6f5dae1acac9075e89e53a1c9a464286091b888ec0d94b027649
|
| 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 / langchain_anakin-0.4.0-py3-none-any.whl
| Download URL | langchain_anakin-0.4.0-py3-none-any.whl |
|---|---|
| Size | 24.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a5a108c246dc3be63031791c3c6a51dfa7650d10fc0c409f7ccf93fe9f2a9c7d
|
|
BLAKE2b-256 checksum How to use checksums |
2c4f297226be25a06f0be785d05f4a24a3ec58c47d17feadf27ae477901ae659
|
| 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 langchain-anakin 0.4.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 langchain_anakin-0.4.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.