On-chain intelligence tools for AI agents — balances, approvals, wallet-report, token-safety & a natural-language Answer Engine across 23 EVM chains. LangChain / CrewAI / LlamaIndex packs.
Project description
nodeflare
On-chain intelligence for AI agents — one call, 23 EVM chains.
nodeflare gives your agent the on-chain answers it actually needs — is this token a
scam, what does this wallet hold, what will this transaction do — across 23 EVM chains
in a single call, including young chains (Robinhood, Plasma, Ink, Zircuit) that
Alchemy, Moralis and revoke.cash leave as empty shells.
It ships framework-native tool packs for LangChain, CrewAI and LlamaIndex, plus a plain Python client. Get a free API key (2M compute units/month, no card) at nodeflare.app.
pip install nodeflare # plain client, stdlib-only, zero deps
pip install "nodeflare[langchain]" # + LangChain tools
pip install "nodeflare[crewai]" # + CrewAI tools
pip install "nodeflare[llamaindex]"# + LlamaIndex tools
Why
Agents that touch money need on-chain judgment, not raw JSON-RPC. Wiring that up per-chain — an indexer here, a token-safety API there, none of which cover the new chains — is the tax. NodeFlare collapses it into six tools that already speak 23 chains and return decisions, not hex.
| Tool | Answers |
|---|---|
token_safety |
Is this ERC-20 safe to trade? (ownership, upgradeable proxy, holder concentration, honeypot sim → risk score) |
wallet_report |
Everything about a wallet in one call: balances + USD total + top holdings + active approvals |
token_allowances |
What has this wallet approved, and which approvals are unlimited/risky? |
multichain_balances |
Native + ERC-20 balances (USD-priced), optionally auto-discovering every token held |
simulate_transaction |
Will this tx revert? How much gas? What tokens move? |
onchain_answer |
Plain-English question → cited verdict (the Onchain Answer Engine) |
The light path (metadata, balances, revert/gas) works without a key. The deep checks
— approvals, holder concentration, asset-change tracing, and the Answer Engine — need a
free NODEFLARE_API_KEY.
Plain client
from nodeflare import NodeFlareClient
nf = NodeFlareClient(api_key="nf_live_…") # or set NODEFLARE_API_KEY
# Risk-check a token before an agent buys it
print(nf.token_safety("base", "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"))
# One-call wallet report across all 23 chains
print(nf.wallet_report("0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"))
# Natural-language verdict
print(nf.onchain_answer("Is token 0xdAC17F958D2ee523a2206206994597C13D831ec7 on eth safe?"))
LangChain
from nodeflare.langchain import get_nodeflare_tools
from langchain.chat_models import init_chat_model
tools = get_nodeflare_tools() # uses NODEFLARE_API_KEY
llm = init_chat_model("claude-opus-4-8").bind_tools(tools)
# ... hand `tools` to any LangChain agent / AgentExecutor
CrewAI
from crewai import Agent
from nodeflare.crewai import get_nodeflare_tools
analyst = Agent(
role="On-chain risk analyst",
goal="Vet tokens and wallets before the crew acts on them",
tools=get_nodeflare_tools(),
)
LlamaIndex
from llama_index.core.agent import ReActAgent
from nodeflare.llamaindex import get_nodeflare_tools
agent = ReActAgent.from_tools(get_nodeflare_tools(), llm=llm)
Auth
Every get_nodeflare_tools() and NodeFlareClient() reads NODEFLARE_API_KEY from the
environment, or takes api_key="nf_live_…" explicitly. Grab a free key at
nodeflare.app — 2M compute units/month, no card, crypto or card
top-ups when you outgrow it.
Links
- Site & keys — https://nodeflare.app
- Remote MCP server (Claude / ChatGPT connectors) —
https://mcp.nodeflare.app - npm (
nodeflare-mcp,nodeflare-agentkit) — https://www.npmjs.com/package/nodeflare-mcp
MIT © NodeFlare
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nodeflare-0.1.0.tar.gz.
File metadata
- Download URL: nodeflare-0.1.0.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c38ef8e4966728987b8a7abb49f5fd0d9528d03f8235c51d4c206360bdefe6b
|
|
| MD5 |
cbefbdeb009e3219c4dac9e2d29f06ac
|
|
| BLAKE2b-256 |
e2a8fabbb06c1adda90e9db3e0ec3237c5dfadfd143f7e1fde6c32a37fc64a07
|
Provenance
The following attestation bundles were made for nodeflare-0.1.0.tar.gz:
Publisher:
publish.yml on Nodeflare-app/nodeflare-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nodeflare-0.1.0.tar.gz -
Subject digest:
3c38ef8e4966728987b8a7abb49f5fd0d9528d03f8235c51d4c206360bdefe6b - Sigstore transparency entry: 2251759185
- Sigstore integration time:
-
Permalink:
Nodeflare-app/nodeflare-python@71d7f2ae2918771bf931cb6e6d89cf728e181a94 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Nodeflare-app
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71d7f2ae2918771bf931cb6e6d89cf728e181a94 -
Trigger Event:
push
-
Statement type:
File details
Details for the file nodeflare-0.1.0-py3-none-any.whl.
File metadata
- Download URL: nodeflare-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
15a4607f65f0c6c87ad0a37eae44733e67b67d466c66cd1a405e9ebc871c5561
|
|
| MD5 |
374bab30f315e413059a2365212c41de
|
|
| BLAKE2b-256 |
dfe574600a7899d5ff27ba0e2507e39190b439a9485e51c74d3c6fa7f571a4da
|
Provenance
The following attestation bundles were made for nodeflare-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on Nodeflare-app/nodeflare-python
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nodeflare-0.1.0-py3-none-any.whl -
Subject digest:
15a4607f65f0c6c87ad0a37eae44733e67b67d466c66cd1a405e9ebc871c5561 - Sigstore transparency entry: 2251759831
- Sigstore integration time:
-
Permalink:
Nodeflare-app/nodeflare-python@71d7f2ae2918771bf931cb6e6d89cf728e181a94 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Nodeflare-app
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71d7f2ae2918771bf931cb6e6d89cf728e181a94 -
Trigger Event:
push
-
Statement type: