For AI Agents & Autonomous Systems

Your AI Agent Needs
Wallet Intelligence

Verify balances, trace transactions, detect drainers, audit portfolios, and follow smart money — in one API call. Built for AI agents that live on-chain.

View Endpoints Get API Key →

No account required to start. Free tier available.

Why Autonomous Agents Choose Wallet Doctor

Your agent doesn't have time to parse raw Solana RPC. Let us do it.

Instant Wallet Verification

One API call returns balance, token holdings, and DeFi positions. No parsing RPC responses.

🛡️

Drainer Detection

Before your agent interacts with a wallet, check if it's a known drainer or malicious contract.

🐋

Smart Money Tracking

Follow what elite traders are doing. Get historical positions and current holdings of top traders.

📊

Transaction Forensics

Full token flow tracing. Know exactly where funds came from and where they went.

🔐

Approval Auditing

Find all token approvals a wallet has granted. Revoke risky ones in one call.

🎯

Token Safety

Check if a token is a honeypot, has high taxes, or has a malicious owner before your agent buys.

Model Context Protocol

One Line of Config. 13 Tools for Your Agent.

Wallet Doctor speaks MCP — the standard protocol for AI agent tool discovery. Add one line to your agent config and it instantly has 13 blockchain forensics tools.

⚙️

Claude Code / Claude Desktop

Edit ~/.claude/mcp_servers.json:

// ~/.claude/mcp_servers.json
{{
  "mcpServers": {{
    "wallet-doctor": {{
      "command": "python",
      "args": [
        "C:/path/to/wallet-doctor-mcp/mcp_server.py"
      ]
    }}
  }}
}}
🖥️

Cursor / Windsurf / VS Code

Add to MCP server settings:

// .cursor/mcp.json (or windsurf config)
{{
  "mcpServers": {{
    "wallet-doctor": {{
      "command": "python",
      "args": [
        "C:/path/to/wallet-doctor-mcp/mcp_server.py"
      ]
    }}
  }}
}}
🔧

Smithery (for any agent)

Find Wallet Doctor on Smithery and connect in one click:

# Smithery.ai — search "wallet-doctor"
# or visit the marketplace
Browse Smithery →
💎

Direct Python

Or embed directly in your agent:

from wallet_doctor_mcp import mcp_server

# mcp_server implements stdio JSON-RPC
# Spawn as subprocess and communicate via JSON
🤖

What your agent can now do

"Check if wallet 4dX3... has any risky approvals"
"Analyze this token for honeypot risk before I buy"
"Run drain forensics on my wallet — something drained it"
"Get the top 10 holders of this token"
"Is this wallet smart money? Should I copy their trades?"
"Audit my full portfolio and flag every risk"

API Endpoints

Base URL: https://defi-webhook.m-zikriz.workers.dev/api

GET
/balance $0.001 Balance + token holdings + DeFi positions

Returns SOL balance, all SPL tokens with values, and DeFi positions across Jupiter, Raydium, Orca.

# Request
curl "https://defi-webhook.m-zikriz.workers.dev/api/balance?wallet=...&api_key=..."
# Response
{ "sol": 4.52, "tokens": [...], "defi_positions": [...] }
GET
/token_safety $0.005 Honeypot check, tax analysis, owner audit

Pass a token mint address. Returns honeypot score, buy/sell tax, mint authority status, and rugged token flag.

# Request
curl "https://.../token_safety?token=EPjFWdd5...&api_key=..."
# Response
{ "is_honeypot": false, "buy_tax": 0.01, "sell_tax": 0.01, "owner_revoked": true, "ruggable": false }
GET
/txtrace $0.005 Full token flow reconstruction

Reconstructs the full token path of a transaction. Input a tx signature, get every hop — source, intermediate wallets, destination.

# Request
curl "https://.../txtrace?tx=...&api_key=..."
# Response
{ "hops": [{ "from": "...", "to": "...", "amount": 1000 }], "source_wallet": "...", "final_destination": "..." }
GET
/drain_forensics $0.025 Drainer wallet forensics + recovery path

Forensic analysis of a drained wallet. Identifies drainer contract, traces where funds went, and suggests recovery path.

GET
/approvals $0.005 All token approvals from a wallet

Lists every SPL token approval (delegate + amount) ever granted from a wallet, including revoked ones.

GET
/smart_money $0.010 Historical + current positions of top traders

Get historical entry/exit data and current holdings for the top 50 smart money wallets. Essential for agent trading strategies.

GET
/portfolio_audit $0.025 Full wallet risk assessment

Complete portfolio analysis: asset allocation, risk scores, exposure breakdown, DeFi positions, and security recommendations.

Drop-In Examples for Your Agent

Copy-paste into AutoGen, CrewAI, LangChain, or any Python agent.

🐍

Python — Balance Check

import requests

API_KEY = "YOUR_KEY"
BASE = "https://defi-webhook.m-zikriz.workers.dev/api"

def get_wallet_summary(wallet: str) -> dict:
    """Used by AI agent to assess a wallet before interaction."""
    r = requests.get(f"{BASE}/balance", params={
        "wallet": wallet,
        "api_key": API_KEY
    })
    data = r.json()
    return {
        "sol": data["sol"],
        "num_tokens": len(data["tokens"]),
        "defi_positions": data.get("defi_positions", [])
    }

# AI agent usage:
wallet_info = get_wallet_summary("8Jj...")  # before trading
🤖

CrewAI Tool Integration

from crewai.tools import BaseTool
import requests

class WalletDoctorTool(BaseTool):
    name = "Wallet Doctor"
    description = "Check Solana wallet balance, safety, and history"

    def _run(self, wallet: str, check: str = "balance"):
        # check: balance | token_safety | drain_forensics
        r = requests.get(
            "https://defi-webhook.m-zikriz.workers.dev/api/" + check,
            params={"wallet": wallet, "api_key": "YOUR_KEY"}
        )
        return r.json()

# Add to your CrewAI agent:
# agent = Agent(tools=[WalletDoctorTool()], ...)
🔗

LangChain Tool

from langchain.tools import Tool
import requests

def solana_wallet_check(wallet: str, service: str) -> str:
    """AI agent calls this before any on-chain action."""
    r = requests.get(
        f"https://defi-webhook.m-zikriz.workers.dev/api/{service}",
        params={"wallet": wallet, "api_key": "YOUR_KEY"}
    )
    return str(r.json())

wallet_tools = [
    Tool(name="wallet_balance", func=lambda w: solana_wallet_check(w, "balance"), description="Get SOL + token balance"),
    Tool(name="token_safety", func=lambda t: solana_wallet_check(t, "token_safety"), description="Check if token is safe"),
    Tool(name="drain_check", func=lambda w: solana_wallet_check(w, "drain_forensics"), description="Check if wallet is malicious"),
]
🎙️

AutoGen Agent

import autogen
from typing import Literal

def check_wallet(wallet: str, check: Literal["balance","approvals","drain_forensics"]) -> dict:
    r = requests.get(
        "https://defi-webhook.m-zikriz.workers.dev/api/" + check,
        params={"wallet": wallet, "api_key": "YOUR_KEY"}
    )
    return r.json()

config_list = autogen.config_list_from_models(model_list=[...])

agent = autogen.AssistantAgent(
    name="Solana_Agent",
    system_message="""You are a Solana trading agent.
    Before any trade, call check_wallet to verify wallet safety.
    Before buying a token, call check_wallet(..., 'token_safety') first.""",
    llm_config={"config_list": config_list}
)

Pay Per Call — No Commitment

Perfect for agents. Low volume? It's nearly free. Scaling to millions of calls? We have plans.

STARTER
$0.001/call
Balance, price oracle
  • ✓ Balance check
  • ✓ Price oracle
  • ✓ Token safety (partial)
  • ✓ 10,000 calls/month
Get Free Key
PRO
$0.005/call
Most endpoints
  • ✓ Everything in Starter
  • ✓ Token safety (full)
  • ✓ Tx trace
  • ✓ Approvals
  • ✓ Smart money
Get Pro Key
AGENCY
$49/mo
Unlimited for your agents
  • ✓ Everything in Pro
  • ✓ Unlimited calls
  • ✓ Priority Helius RPC
  • ✓ Dashboard + usage stats
  • ✓ Slack support
Contact Us