{
  "last_updated": "2026-03-08T02:34:30.660654+00:00",
  "commit_sha": "5c081b03e9c0c1bd408cda63bb79104785f470f3",
  "agents": {
    "AIXBTProjectInfoAgent": {
      "metadata": {
        "name": "AIXBT Project Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can retrieve trending project information including fundamental analysis, social activity, and recent developments using the aixbt API",
        "external_apis": [
          "aixbt"
        ],
        "tags": [
          "Project Analysis"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Aixbt.png",
        "examples": [
          "Tell me about Heurist",
          "What are the latest developments for Ethereum?",
          "Trending projects in the crypto space",
          "What's happening in the crypto market today?"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "aixbt_project_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "search_projects",
            "description": "Search for cryptocurrency projects with comprehensive details including fundamental analysis, market performance, social activity, and recent developments. Returns detailed insights on project names, descriptions, token contracts across multiple chains, Twitter handles, ticker symbols, CoinGecko IDs, and chronological signals/updates of notable project events. Perfect for discovering trending projects, researching specific tokens by name/ticker/Twitter handle, or filtering projects by blockchain network and popularity scores.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Number of projects to return (max 50).",
                  "default": 10
                },
                "name": {
                  "type": "string",
                  "description": "Filter projects by name (case-insensitive regex match). Effective for finding specific projects or related projects sharing similar naming conventions."
                },
                "ticker": {
                  "type": "string",
                  "description": "Filter projects by ticker symbol (case-insensitive match). Useful when you know the exact trading symbol of a token."
                },
                "xHandle": {
                  "type": "string",
                  "description": "Filter projects by X/Twitter handle. Ideal for finding projects from their social media identities, with or without the @ symbol."
                },
                "minScore": {
                  "type": "number",
                  "description": "Minimum score threshold for filtering projects based on social trends and market activity. Use 0 if a project name/ticker/handle is specified. For trending projects, use 0.1-0.3. For the most popular projects only, use 0.4-0.5. Higher scores indicate more significant current market attention."
                },
                "chain": {
                  "type": "string",
                  "description": "Filter projects by blockchain (e.g., 'ethereum', 'solana', 'base'). Returns projects with tokens deployed on the specified chain, useful for ecosystem-specific research."
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_market_summary",
            "description": "Get a summary of recent market-wide news including macroeconomics, major crypto tokens important updates of trending crypto projects. This tool returns 10~15 bite-sized news about various topics like market trends, opportunities and catalysts. Useful for knowing what's going on in crypto.",
            "parameters": {
              "type": "object",
              "properties": {
                "lookback_days": {
                  "type": "integer",
                  "description": "Number of days of market summaries to retrieve (1-3 days).",
                  "default": 1,
                  "minimum": 1,
                  "maximum": 3
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "AaveAgent": {
      "metadata": {
        "name": "Aave Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can report the status of Aave v3 protocols deployed on Ethereum, Polygon, Avalanche, and Arbitrum with details on liquidity, borrowing rates, and more",
        "external_apis": [
          "Aave"
        ],
        "tags": [
          "DeFi"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Aave.png",
        "examples": [
          "What is the current borrow rate for USDC on Polygon?",
          "Show me all assets on Ethereum with their lending and borrowing rates",
          "Available liquidity for ETH on Arbitrum"
        ]
      },
      "module": "aave_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_aave_reserves",
            "description": "Get Aave v3 reserve data including liquidity, rates, and asset information",
            "parameters": {
              "type": "object",
              "properties": {
                "chain_id": {
                  "type": "number",
                  "description": "Blockchain network ID (137=Polygon, 1=Ethereum, 43114=Avalanche C-Chain, 42161=Arbitrum One.)",
                  "enum": [
                    1,
                    137,
                    43114,
                    42161
                  ]
                },
                "block_identifier": {
                  "type": "string",
                  "description": "Optional block number or hash for historical data"
                },
                "asset_filter": {
                  "type": "string",
                  "description": "Optional filter to get data for a specific asset symbol (e.g., 'USDC')"
                }
              },
              "required": [
                "chain_id"
              ]
            }
          }
        }
      ]
    },
    "AlloraPricePredictionAgent": {
      "metadata": {
        "name": "Allora Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can predict the price of ETH/BTC with confidence intervals using Allora price prediction API",
        "external_apis": [
          "Allora"
        ],
        "tags": [
          "Prediction"
        ],
        "hidden": true,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Allora.png",
        "examples": [
          "What is the price prediction for BTC in the next 5 minutes?",
          "Price prediction for ETH in the next 8 hours"
        ]
      },
      "module": "allora_price_prediction_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_allora_prediction",
            "description": "Get price prediction for ETH or BTC with confidence intervals",
            "parameters": {
              "type": "object",
              "properties": {
                "token": {
                  "type": "string",
                  "description": "The cryptocurrency symbol (ETH or BTC)",
                  "enum": [
                    "ETH",
                    "BTC"
                  ]
                },
                "timeframe": {
                  "type": "string",
                  "description": "Time period for prediction",
                  "enum": [
                    "5m",
                    "8h"
                  ]
                }
              },
              "required": [
                "token",
                "timeframe"
              ]
            }
          }
        }
      ]
    },
    "ArbusAgent": {
      "metadata": {
        "name": "Arbus AI Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides professional-grade cryptocurrency analysis, sentiment tracking, and market intelligence using Arbus AI. Get AI-powered market insights and structured reports.",
        "external_apis": [
          "Arbus AI"
        ],
        "tags": [
          "Market Analysis"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Arbus.png",
        "examples": [
          "Is Bitcoin bullish right now?",
          "What's happening with DeFi markets?",
          "Generate a report on Solana's partnerships",
          "Analyze the current crypto market sentiment"
        ],
        "credits": {
          "default": 75
        }
      },
      "module": "arbus_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "ask_ai_assistant",
            "description": "Ask any question about crypto markets and get AI-powered analysis based on real-time data. Perfect for market sentiment, price movements, or general crypto questions.",
            "parameters": {
              "type": "object",
              "properties": {
                "query": {
                  "type": "string",
                  "description": "Your question about crypto markets (e.g., 'Is Bitcoin bullish right now?', 'What's happening with DeFi?')"
                },
                "days": {
                  "type": "integer",
                  "description": "Number of days of data to analyze (1-365)",
                  "default": 7,
                  "minimum": 1,
                  "maximum": 365
                }
              },
              "required": [
                "query"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "generate_report",
            "description": "Generate structured intelligence reports for crypto projects with categorized findings like partnerships, development, funding, and market developments.",
            "parameters": {
              "type": "object",
              "properties": {
                "twitter_handle": {
                  "type": "string",
                  "description": "Project's Twitter handle (without @ symbol, e.g., 'ethereum', 'solana')"
                },
                "category": {
                  "type": "string",
                  "description": "Report category type (Note: 'alerts' category may not be available for all projects)",
                  "enum": [
                    "projects",
                    "threador"
                  ],
                  "default": "projects"
                },
                "date_from": {
                  "type": "string",
                  "description": "Start date for report data (YYYY-MM-DD format, optional)"
                },
                "date_to": {
                  "type": "string",
                  "description": "End date for report data (YYYY-MM-DD format, optional)"
                }
              },
              "required": [
                "twitter_handle"
              ]
            }
          }
        }
      ]
    },
    "ArkhamIntelligenceAgent": {
      "metadata": {
        "name": "Arkham Intelligence Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides blockchain intelligence using Arkham's API including address analysis, entity identification, portfolio snapshots, and token holder data across 18+ chains",
        "external_apis": [
          "Arkham Intelligence"
        ],
        "tags": [
          "Intelligence"
        ],
        "hidden": true,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Arkham.png",
        "examples": [
          "Analyze address 0x742d35Cc6634C0532925a3b8D84c5d146D4B6bb2 on Ethereum",
          "Get portfolio snapshot for 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
          "Show token holders for USDC on Base",
          "Check contract metadata for 0x22aF33FE49fD1Fa80c7149773dDe5890D3c76F3b on Base"
        ]
      },
      "module": "arkham_intelligence_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_address_intelligence",
            "description": "Get the entity identification and labels of an address, and whether it's a smart contract. The data is missing for some addresses, which is normal.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "The blockchain address to analyze (can be wallet address, contract address, etc.)"
                },
                "chain": {
                  "type": "string",
                  "description": "The blockchain network"
                }
              },
              "required": [
                "address",
                "chain"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_contract_metadata",
            "description": "Get detailed metadata about smart contracts on EVM chains including proxy information, deployer details, and implementation addresses. Only works for EVM-compatible chains (not Bitcoin, Solana, etc.).",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "The EVM blockchain network"
                },
                "address": {
                  "type": "string",
                  "description": "The smart contract address to analyze"
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_portfolio_snapshot",
            "description": "Get a complete portfolio snapshot showing all token balances and their USD values across all chains for a given address at a specific point in time. If no time is provided, defaults to 7 days ago from the current UTC day start.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "The address or name of Entity ID to get portfolio data"
                },
                "time": {
                  "type": "integer",
                  "description": "Unix timestamp in milliseconds (UTC day start). If not provided, defaults to 7 days ago from the current UTC day start."
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_token_holders",
            "description": "Get the top holders of a specific token, including their balances, USD values, and percentage of total supply. Optionally group results by known entities.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "The blockchain network where the token exists"
                },
                "address": {
                  "type": "string",
                  "description": "The token contract address"
                },
                "groupByEntity": {
                  "type": "boolean",
                  "description": "Whether to group holders by known entities (e.g., exchanges, institutions)",
                  "default": true
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        }
      ]
    },
    "AskHeuristAgent": {
      "metadata": {
        "name": "Ask Heurist Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Crypto Q&A and research agent for traders. Ask questions about token analysis, market trends, trading strategies, macro news, and get in-depth analysis. Website: https://ask.heurist.ai",
        "external_apis": [
          "Ask Heurist"
        ],
        "tags": [
          "Research",
          "Trading"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/AskHeurist.png",
        "examples": [
          "What is the current price of Bitcoin?",
          "Give me a market digest for today",
          "What are the latest crypto news?",
          "Should I buy ETH right now? (deep mode)"
        ],
        "credits": {
          "default": 10,
          "ask_heurist": 10,
          "check_job_status": 0.1
        },
        "x402_config": {
          "enabled": true,
          "tool_prices": {
            "ask_heurist": "0.1",
            "check_job_status": "0.001"
          }
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 15681,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/AskHeuristAgent.json"
        }
      },
      "module": "ask_heurist_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "ask_heurist",
            "description": "Submit a crypto question to Ask Heurist. Returns a job_id immediately. Use check_job_status after the recommended wait time to retrieve the result.",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "The crypto question or research query to ask."
                },
                "mode": {
                  "type": "string",
                  "enum": [
                    "normal",
                    "deep"
                  ],
                  "default": "normal",
                  "description": "Query mode: 'normal' for quick answers (prices, news), 'deep' for complex analysis."
                }
              },
              "required": [
                "prompt"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "check_job_status",
            "description": "Check the status of an Ask Heurist job by its ID. Returns the result if completed, or next_step instructions if still pending.",
            "parameters": {
              "type": "object",
              "properties": {
                "job_id": {
                  "type": "string",
                  "description": "The job ID returned by ask_heurist."
                }
              },
              "required": [
                "job_id"
              ]
            }
          }
        }
      ]
    },
    "BaseUSDCForensicsAgent": {
      "metadata": {
        "name": "Base USDC Forensics Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Reveal USDC transaction patterns for any addresses on Base. This agent is your dedicated onchain USDC investigator for the Base network, combining BigQuery data access with a curated set of forensic tools.",
        "external_apis": [
          "Google BigQuery"
        ],
        "tags": [
          "Blockchain",
          "Base"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Base.png",
        "examples": [
          "Show me the USDC profile for 0x7d9d1821d15b9e0b8ab98a058361233e255e405d",
          "Who are the top USDC funders for this address?",
          "Where does this wallet send its USDC?",
          "Show daily USDC activity for this address"
        ],
        "credits": {
          "default": 3
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.03"
        }
      },
      "module": "base_usdc_forensics_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "usdc_basic_profile",
            "description": "Get a wallet's USDC activity summary on Base: first/last seen timestamps, total transfer count, aggregate USDC in/out and net flow. Use this for a quick financial snapshot before drilling into details.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "usdc_top_funders",
            "description": "Identify the top source wallets that send USDC to the target address, including counts, total volume, and time range. Use to detect concentrated funding patterns and surface potential hub/controller wallets.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of funders to return (default 50)",
                  "default": 50
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "usdc_top_sinks",
            "description": "Find the main destinations where the target wallet sends USDC, showing transfer counts and volumes per counterparty. Use to understand fund flow destinations and reveal payout hubs.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of sinks to return (default 50)",
                  "default": 50
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "usdc_net_counterparties",
            "description": "Compute per-counterparty net flow metrics showing whether the wallet is a net payer or receiver for each connected address. Use to rank counterparties by economic importance and spot asymmetric relationships.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of counterparties to return (default 100)",
                  "default": 100
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "usdc_daily_activity",
            "description": "Aggregate a wallet's USDC activity by calendar day, returning daily transaction counts and total volume received/sent. Use to spot active vs quiet periods and unusual volume spikes.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "usdc_hourly_pair_activity",
            "description": "Report hourly USDC transfer activity between two specific addresses, showing volume in each direction (A\u2192B and B\u2192A) per hour. Use to analyze flow intensity between suspected related wallets.",
            "parameters": {
              "type": "object",
              "properties": {
                "address_a": {
                  "type": "string",
                  "description": "First wallet address starting with 0x"
                },
                "address_b": {
                  "type": "string",
                  "description": "Second wallet address starting with 0x"
                }
              },
              "required": [
                "address_a",
                "address_b"
              ]
            }
          }
        }
      ]
    },
    "BitquerySolanaTokenInfoAgent": {
      "metadata": {
        "name": "Solana Token Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides comprehensive analysis of Solana tokens using Bitquery API. It can analyze token metrics (volume, price, liquidity), track holders and buyers, monitor trading activity, and identify trending tokens. The agent supports both specific token analysis and market-wide trend discovery.",
        "external_apis": [
          "Bitquery"
        ],
        "tags": [
          "Solana"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Solana.png",
        "examples": [
          "Analyze trending tokens on Solana",
          "Get token info for HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC",
          "Show top 10 most active tokens on Solana network",
          "Get top buyers for token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
          "Show token holders for HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC"
        ]
      },
      "module": "bitquery_solana_token_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "query_token_metrics",
            "description": "Get detailed token trading metrics using Solana mint address. This tool fetches trading data including volume, price movements, and liquidity for any Solana token. Use this when you need to analyze a specific Solana token's performance.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The Solana token mint address"
                },
                "quote_token": {
                  "type": "string",
                  "description": "Quote token to use ('usdc', 'sol', 'virtual', 'native_sol', or the token address)",
                  "default": "sol"
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_token_holders",
            "description": "Fetch top token holders data and distribution for any Solana token. This tool provides detailed information about token holders including their balances and percentage of total supply. Use this when you need to analyze the distribution of token ownership.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "Token mint address on Solana"
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_token_buyers",
            "description": "Fetch first buyers of a Solana token since its launch. This tool is useful to identify the early buyers who are likely insiders or smart money.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "Token mint address on Solana"
                },
                "limit": {
                  "type": "number",
                  "description": "Number of buyers to fetch",
                  "default": 10
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_top_traders",
            "description": "Fetch top traders (based on volume) for a Solana token. The top traders might include the whales actively trading the token, and arbitrage bots.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "Token mint address on Solana"
                },
                "limit": {
                  "type": "number",
                  "description": "Number of traders to fetch",
                  "default": 10
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_holder_status",
            "description": "Check if a list of token buyers are still holding, sold, or bought more for a specific Solana token. Use this tool to analyze the behavior of token buyers",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "Token mint address on Solana"
                },
                "buyer_addresses": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of buyer wallet addresses to check"
                }
              },
              "required": [
                "token_address",
                "buyer_addresses"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_top_trending_tokens",
            "description": "Get the current top trending tokens on Solana. This tool retrieves a list of the most popular and actively traded tokens on Solana. It provides key metrics for each trending token including price, volume, and recent price changes. Use this when you want to discover which tokens are currently gaining attention in the Solana ecosystem.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "default": 10,
                  "description": "Number of trending tokens to return (default 10)"
                }
              }
            }
          }
        }
      ]
    },
    "CaesarResearchAgent": {
      "metadata": {
        "name": "Caesar Research Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Advanced research agent using Caesar AI to find and analyze academic papers, articles, and authoritative sources.",
        "external_apis": [
          "Caesar"
        ],
        "tags": [
          "Research",
          "Academic"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Caesar.png",
        "examples": [
          "What is Heurist Mesh?",
          "What is x402-vending machine by Heurist Mesh?",
          "How does Heurist decentralized AI infrastructure work?",
          "Latest developments in AI safety research"
        ],
        "credits": {
          "default": 10,
          "caesar_research": 10,
          "get_research_result": 0.1
        },
        "x402_config": {
          "enabled": true,
          "tool_prices": {
            "caesar_research": "0.1",
            "get_research_result": "0.001"
          }
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10303,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/CaesarResearchAgent.json"
        }
      },
      "module": "caesar_research_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "caesar_research",
            "description": "Submit a research query to perform in-depth research on a topic using Caesar AI. Returns a research ID immediately. Use get_research_result with the returned ID to retrieve result when ready.",
            "parameters": {
              "type": "object",
              "properties": {
                "query": {
                  "type": "string",
                  "description": "The research question or topic to investigate. Be specific and clear."
                }
              },
              "required": [
                "query"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_research_result",
            "description": "Retrieve the results of a Caesar research query by its research ID. Returns the research status and result if completed. Status can be 'queued', 'researching', 'completed', or 'failed'.",
            "parameters": {
              "type": "object",
              "properties": {
                "research_id": {
                  "type": "string",
                  "description": "The research ID returned by caesar_research tool."
                }
              },
              "required": [
                "research_id"
              ]
            }
          }
        }
      ]
    },
    "CarvOnchainDataAgent": {
      "metadata": {
        "name": "CARV Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can query blockchain metrics of Ethereum, Base, Bitcoin, or Solana using natural language through the CARV API.",
        "external_apis": [
          "CARV"
        ],
        "tags": [
          "Onchain Data"
        ],
        "hidden": true,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Carv.png",
        "examples": [
          "Identify the biggest transaction of ETH in the past 30 days",
          "How many Bitcoins have been mined since the beginning of 2025?",
          "What are the top 5 most popular smart contracts on Ethereum in the past 30 days?"
        ]
      },
      "module": "carv_onchain_data_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "query_onchain_data",
            "description": "Query blockchain data from Ethereum, Base, Bitcoin, or Solana with natural language. Access detailed metrics including: block data (timestamps, hash, miner, gas used/limit), transaction details (hash, from/to addresses, values, gas prices), and network utilization statistics. Can calculate aggregate statistics like daily transaction counts, average gas prices, top wallet activities, and blockchain growth trends. Results can be filtered by time periods, address types, transaction values, and more.",
            "parameters": {
              "type": "object",
              "properties": {
                "blockchain": {
                  "type": "string",
                  "description": "The blockchain to query (ethereum, base, bitcoin, solana). Only these four blockchains are supported.",
                  "enum": [
                    "ethereum",
                    "base",
                    "bitcoin",
                    "solana"
                  ]
                },
                "query": {
                  "type": "string",
                  "description": "A natural language query describing the blockchain metrics request."
                }
              },
              "required": [
                "blockchain",
                "query"
              ]
            }
          }
        }
      ]
    },
    "ChainbaseAddressLabelAgent": {
      "metadata": {
        "name": "Chainbase Address Label Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Get all available labels for an ETH or Base address. Labels include owner identity, smart contract name, wallet behavior patterns and other properties. Also resolves ENS and Base names.",
        "external_apis": [
          "Chainbase"
        ],
        "tags": [
          "Blockchain",
          "Wallet"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Chainbase.png",
        "examples": [
          "Get labels for address 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
          "What is the owner of 0x2211d1D0020DAEA8039E46Cf1367962070d77DA9?",
          "Get information about vitalik.eth address"
        ],
        "credits": {
          "default": 2
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.02"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10300,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/ChainbaseAddressLabelAgent.json"
        }
      },
      "module": "chainbase_address_label_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_address_labels",
            "description": "Get all available labels for an ETH or Base 0x address. Labels may describe owner identity, smart contract name, wallet behavior patterns and other properties. Also resolves ENS and Base names if available.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "The 0x address to get labels for (e.g., 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045)"
                }
              },
              "required": [
                "address"
              ]
            }
          }
        }
      ]
    },
    "CoinGeckoTokenInfoAgent": {
      "metadata": {
        "name": "CoinGecko Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can fetch token information, market data, trending coins, and category data from CoinGecko.",
        "external_apis": [
          "Coingecko"
        ],
        "tags": [
          "Trading"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Coingecko.png",
        "examples": [
          "Top 5 crypto by market cap",
          "24-hr price change of ETH",
          "Get information about HEU",
          "Analyze AI16Z token",
          "List crypto categories",
          "Compare DeFi tokens",
          "Get trending on-chain pools",
          "Get top token holders for a token",
          "Get historical token holders chart",
          "Get recent trades for a token"
        ]
      },
      "module": "coingecko_token_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_token_info",
            "description": "Get detailed token information and market data using CoinGecko ID. This tool provides comprehensive cryptocurrency data including current price, market cap, trading volume, price changes, and more.",
            "parameters": {
              "type": "object",
              "properties": {
                "coingecko_id": {
                  "type": "string",
                  "description": "The CoinGecko ID of the token (preferred), or symbol/name as fallback"
                }
              },
              "required": [
                "coingecko_id"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_trending_coins",
            "description": "Get today's trending cryptocurrencies based on trading activities. This tool retrieves a list of crypto assets including basic market data.",
            "parameters": {
              "type": "object",
              "properties": {},
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_token_price_multi",
            "description": "Fetch price data for multiple tokens. Returns current price, market cap, 24hr volume, 24hr change %",
            "parameters": {
              "type": "object",
              "properties": {
                "ids": {
                  "type": "string",
                  "description": "Comma-separated CoinGecko IDs of the tokens to query"
                }
              },
              "required": [
                "ids"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_categories_list",
            "description": "Get a list of all available cryptocurrency categories from CoinGecko, like layer-1, layer-2, defi, etc. This tool retrieves all the category IDs and names that can be used for further category-specific queries.",
            "parameters": {
              "type": "object",
              "properties": {},
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_category_data",
            "description": "Get market data for all cryptocurrency categories from CoinGecko. This tool retrieves comprehensive information about all categories including market cap, volume, market cap change, top coins in each category, and more.",
            "parameters": {
              "type": "object",
              "properties": {
                "order": {
                  "type": "string",
                  "description": "Sort order for categories",
                  "enum": [
                    "market_cap_desc",
                    "market_cap_change_24h_desc"
                  ],
                  "default": "market_cap_change_24h_desc"
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of categories to return",
                  "default": 5,
                  "minimum": 3,
                  "maximum": 20
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_tokens_by_category",
            "description": "Get USD price data for tokens within a specific category. Returns price, market cap, volume, and price changes.",
            "parameters": {
              "type": "object",
              "properties": {
                "category_id": {
                  "type": "string",
                  "description": "The CoinGecko category ID (e.g., 'layer-1')"
                },
                "order": {
                  "type": "string",
                  "description": "Sort order for tokens",
                  "enum": [
                    "market_cap_desc",
                    "volume_desc"
                  ],
                  "default": "market_cap_desc"
                },
                "per_page": {
                  "type": "integer",
                  "description": "Number of results per page",
                  "default": 100,
                  "minimum": 10,
                  "maximum": 250
                },
                "page": {
                  "type": "integer",
                  "description": "Page number",
                  "default": 1,
                  "minimum": 1
                }
              },
              "required": [
                "category_id"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_trending_pools",
            "description": "Get top 10 trending onchain pools with token data from CoinGecko.",
            "parameters": {
              "type": "object",
              "properties": {
                "include": {
                  "type": "string",
                  "description": "Single attribute to include: base_token, quote_token, dex, or network",
                  "enum": [
                    "base_token",
                    "quote_token",
                    "dex",
                    "network"
                  ],
                  "default": "base_token"
                },
                "pools": {
                  "type": "integer",
                  "description": "Number of pools to return (1-10)",
                  "default": 4,
                  "minimum": 1,
                  "maximum": 10
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_top_token_holders",
            "description": "Get top token holder addresses for a token on a specific network. Max 40 holders.",
            "parameters": {
              "type": "object",
              "properties": {
                "network": {
                  "type": "string",
                  "description": "Network ID (e.g., base, bsc, solana, eth)"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                },
                "holders": {
                  "type": "integer",
                  "description": "Number of top holders to return.",
                  "default": 10,
                  "minimum": 5,
                  "maximum": 40
                }
              },
              "required": [
                "network",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_historical_holders",
            "description": "Get historical token holders with daily aggregated data and trend analysis.",
            "parameters": {
              "type": "object",
              "properties": {
                "network": {
                  "type": "string",
                  "description": "Network ID (e.g., eth, base, solana, polygon)"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                },
                "days": {
                  "type": "string",
                  "description": "Time period: 7 days or 30 days.",
                  "enum": [
                    "7",
                    "30"
                  ],
                  "default": "7"
                }
              },
              "required": [
                "network",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_recent_large_trades",
            "description": "Get recent large trades on DEX for a specific token. Filters by minimum USD volume.",
            "parameters": {
              "type": "object",
              "properties": {
                "network": {
                  "type": "string",
                  "description": "Network ID (e.g., eth, base, solana, bsc)"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                },
                "min_amount": {
                  "type": "number",
                  "description": "Minimum trade volume in USD to include",
                  "default": 3000
                }
              },
              "required": [
                "network",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_token_holders_traders",
            "description": "Get token holder and trader data combining: 1) Top holders - ranked wallet addresses with ownership percentages 2) Daily holder trend 3) Large trades in past 24 hours showing buy/sell whale activity. If you know that the token is deployed on multiple chains, you must make multiple calls to this tool in parallel to fetch data for every chain and address.",
            "parameters": {
              "type": "object",
              "properties": {
                "network": {
                  "type": "string",
                  "description": "Network ID (e.g., eth, base, solana, bsc, polygon)"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                },
                "days": {
                  "type": "string",
                  "description": "Historical holder data period: 7 or 30 days",
                  "enum": [
                    "7",
                    "30"
                  ],
                  "default": "7"
                },
                "min_trade_amount": {
                  "type": "number",
                  "description": "Minimum trade volume in USD for recent trades",
                  "default": 3000
                }
              },
              "required": [
                "network",
                "address"
              ]
            }
          }
        }
      ]
    },
    "CookieProjectInfoAgent": {
      "metadata": {
        "name": "Cookie Project Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides information about crypto projects including market data, social media metrics and mindshare growth metrics using Cookie API. It can identify projects by Twitter username or contract address.",
        "external_apis": [
          "Cookie API"
        ],
        "tags": [
          "Projects"
        ],
        "hidden": true,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/CookieFun.png",
        "examples": [
          "Tell me about the project with Twitter handle @heurist_ai",
          "Tell me about the project with Twitter handle @cookiedotfun",
          "Get details for the contract 0xc0041ef357b183448b235a8ea73ce4e4ec8c265f"
        ]
      },
      "module": "cookie_project_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_project_by_twitter_username",
            "description": "Get comprehensive information about a crypto project by its Twitter username. Returns detailed market metrics (market cap, price, 24h volume, liquidity, holder counts), performance trends with percentage changes, Twitter engagement statistics (follower counts, average impressions, engagement rates), and top engaging tweets with smart engagement points and impression counts. Perfect for analyzing a project's market performance, social media reach, and community engagement.",
            "parameters": {
              "type": "object",
              "properties": {
                "twitter_username": {
                  "type": "string",
                  "description": "Twitter username without the @ symbol"
                },
                "interval": {
                  "type": "string",
                  "description": "Time interval for the data (_3Days, _7Days)",
                  "enum": [
                    "_3Days",
                    "_7Days"
                  ],
                  "default": "_7Days"
                }
              },
              "required": [
                "twitter_username"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_project_by_contract_address",
            "description": "Get comprehensive information about a crypto project by its contract address. Returns detailed market metrics (market cap, price, 24h volume, liquidity, holder counts), performance trends with percentage changes, associated Twitter accounts, Twitter engagement statistics (follower counts, average impressions, engagement rates), and top engaging tweets with smart engagement points and impression counts. Perfect for analyzing a project's market performance across different chains, social media reach, and community engagement when you have the token contract address.",
            "parameters": {
              "type": "object",
              "properties": {
                "contract_address": {
                  "type": "string",
                  "description": "Token contract address"
                },
                "interval": {
                  "type": "string",
                  "description": "Time interval for the data (_3Days, _7Days)",
                  "enum": [
                    "_3Days",
                    "_7Days"
                  ],
                  "default": "_7Days"
                }
              },
              "required": [
                "contract_address"
              ]
            }
          }
        }
      ]
    },
    "DefiLlamaAgent": {
      "metadata": {
        "name": "DefiLlama Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Provides DeFi protocol, chain, and yield metrics including TVL, fees, volume, and yield trend analysis from DefiLlama.",
        "external_apis": [
          "DefiLlama"
        ],
        "tags": [
          "DeFi",
          "Analytics"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/DefiLlama.png",
        "examples": [
          "What is the TVL of Aave?",
          "Get metrics for Uniswap V3",
          "How much fees does Ethereum generate?",
          "What are the top protocols on Solana by fees?",
          "Get chain metrics for Base"
        ]
      },
      "module": "defillama_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_protocol_metrics",
            "description": "Get metrics for a DeFi protocol including TVL, fees, volume (for DEXes), revenue, deployed chains, and growth trend. Use this tool when you want to analyze a DeFi project. You must input the defillama slug obtained from project knowledge base.",
            "parameters": {
              "type": "object",
              "properties": {
                "protocol": {
                  "type": "string",
                  "description": "Protocol slug (e.g., 'aave-v3', 'curve-dex')"
                }
              },
              "required": [
                "protocol"
              ]
            },
            "verified": true,
            "recommended": true,
            "credits": {
              "default": 1
            },
            "x402_config": {
              "enabled": true,
              "default_price_usd": "0.01"
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_chain_metrics",
            "description": "Get metrics for a blockchain including TVL, fees, top protocols by fees, and growth trends.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Chain name (e.g., 'Solana', 'Base')"
                }
              },
              "required": [
                "chain"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "search_yield_pools",
            "description": "Search DefiLlama yield pools with optional filters for projects, chains, symbols, and stablecoin flag. Returns compact results with APY and TVL trend metrics. List filters (projects/chains/symbols) use OR matching, while different filter types are combined with AND.",
            "parameters": {
              "type": "object",
              "properties": {
                "projects": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional project slugs (e.g., ['aave-v3', 'curve-dex'])"
                },
                "chains": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional chain names (e.g., ['Ethereum', 'Arbitrum'])"
                },
                "symbols": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional token symbols (e.g., ['USDC', 'USDT'])"
                },
                "stablecoin": {
                  "type": "boolean",
                  "description": "Optional stablecoin-only filter"
                },
                "sort_by": {
                  "type": "string",
                  "description": "Sort field: APY or TVL",
                  "enum": [
                    "apy",
                    "tvl"
                  ],
                  "default": "apy"
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of pools to return (1-50)",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 50
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "DexScreenerTokenInfoAgent": {
      "metadata": {
        "name": "DexScreener Agent",
        "version": "1.0.0",
        "author": "Scattering team",
        "author_address": "0xa7DeBb68F2684074Ec4354B68E36C34AF363Fd57",
        "description": "This agent fetches real-time DEX trading data and token information across multiple chains using DexScreener API",
        "external_apis": [
          "DexScreener"
        ],
        "tags": [
          "Trading"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Dexscreener.png",
        "examples": [
          "Show me information about UNI on Uniswap",
          "Recent price movement for HEU",
          "Recent trading activity for TRUMP token on Solana?",
          "Analyze JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN on Solana"
        ]
      },
      "module": "dexscreener_token_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "search_pairs",
            "description": "Search for trading pairs on decentralized exchanges by token name, symbol, or address. This tool helps you find specific trading pairs across multiple DEXs and blockchains. It returns information about the pairs including price, volume, liquidity, and the exchanges where they're available. Data comes from DexScreener and covers major DEXs on most blockchains. The search results may be incomplete if the token is not traded on any of the supported chains.",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "Search term (token name, symbol, or address)"
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_specific_pair_info",
            "description": "Get detailed information about a specific trading pair on a decentralized exchange by chain and pair address. This tool provides comprehensive data about a DEX trading pair including current price, 24h volume, liquidity, price changes, and trading history. Data comes from DexScreener and is updated in real-time. You must specify both the blockchain and the exact pair contract address. The pair address is the LP contract address, not the quote token address.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Chain identifier (e.g., solana, bsc, ethereum, base)"
                },
                "pair_address": {
                  "type": "string",
                  "description": "The pair contract address to look up"
                }
              },
              "required": [
                "chain",
                "pair_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_token_pairs",
            "description": "Get all trading pairs for a specific token across decentralized exchanges by chain and token address. This tool retrieves a comprehensive list of all DEX pairs where the specified token is traded on a particular blockchain. It provides data on each pair including the paired token, exchange, price, volume, and liquidity. Data comes from DexScreener and is updated in real-time. You must specify both the blockchain and the exact token contract address.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Chain identifier (e.g., solana, bsc, ethereum, base)"
                },
                "token_address": {
                  "type": "string",
                  "description": "The token contract address to look up all pairs for"
                }
              },
              "required": [
                "chain",
                "token_address"
              ]
            }
          }
        }
      ]
    },
    "DuckDuckGoSearchAgent": {
      "metadata": {
        "name": "DuckDuckGo Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can fetch and analyze web search results using DuckDuckGo API and provide intelligent summaries.",
        "external_apis": [
          "DuckDuckGo"
        ],
        "tags": [
          "Search"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/DuckDuckGo.png",
        "examples": [
          "What happens if you put a mirror in front of a black hole?",
          "Could octopuses be considered alien life forms?",
          "Why don't birds get electrocuted when sitting on power lines?",
          "How do fireflies produce light?"
        ]
      },
      "module": "duckduckgo_search_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "search_web",
            "description": "Search the web using DuckDuckGo Search API",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "The search term to look up"
                },
                "max_results": {
                  "type": "number",
                  "description": "Maximum number of results to return (default: 5)",
                  "minimum": 1,
                  "maximum": 10
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        }
      ]
    },
    "ElfaTwitterIntelligenceAgent": {
      "metadata": {
        "name": "Elfa Twitter Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes a token or a topic or a Twitter account using Twitter data and Elfa API. It highlights smart influencers.",
        "external_apis": [
          "Elfa",
          "Apidance"
        ],
        "tags": [
          "Twitter"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Elfa.png",
        "examples": [
          "Search for mentions of Heurist, HEU, and heurist_ai in the last 30 days",
          "Analyze the Twitter account @heurist_ai",
          "Get trending tokens on Twitter in the last 24 hours",
          "What are people talking about ETH and SOL this week?"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "elfa_twitter_intelligence_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "search_mentions",
            "description": "Search for mentions of specific tokens or topics on Twitter. This tool finds discussions about cryptocurrencies, blockchain projects, or other topics of interest. It provides the tweets and mentions of smart accounts (only influential ones) and does not contain all tweets. Use this when you want to understand what influential people are saying about a particular token or topic on Twitter. Each of the search keywords should be one word or phrase. A maximum of 3 keywords are allowed. One key word should be one concept. Never use long sentences or phrases as keywords.",
            "parameters": {
              "type": "object",
              "properties": {
                "keywords": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of keywords to search for"
                },
                "days_ago": {
                  "type": "number",
                  "description": "Number of days to look back",
                  "default": 20
                },
                "limit": {
                  "type": "number",
                  "description": "Maximum number of results (minimum: 10, maximum: 20)",
                  "default": 10
                }
              },
              "required": [
                "keywords"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "search_account",
            "description": "Search for a Twitter account with both mention search and account statistics. This tool provides engagement metrics, follower growth, and mentions by smart users. It does not contain all tweets, but only those of influential users. It also identifies the topics and cryptocurrencies they frequently discuss. Data comes from ELFA API and can analyze several weeks of historical activity.",
            "parameters": {
              "type": "object",
              "properties": {
                "username": {
                  "type": "string",
                  "description": "Twitter username to analyze (without @)"
                },
                "days_ago": {
                  "type": "number",
                  "description": "Number of days to look back for mentions",
                  "default": 30
                },
                "limit": {
                  "type": "number",
                  "description": "Maximum number of mention results",
                  "default": 20
                }
              },
              "required": [
                "username"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_trending_tokens",
            "description": "Get current trending tokens on Twitter. This tool identifies which cryptocurrencies and tokens are generating the most buzz on Twitter right now. The results include token names, their relative popularity, and sentiment indicators. Use this when you want to discover which cryptocurrencies are currently being discussed most actively on social media. Data comes from ELFA API and represents real-time trends.",
            "parameters": {
              "type": "object",
              "properties": {
                "time_window": {
                  "type": "string",
                  "description": "Time window to analyze",
                  "default": "24h"
                }
              }
            }
          }
        }
      ]
    },
    "EtherscanAgent": {
      "metadata": {
        "name": "Etherscan Agent",
        "version": "1.1.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can analyze blockchain transactions, addresses, and ERC20 tokens across multiple chains using blockchain explorers and Firecrawl for data extraction.",
        "external_apis": [
          "Firecrawl"
        ],
        "tags": [
          "Blockchain"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Etherscan.png",
        "examples": [
          "Analyze transaction 0xd8a484a402a4373221288fed84e9025ed48eba2a45a7294c19289f740ca00fcd on Ethereum",
          "Get address history for 0x742d35Cc6639C0532fEa3BcdE3524A0be79C3b7B on Base",
          "Show token transfers for 0x55d398326f99059ff775485246999027b3197955 on BSC",
          "Get top holders for 0xEF22cb48B8483dF6152e1423b19dF5553BbD818b on Base"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "etherscan_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_transaction_details",
            "description": "Analyze a specific blockchain transaction. Provides detailed information about the transaction including sender, receiver, gas fees, and transaction actions (such as trading on DEX, interacting with DeFi). Use this tool when you want to know what exactly happened for a transaction id.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network to query.",
                  "enum": [
                    "ethereum",
                    "base",
                    "arbitrum",
                    "zksync",
                    "avalanche",
                    "bsc"
                  ]
                },
                "txid": {
                  "type": "string",
                  "description": "Transaction hash starting with 0x"
                }
              },
              "required": [
                "chain",
                "txid"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_address_history",
            "description": "Analyze a blockchain address to get transaction history, balance, and activity summary. Use this tool to gets insights into the address usage patterns and token holdings.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network to query",
                  "enum": [
                    "ethereum",
                    "base",
                    "arbitrum",
                    "zksync",
                    "avalanche",
                    "bsc"
                  ]
                },
                "address": {
                  "type": "string",
                  "description": "Wallet address starting with 0x"
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_erc20_token_transfers",
            "description": "Get recent token transfer transactions and basic token information including name, symbol, total supply, and holder count. Use this tool to understand recent tranfers of the token. Do not use this for token holder detailed distribution.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network where the token is deployed",
                  "enum": [
                    "ethereum",
                    "base",
                    "arbitrum",
                    "zksync",
                    "avalanche",
                    "bsc"
                  ]
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_erc20_top_holders",
            "description": "Get top 50 token holders data including wallet addresses, balances, percentages, and basic token information. Use this tool to understand token holder distribution.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network where the token is deployed",
                  "enum": [
                    "ethereum",
                    "base",
                    "arbitrum",
                    "zksync",
                    "avalanche",
                    "bsc"
                  ]
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        }
      ]
    },
    "EvmTokenInfoAgent": {
      "metadata": {
        "name": "EVM Token Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes large trades for EVM tokens across multiple chains using Bitquery API. It tracks whale movements by identifying actual traders with transaction details. Trade types are shown from the trader's perspective (not DEX perspective).",
        "external_apis": [
          "Bitquery"
        ],
        "tags": [
          "EVM"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/EVM.png",
        "examples": [
          "Show me recent large trades for USDT on Ethereum",
          "Get large buyers of token 0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c on BSC",
          "Show recent whale sells for WETH on base with minimum $10,000",
          "Large trades for 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 on ethereum above $50k"
        ],
        "supported_chains": [
          "ethereum",
          "eth",
          "bsc",
          "binance",
          "base",
          "arbitrum",
          "arb"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "evm_token_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_recent_large_trades",
            "description": "Get recent large trades for a specific EVM token on supported chains. Shows actual whale wallet addresses (not DEX contracts) with transaction details from the TRADER'S perspective. Perfect for tracking smart money movements and identifying accumulation or distribution patterns.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network. Supported: ethereum/eth, bsc/binance, base, arbitrum/arb"
                },
                "tokenAddress": {
                  "type": "string",
                  "description": "Token contract address (must start with 0x, e.g., '0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c')"
                },
                "minUsdAmount": {
                  "type": "number",
                  "description": "Minimum trade size in USD to filter whale trades",
                  "default": 5000
                },
                "filter": {
                  "type": "string",
                  "description": "Filter by trade type from TRADER perspective: 'all' for both buys and sells (default), 'buy' for purchases only, 'sell' for sales only",
                  "enum": [
                    "all",
                    "buy",
                    "sell"
                  ],
                  "default": "all"
                },
                "limit": {
                  "type": "number",
                  "description": "Number of trades to return",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10
                }
              },
              "required": [
                "chain",
                "tokenAddress"
              ]
            }
          }
        }
      ]
    },
    "ExaSearchAgent": {
      "metadata": {
        "name": "Exa Search Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can search the web using Exa's API and provide direct answers to questions.",
        "external_apis": [
          "Exa"
        ],
        "tags": [
          "Search"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Exa.png",
        "examples": [
          "What is the latest news on Bitcoin?",
          "Recent developments in quantum computing",
          "Search for articles about the latest trends in AI"
        ]
      },
      "module": "exa_search_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "exa_web_search",
            "description": "Search for webpages using Exa's neural search. Returns relevant results with titles, snippets, and URLs. Unlike traditional search, Exa uses semantic understanding (not boolean operators like AND/OR). Supports domain filtering and date filtering. Use includeDomains to restrict search to specific sites. Use date filters for time-sensitive queries.",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "The search term or natural language query"
                },
                "limit": {
                  "type": "number",
                  "description": "Maximum number of results to return (default: 10)"
                },
                "include_domains": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of domains to include in search (e.g., ['arxiv.org', 'papers.com']). Supports paths (e.g., 'example.com/blog') and wildcards (e.g., '*.substack.com')"
                },
                "start_published_date": {
                  "type": "string",
                  "description": "Only return results published after this date (ISO 8601 format: '2024-01-01T00:00:00.000Z')"
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "exa_answer_question",
            "description": "Get a direct answer to a question using Exa's answer API. This tool provides concise, factual answers to specific questions by searching and analyzing content from across the web. Use this when you need a direct answer to a specific question rather than a list of search results. It may fail to find information of niche topics such like small cap crypto projects.",
            "parameters": {
              "type": "object",
              "properties": {
                "question": {
                  "type": "string",
                  "description": "The question to answer"
                }
              },
              "required": [
                "question"
              ]
            }
          }
        }
      ]
    },
    "ExaSearchDigestAgent": {
      "metadata": {
        "name": "Exa Search Digest Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Web search agent using Exa API with concise LLM summarization.",
        "external_apis": [
          "Exa"
        ],
        "tags": [
          "Search"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Exa.png",
        "examples": [
          "What are the latest developments in AI safety?",
          "Recent breakthroughs in quantum computing",
          "Find information about the newest crypto projects",
          "Search for analysis on current market trends"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10299,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/ExaSearchDigestAgent.json"
        }
      },
      "module": "exa_search_digest_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "exa_web_search",
            "description": "Search the web for any topics. MANDATORY: Use time_filter for ANY time-sensitive requests. Domain filtering should be empty for the first query of a topic, and if it returns too much noise, do another query with targeted trusted domains.",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "Natural language search query. Phrase naturally and concisely. Boolean operators (AND/OR) are NOT supported."
                },
                "disambiguation": {
                  "type": "string",
                  "description": "If the search query contains ambiguous entity names, new projects, new technology, or niche acronyms AND when you have contexts pointing to what it is exactly, describe the entity with one sentence to help clarify, for example 'Heurist is a Web3 AI project'. If you don't have confident clarifications or when searching common-sense info, leave this field blank."
                },
                "time_filter": {
                  "type": "string",
                  "description": "REQUIRED for time-sensitive queries",
                  "enum": [
                    "past_week",
                    "past_month",
                    "past_year"
                  ]
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of pages",
                  "minimum": 6,
                  "maximum": 10,
                  "default": 10
                },
                "include_domains": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of domains to include in search (e.g., ['arxiv.org', 'papers.com']). Supports paths (e.g., 'example.com/blog') and wildcards (e.g., '*.substack.com')"
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "exa_scrape_url",
            "description": "Scrape full contents from URLs and use LLM to create a summary or extract information. Max 5 URLs per batch. (Do not use this for x.com twitter.com links - use Twitter agent tools instead)",
            "parameters": {
              "type": "object",
              "properties": {
                "urls": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of source URLs to scrape (max 5 URLs per batch)",
                  "maxItems": 5
                },
                "extract_prompt": {
                  "type": "string",
                  "description": "Instruction to LLM to process the scraped contents. Max 3 sentences. Use this when you want to extract specific information from the page. If this field is empty, a summary will be returned."
                }
              },
              "required": [
                "urls"
              ]
            }
          }
        }
      ]
    },
    "FirecrawlSearchAgent": {
      "metadata": {
        "name": "Firecrawl Search Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Advanced search agent that uses Firecrawl to perform research with intelligent query generation and content analysis.",
        "external_apis": [
          "Firecrawl"
        ],
        "tags": [
          "Search"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Firecrawl.png",
        "examples": [
          "What are the most bizarre crypto projects that actually succeeded?",
          "Find stories of people who became millionaires from meme coins",
          "The biggest scams in crypto history",
          "Search for the weirdest NFT collections that sold for huge amounts"
        ],
        "credits": {
          "default": 2
        }
      },
      "module": "firecrawl_search_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "firecrawl_web_search",
            "description": "Execute a web search query with advanced filtering using Firecrawl. MANDATORY: Use time_filter parameter for ANY time-sensitive requests (recent, today, past week, etc.). Supports Google search operators in search_term. Examples: For 'recent coinbase listings' use search_term='coinbase listings' + time_filter='qdr:w'. For 'today's bitcoin news' use search_term='bitcoin news' + time_filter='qdr:d'. For site-specific searches use search_term='site:coinbase.com announcements'",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "Search query WITHOUT time words. Remove 'recent', 'today', 'past week' from query - use time_filter instead. Supports operators: OR, AND, site:domain.com, quotes. Examples: 'coinbase listings' (not 'recent coinbase listings'), 'site:coinbase.com announcements', 'bitcoin OR ethereum price'."
                },
                "time_filter": {
                  "type": "string",
                  "description": "REQUIRED for time-sensitive queries. Map: 'recent/past week'\u2192'qdr:w', 'today/past day'\u2192'qdr:d', 'past hour'\u2192'qdr:h', 'past month'\u2192'qdr:m', 'past year'\u2192'qdr:y'. Always use when user mentions time periods.",
                  "enum": [
                    "qdr:h",
                    "qdr:d",
                    "qdr:w",
                    "qdr:m",
                    "qdr:y"
                  ]
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of results to return. Set based on user request: '5 results'\u21925, '10 items'\u219210, etc. Default is 10.",
                  "minimum": 5,
                  "maximum": 10,
                  "default": 10
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "firecrawl_extract_web_data",
            "description": "Extract structured data from one or multiple web pages using natural language instructions. This tool can process single URLs or entire domains (using wildcards like example.com/*). Use this when you need specific information from websites rather than general search results. You must specify what data to extract from the pages using the 'extraction_prompt' parameter.",
            "parameters": {
              "type": "object",
              "properties": {
                "urls": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of URLs to extract data from. Can include wildcards (e.g., 'example.com/*') to crawl entire domains."
                },
                "extraction_prompt": {
                  "type": "string",
                  "description": "Natural language description of what data to extract from the pages."
                }
              },
              "required": [
                "urls",
                "extraction_prompt"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "firecrawl_scrape_url",
            "description": "Scrape full contents from a specific URL. This provides complete raw web contents from individual web pages.",
            "parameters": {
              "type": "object",
              "properties": {
                "url": {
                  "type": "string",
                  "description": "The URL to scrape and analyze"
                },
                "wait_time": {
                  "type": "integer",
                  "description": "Time to wait for page to load in milliseconds (default: 5000)",
                  "default": 7500
                }
              },
              "required": [
                "url"
              ]
            }
          }
        }
      ]
    },
    "FirecrawlSearchDigestAgent": {
      "metadata": {
        "name": "Firecrawl Search Digest Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Advanced web search agent that uses Firecrawl to perform research with intelligent query generation and content analysis, then processes results with a small and fast LLM for concise, relevant summaries.",
        "external_apis": [
          "Firecrawl"
        ],
        "tags": [
          "Search"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Firecrawl.png",
        "examples": [
          "What are the most bizarre crypto projects that actually succeeded?",
          "Find stories of people who became millionaires from meme coins",
          "The biggest scams in crypto history",
          "Search for the weirdest NFT collections that sold for huge amounts"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "firecrawl_search_digest_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "firecrawl_web_search",
            "description": "Search the web with advanced filtering. MANDATORY: Use time_filter parameter for ANY time-sensitive requests (recent, past week, etc.). Supports Google search operators in search_term. Examples: For 'recent coinbase listings' use search_term='coinbase listings' + time_filter='qdr:w'. For 'today's bitcoin news' use search_term='bitcoin news' + time_filter='qdr:d'. For site-specific searches use search_term='site:coinbase.com announcements'. Always set limit for result count control. Results are summarized by AI with source attribution.",
            "parameters": {
              "type": "object",
              "properties": {
                "search_term": {
                  "type": "string",
                  "description": "Search query WITHOUT time words. Remove 'recent', 'today', 'past week' from query - use time_filter instead. Supports operators: OR, AND, site:domain.com, quotes. Examples: 'coinbase listings' (not 'recent coinbase listings'), 'site:coinbase.com announcements', 'bitcoin OR ethereum price'."
                },
                "time_filter": {
                  "type": "string",
                  "description": "REQUIRED for time-sensitive queries. 'past week'\u2192'qdr:w', 'past month'\u2192'qdr:m', 'past year'\u2192'qdr:y'. Always use when user mentions time periods.",
                  "enum": [
                    "qdr:w",
                    "qdr:m",
                    "qdr:y"
                  ]
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of web page results to process.",
                  "minimum": 5,
                  "maximum": 10,
                  "default": 10
                }
              },
              "required": [
                "search_term"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "firecrawl_extract_web_data",
            "description": "Extract structured data from one or multiple web pages using natural language instructions. This tool can process single URLs or entire domains (using wildcards like example.com/*). Use this when you need specific information from websites rather than full search results. You must specify what data to extract from the pages using the 'extraction_prompt' parameter. Returns structured data.",
            "parameters": {
              "type": "object",
              "properties": {
                "urls": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "List of URLs to extract data from. Can include wildcards (e.g., 'example.com/*') to crawl entire domains."
                },
                "extraction_prompt": {
                  "type": "string",
                  "description": "Natural language description of what data to extract from the pages."
                }
              },
              "required": [
                "urls",
                "extraction_prompt"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "firecrawl_scrape_url",
            "description": "Scrape full contents from a specific URL. Returns clean and summarized web contents.",
            "parameters": {
              "type": "object",
              "properties": {
                "url": {
                  "type": "string",
                  "description": "The URL to scrape and analyze"
                },
                "wait_time": {
                  "type": "integer",
                  "description": "Time to wait for page to load in milliseconds",
                  "default": 7500
                }
              },
              "required": [
                "url"
              ]
            }
          }
        }
      ]
    },
    "FundingRateAgent": {
      "metadata": {
        "name": "Funding Rate Agent",
        "version": "2.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Fetches Binance USD\u24c8\u2011M funding & open interest, summarizes OI trends, and computes APR from funding intervals.",
        "external_apis": [
          "Binance USD\u24c8\u2011M Futures"
        ],
        "tags": [
          "Arbitrage",
          "Funding",
          "Open Interest"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/FundingRate.png",
        "examples": [
          "Get OI trend and funding APR for BTC",
          "What is the current funding rate APR for SOL on Binance?",
          "List current Binance funding rates (interval-aware)",
          "Spot-perp carry candidates on Binance with funding > 0.02% per interval"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "funding_rate_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_all_funding_rates",
            "description": "Get current funding rates for major Binance perpetual symbols: BTC, ETH, SOL, BNB, XRP. Useful to identify overall perp market situation.",
            "parameters": {
              "type": "object",
              "properties": {},
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_symbol_funding_rates",
            "description": "Get the latest funding rate and APR for a specific Binance perp symbol",
            "parameters": {
              "type": "object",
              "properties": {
                "symbol": {
                  "type": "string",
                  "description": "Asset ticker or full symbol (e.g., BTC or BTCUSDT)"
                }
              },
              "required": [
                "symbol"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_symbol_oi_and_funding",
            "description": "Get 7d 4h Open Interest trend summary + latest funding rate and APR for a symbol on Binance perp.",
            "parameters": {
              "type": "object",
              "properties": {
                "symbol": {
                  "type": "string",
                  "description": "Asset ticker or full symbol (e.g., BTC or BTCUSDT)"
                }
              },
              "required": [
                "symbol"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "find_spot_futures_opportunities",
            "description": "Find Binance future markets with positive funding rates above a threshold. Useful for identifying funding rate arbitrage opportunities.",
            "parameters": {
              "type": "object",
              "properties": {
                "min_funding_rate": {
                  "type": "number",
                  "description": "Per-interval threshold, default 0.0003"
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "GoplusAnalysisAgent": {
      "metadata": {
        "name": "GoPlus Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can fetch and analyze security details of blockchain token contracts using GoPlus API.",
        "external_apis": [
          "GoPlus"
        ],
        "tags": [
          "Security"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Goplus.png",
        "examples": [
          "Check the safety of this token: 0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9 on Ethereum",
          "Analyze the security of this Solana token: AcmFHCquGwbrPxh9b3sUPMtAtXKMjkEzKnqkiHEnpump",
          "Is 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 safe on ETH mainnet?",
          "Check the security details of token 0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb on Base chain"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "goplus_analysis_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "fetch_security_details",
            "description": "Analyze the security of a blockchain token contract. This tool returns a token's authority settings, admin permissions, holder concentration, liquidity, and other security metrics helping to determine if the token is safe to buy.",
            "parameters": {
              "type": "object",
              "properties": {
                "contract_address": {
                  "type": "string",
                  "description": "The token contract address"
                },
                "chain_id": {
                  "type": "string",
                  "description": "The blockchain chain ID or 'solana' for Solana tokens. Supported chains: Ethereum (1), Optimism (10), Cronos (25), BSC (56), Gnosis (100), HECO (128), Polygon (137), Fantom (250), KCC (321), zkSync Era (324), ETHW (10001), FON (201022), Arbitrum (42161), Avalanche (43114), Linea Mainnet (59144), Base (8453), Tron (tron), Scroll (534352), opBNB (204), Mantle (5000), ZKFair (42766), Blast (81457), Manta Pacific (169), Berachain Artio Testnet (80085), Merlin (4200), Bitlayer Mainnet (200901), zkLink Nova (810180), X Layer Mainnet (196), Solana (solana)",
                  "default": 1
                }
              },
              "required": [
                "contract_address"
              ]
            }
          }
        }
      ]
    },
    "L2BeatAgent": {
      "metadata": {
        "name": "L2Beat Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Specialized agent for analyzing Layer 2 scaling solutions data from L2Beat. Provides comprehensive insights into L2 TVL, market share, and transaction costs across different chains and categories (Rollups, Validiums & Optimiums).",
        "external_apis": [
          "L2Beat"
        ],
        "tags": [
          "L2Beat"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/L2Beat.png",
        "examples": [
          "What's the current TVL and market share of top L2 solutions?",
          "Which L2 has the lowest transaction costs right now?",
          "What are the average transaction costs for ZK chains?",
          "Compare the costs of different L2 solutions",
          "What are the top Validiums and Optimiums by TVL?"
        ],
        "credits": {
          "default": 1
        }
      },
      "module": "l2beat_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_l2_summary",
            "description": "Get comprehensive summary data for Layer 2 solutions including TVL, market share, chain type, and stage information.",
            "parameters": {
              "type": "object",
              "properties": {
                "category": {
                  "type": "string",
                  "enum": [
                    "rollups",
                    "validiumsAndOptimiums"
                  ],
                  "description": "Category of L2s to fetch. Options: 'rollups' (default), 'validiumsAndOptimiums'",
                  "default": "rollups"
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_l2_costs",
            "description": "Get simplified transaction cost data showing L2 name and average cost per user operation in USD.",
            "parameters": {
              "type": "object",
              "properties": {
                "category": {
                  "type": "string",
                  "enum": [
                    "rollups",
                    "validiumsAndOptimiums"
                  ],
                  "description": "Category of L2s to fetch. Options: 'rollups' (default), 'validiumsAndOptimiums'",
                  "default": "rollups"
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "LetsBonkTokenInfoAgent": {
      "metadata": {
        "name": "LetsBonk Token Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes LetsBonk.fun tokens on Solana using Bitquery API. It tracks tokens about to graduate, provides trading data, price information, identifies top buyers/sellers, OHLCV data, pair addresses, liquidity information, tracks new token creation, calculates bonding curve progress, and monitors tokens above 95% bonding curve progress across all available launchpads.",
        "external_apis": [
          "Bitquery"
        ],
        "tags": [
          "LetsBonk",
          "Solana"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/LetsBonk.png",
        "examples": [
          "Show me top 10 tokens about to graduate on LetsBonk.fun",
          "Get latest trades for token So11111111111111111111111111111111111111112",
          "What's the current price of token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
          "Show me top buyers of token DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
          "Show me top sellers of token JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN",
          "Get OHLCV data for token MangoCzJ36AjZyKwVj3VnYU4GTonjfVEnJmvvWaxLac",
          "Get pair address for token orcaEKTdK7LKz57vaAYr9QeNsVEPfiu6QeMU1kektZE",
          "Get liquidity for pool address 4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R",
          "Show me recently created LetsBonk.fun tokens",
          "Calculate bonding curve progress for token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
          "Show me tokens above 95% bonding curve progress",
          "Get trades on raydium_launchpad for token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
        ]
      },
      "module": "lets_bonk_token_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "query_about_to_graduate_tokens",
            "description": "Get top LetsBonk.fun tokens that are about to graduate. These tokens are close to hitting the graduation threshold and may see increased trading activity.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of tokens to return (default 10, max 100)"
                },
                "since_date": {
                  "type": "string",
                  "description": "ISO date string to filter tokens since this date (e.g., '2025-07-11T13:45:00Z'). Defaults to 7 days ago."
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_latest_trades",
            "description": "Get the most recent trades for a specific LetsBonk.fun token across all launchpads. Useful for tracking trading activity and price movements. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get trades for"
                },
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of recent trades to return (default 10)"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter trades (e.g., 'raydium_launchpad'). If not provided, returns trades from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_latest_price",
            "description": "Get the most recent price data for a specific LetsBonk.fun token across all launchpads. Returns the latest trade price and transaction details. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get price for"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter price data (e.g., 'raydium_launchpad'). If not provided, returns latest price from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_top_buyers",
            "description": "Get the top buyers for a specific LetsBonk.fun token across all launchpads. Shows who has bought the most (by USD volume) and can help identify whales and smart money. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get top buyers for"
                },
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of top buyers to return"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter buyers (e.g., 'raydium_launchpad'). If not provided, returns buyers from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_top_sellers",
            "description": "Get the top sellers for a specific LetsBonk.fun token across all launchpads. Shows who has sold the most (by USD volume) and can help identify distribution patterns. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get top sellers for"
                },
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of top sellers to return"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter sellers (e.g., 'raydium_launchpad'). If not provided, returns sellers from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_ohlcv_data",
            "description": "Get OHLCV (Open, High, Low, Close, Volume) data for a specific LetsBonk.fun token across all launchpads. Returns candlestick data for technical analysis. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get OHLCV data for"
                },
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of time intervals to return"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter OHLCV data (e.g., 'raydium_launchpad'). If not provided, returns data from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_pair_address",
            "description": "Get the pair/pool address for a specific LetsBonk.fun token across all launchpads. Returns the market address and trading pair information. Can optionally filter by a specific launchpad.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to get pair address for"
                },
                "launchpad": {
                  "type": "string",
                  "description": "Optional: Specific launchpad to filter pairs (e.g., 'raydium_launchpad'). If not provided, returns pairs from all launchpads."
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_liquidity",
            "description": "Get current liquidity data for a specific token pool address. Returns the amounts of base and quote tokens in the liquidity pool.",
            "parameters": {
              "type": "object",
              "properties": {
                "pool_address": {
                  "type": "string",
                  "description": "The pool/market address to get liquidity for"
                }
              },
              "required": [
                "pool_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_recently_created_tokens",
            "description": "Get the most recently created LetsBonk.fun tokens. Shows new token launches that might present early investment opportunities.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of recently created tokens to return (default 10)"
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_bonding_curve_progress",
            "description": "Calculate the bonding curve progress for a specific LetsBonk.fun token. Shows how close the token is to graduation using the bonding curve formula.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The token mint address to calculate bonding curve progress for"
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_tokens_above_95_percent",
            "description": "Get LetsBonk.fun tokens that are above 95% bonding curve progress. These tokens are very close to graduation and may see increased activity.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 100,
                  "default": 10,
                  "description": "Number of tokens above 95% to return (default 10)"
                }
              }
            }
          }
        }
      ]
    },
    "MemoryAgent": {
      "metadata": {
        "name": "Memory Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Agent that maintains conversation history across sessions and platforms. It can query the conversation history and store new conversations.",
        "external_apis": [],
        "tags": [
          "Memory"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Memory.png",
        "examples": [
          "Save our conversation to memory",
          "What did we talk about in our last conversation?",
          "Summarize our previous conversations"
        ]
      },
      "module": "memory_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "store_conversation",
            "description": "Store the current conversation in the user's memory",
            "parameters": {
              "type": "object",
              "properties": {
                "content": {
                  "type": "string",
                  "description": "The conversation content to store"
                },
                "metadata": {
                  "type": "object",
                  "description": "Optional metadata about the conversation (e.g., platform, topic)"
                }
              },
              "required": [
                "content"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "retrieve_conversations",
            "description": "Retrieve stored conversations from the user's memory",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of conversations to retrieve (default: 5)"
                },
                "filter": {
                  "type": "object",
                  "description": "Optional filters to apply (e.g., platform, date range, topic)"
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "MoniTwitterInsightAgent": {
      "metadata": {
        "name": "Moni Twitter Insight Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes Twitter accounts providing insights on smart followers, mentions, and account activity.",
        "external_apis": [
          "Moni"
        ],
        "tags": [
          "Twitter"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Moni.png",
        "examples": [
          "Show me the follower growth trends for heurist_ai over the last week",
          "What categories of followers does heurist_ai have",
          "Show me the recent smart mentions for ethereum"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "moni_twitter_insight_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_smarts_categories",
            "description": "Get categories of smarts for a Twitter account",
            "parameters": {
              "type": "object",
              "properties": {
                "username": {
                  "type": "string",
                  "description": "Twitter username without the @ symbol"
                }
              },
              "required": [
                "username"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_smart_mentions_feed",
            "description": "Get recent smart mentions feed for a Twitter account",
            "parameters": {
              "type": "object",
              "properties": {
                "username": {
                  "type": "string",
                  "description": "Twitter username without the @ symbol"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of mentions to return",
                  "default": 100
                },
                "fromDate": {
                  "type": "integer",
                  "description": "Unix timestamp of the earliest event to include"
                },
                "toDate": {
                  "type": "integer",
                  "description": "Unix timestamp of the most recent post to include"
                }
              },
              "required": [
                "username"
              ]
            }
          }
        }
      ]
    },
    "PondWalletAnalysisAgent": {
      "metadata": {
        "name": "Pond Wallet Analysis Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes cryptocurrency wallet activities across Ethereum and Base networks using the Cryptopond API.",
        "external_apis": [
          "Cryptopond"
        ],
        "tags": [
          "Wallet Analysis"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/CryptoPond.png",
        "examples": [
          "Analyze Ethereum wallet 0x2B25B37c683F042E9Ae1877bc59A1Bb642Eb1073",
          "What's the trading volume for Ethereum wallet 0x2B25B37c683F042E9Ae1877bc59A1Bb642Eb1073?",
          "Check the transaction activity for Base wallet 0x97224Dd2aFB28F6f442E773853F229B3d8A0999a"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "pond_wallet_analysis_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "analyze_ethereum_wallet",
            "description": "Analyze an Ethereum wallet address for DEX trading frequency and volume and PnL over the last 30 days. The unit of gas fees is in GWEI. Useful when analyzing trading patterns of an EOA wallet.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Ethereum wallet address (starts with 0x)"
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "analyze_base_wallet",
            "description": "Analyze a Base network wallet address for DEX trading frequency and volume and PnL over the last 30 days. Ignore the gas fee results. Useful when analyzing trading patterns of an EOA wallet.",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Base wallet address (starts with 0x)"
                }
              },
              "required": [
                "address"
              ]
            }
          }
        }
      ]
    },
    "ProjectKnowledgeAgent": {
      "metadata": {
        "name": "Project Knowledge Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides access to a comprehensive database of crypto projects. It can search for projects by name, token symbol, or X handle, and retrieve detailed project information including funding, team, events, and more.",
        "external_apis": [
          "PostgreSQL",
          "AIXBT",
          "PageIndex"
        ],
        "tags": [
          "Projects",
          "Research"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/ProjectKnowledge.png",
        "examples": [
          "Get information about Ethereum",
          "Search for projects by symbol BTC",
          "Get project details for @ethereum",
          "Find DeFi projects funded by Paradigm in 2024",
          "AI projects listed on Binance with recent airdrops"
        ]
      },
      "module": "project_knowledge_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_project",
            "description": "Get crypto project details including description, twitter handle, defillama slug, token info (CA on multiple chains, coingecko id, symbol, WITHOUT market data), team, investors, chronological events, similar projects. Lookup parameter MUST be ONE OF name, symbol, or x_handle. Not all result fields are available. New or small projects without VC backing might be missing. Data aggregated from multiple sources may have inconsistencies. Name lookups can be ambiguous - must verify the returned entity matches the user intent. In case of mismatch, ignore the tool response.",
            "parameters": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "Project name (e.g., 'Ethereum', 'Uniswap'). Use for exact match and prefix match."
                },
                "symbol": {
                  "type": "string",
                  "description": "Token symbol. Use for exact match for projects with a live token."
                },
                "x_handle": {
                  "type": "string",
                  "description": "X (Twitter) handle with or without @. Use for exact match."
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "semantic_search_projects",
            "description": "Search crypto projects using natural language criteria. Supports investor filters, tag/category filters, funding years, event years, exchange listings, and event keywords. You can combine multiple constraints in one query. Example queries: 'DeFi projects funded by Paradigm in 2024', 'AI projects listed on Binance with airdrop events in 2025'. Returns matching projects with relevant fields (name, one_liner, tags, investors, fundraising, events, exchanges). Best for discovery and filtering across 10k+ indexed projects. New or small projects without VC backing might be missing. For single project lookup by exact name/symbol/address/twitter, use get_project instead.",
            "parameters": {
              "type": "object",
              "properties": {
                "query": {
                  "type": "string",
                  "description": "Natural language query describing what to find. Include any combination of: investor names like a16z, Paradigm; tags/categories like DeFi, AI, Infra, Layer1, Layer2, zk, NFT, Privacy, Gaming, DePIN, Stablecoin Protocol, DEX, Lending, Derivatives; funded years; event years; exchanges like Binance, Binance Alpha, Coinbase, OKX, Bybit; events like airdrop, mainnet, listing, partnership, exploit/hack, TGE; description of the project business"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of projects to return",
                  "default": 20,
                  "minimum": 1,
                  "maximum": 100
                }
              },
              "required": [
                "query"
              ]
            }
          }
        }
      ]
    },
    "PumpFunTokenAgent": {
      "metadata": {
        "name": "PumpFun Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent analyzes Pump.fun token on Solana using Bitquery API. It tracks token creation and graduation events on Pump.fun.",
        "external_apis": [
          "Bitquery"
        ],
        "tags": [
          "Solana"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Pumpfun.png",
        "examples": [
          "Latest token launched on Pump.fun in the last 24 hours"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "pumpfun_token_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "query_recent_token_creation",
            "description": "Fetch data of tokens recently created on Pump.fun on Solana. Results include the basic info like name, symbol, mint address.",
            "parameters": {
              "type": "object",
              "properties": {
                "interval": {
                  "type": "string",
                  "enum": [
                    "hours",
                    "days"
                  ],
                  "default": "hours",
                  "description": "Time interval (hours/days)"
                },
                "offset": {
                  "type": "number",
                  "minimum": 1,
                  "maximum": 99,
                  "default": 1,
                  "description": "Time offset for interval"
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "query_latest_graduated_tokens",
            "description": "Fetch recently graduated tokens from Pump.fun on Solana with their latest prices and market caps. Graduation means that a newly launched token hits a certain market cap threshold, and that it has gained traction and liquidity.",
            "parameters": {
              "type": "object",
              "properties": {
                "timeframe": {
                  "type": "number",
                  "description": "Timeframe in hours to look back for graduated tokens",
                  "default": 24
                }
              }
            }
          }
        }
      ]
    },
    "SallyHealthAgent": {
      "metadata": {
        "name": "Sally Health Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Sally is a health and medical AI assistant. This agent talks to Sally about medical and health topics, providing helpful information and guidance.",
        "external_apis": [
          "Sally"
        ],
        "tags": [
          "Health"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Sally.png",
        "examples": [
          "How can I stay fit with a work from home routine?",
          "What are good foods for heart health?",
          "Tips for better sleep quality",
          "How to manage stress naturally?"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "sally_health_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "ask_health_advice",
            "description": "Sally is a health and medical AI assistant. This tool talks to Sally about medical and health topics.",
            "parameters": {
              "type": "object",
              "properties": {
                "message": {
                  "type": "string",
                  "description": "Message in natural language to talk to Sally agent. It can be a question or a prompt for information about health and medical topics."
                }
              },
              "required": [
                "message"
              ]
            }
          }
        }
      ]
    },
    "SolWalletAgent": {
      "metadata": {
        "name": "SolWallet Agent",
        "version": "1.0.0",
        "author": "QuantVela",
        "author_address": "0x53cc700f818DD0b440598c666De2D630F9d47273",
        "description": "This agent can query Solana wallet assets and recent swap transactions using Helius API.",
        "external_apis": [
          "Helius"
        ],
        "tags": [
          "Solana"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Solana.png",
        "examples": []
      },
      "module": "sol_wallet_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_wallet_assets",
            "description": "Query and retrieve all token holdings for a specific Solana wallet address. This tool helps you get detailed information about each asset including token amounts, current prices and total holding values. Use this when you need to analyze a wallet's portfolio or track significant token holdings.",
            "parameters": {
              "type": "object",
              "properties": {
                "owner_address": {
                  "type": "string",
                  "description": "The Solana wallet address to query"
                }
              },
              "required": [
                "owner_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "analyze_common_holdings_of_top_holders",
            "description": "Analyze the top tokens commonly held by the holders of a specific token. This tool provides insights into the top 5 most valuable tokens (by total holding value) that are held by the token holders. Use this when you need to understand what other tokens are popular among the holders of a specific token.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_address": {
                  "type": "string",
                  "description": "The Solana token mint address to analyze"
                },
                "top_n": {
                  "type": "integer",
                  "description": "Number of top holders to analyze for token holdings (default: 20)",
                  "default": 20
                }
              },
              "required": [
                "token_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_tx_history",
            "description": "Fetch and analyze recent SWAP transactions for a Solana wallet. This tool helps you track trading activity by providing detailed information about token swaps, including amounts, prices, and transaction types (BUY/SELL). Use this when you need to understand a wallet's trading behavior or monitor specific swap activities.",
            "parameters": {
              "type": "object",
              "properties": {
                "owner_address": {
                  "type": "string",
                  "description": "The Solana wallet address to query transaction history for"
                }
              },
              "required": [
                "owner_address"
              ]
            }
          }
        }
      ]
    },
    "SpaceTimeAgent": {
      "metadata": {
        "name": "Space and Time Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can analyze blockchain data by executing SQL queries from natural language using Space and Time, a database with ZK proofs.",
        "external_apis": [
          "Space and Time"
        ],
        "tags": [
          "Onchain Data"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/SpacenTime.png",
        "examples": [
          "Get the number of blocks created on Ethereum per day over the last month",
          "Tell me top 10 GPUs from HEURIST",
          "How many transactions occurred on Ethereum yesterday?",
          "What's the largest transaction value on Ethereum in the past 24 hours?"
        ]
      },
      "module": "space_and_time_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "generate_and_execute_sql",
            "description": "Use this to analyze blockchain data including transactions, blocks, and wallet activities. Internally, this tool generates a SQL query from natural language and execute it against blockchain data. Supported chains: Ethereum, Bitcoin, Polygon, Avalanche, Sui, ZKsync Era.",
            "parameters": {
              "type": "object",
              "properties": {
                "nl_query": {
                  "type": "string",
                  "description": "Natural language description of the blockchain data query"
                }
              },
              "required": [
                "nl_query"
              ]
            }
          }
        }
      ]
    },
    "TokenMetricsAgent": {
      "metadata": {
        "name": "TokenMetrics Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides market insights, sentiment analysis, and resistance/support data for cryptocurrencies using TokenMetrics API.",
        "external_apis": [
          "TokenMetrics"
        ],
        "tags": [
          "Market Analysis"
        ],
        "hidden": true,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/TokenMetrics.png",
        "examples": [
          "What is the current crypto market sentiment?",
          "Show me resistance and support levels for ETH",
          "resistance and support levels for Solana"
        ]
      },
      "module": "tokenmetrics_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_sentiments",
            "description": "Retrieves GENERAL market sentiment data for the ENTIRE cryptocurrency market from TokenMetrics. IMPORTANT: This tool only returns general market sentiment, NOT the sentiment of any specific token. Use for questions about overall market mood.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "number",
                  "description": "Maximum number of results to return (default: 10)",
                  "default": 10
                },
                "page": {
                  "type": "number",
                  "description": "Page number for pagination (default: 0)",
                  "default": 0
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_resistance_support_levels",
            "description": "Retrieves resistance and support level data for specified cryptocurrencies. This tool provides token-specific technical analysis data showing key price levels where tokens might encounter buying or selling pressure. Use this for technical analysis of specific tokens.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_ids": {
                  "type": "string",
                  "description": "Comma-separated list of token IDs, limited to two tokens (e.g., '3375,3306' for BTC,ETH)",
                  "default": "3375,3306"
                },
                "symbols": {
                  "type": "string",
                  "description": "Comma-separated list of token symbols, limited to two tokens (e.g., 'BTC,ETH')",
                  "default": "BTC,ETH"
                },
                "limit": {
                  "type": "number",
                  "description": "Maximum number of results to return (default: 10)",
                  "default": 10
                },
                "page": {
                  "type": "number",
                  "description": "Page number for pagination (default: 0)",
                  "default": 0
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_token_info",
            "description": "Retrieves token information from TokenMetrics API using token name or symbol. Returns the token ID for use in other API calls.",
            "parameters": {
              "type": "object",
              "properties": {
                "token_name": {
                  "type": "string",
                  "description": "Name of the token to search for (e.g., 'bitcoin')"
                },
                "token_symbol": {
                  "type": "string",
                  "description": "Symbol of the token to search for (e.g., 'BTC')"
                },
                "limit": {
                  "type": "number",
                  "description": "Maximum number of results to return (default: 20)",
                  "default": 20
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "TokenResolverAgent": {
      "metadata": {
        "name": "Token Resolver Agent",
        "version": "1.1.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Find tokens by address/symbol/name/CoinGecko ID, return normalized profiles and top DEX pools. Pulls extra context (sites/socials/funding/indicators) where available.",
        "external_apis": [
          "CoinGecko",
          "DexScreener",
          "Bitquery (Solana)",
          "GMGN/Unifai",
          "Yahoo Finance (optional)",
          "Coinsider (optional)"
        ],
        "tags": [
          "Token Search",
          "Market Data"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/token-resolver-agent.png",
        "examples": [
          "token_search query=ETH",
          "token_search query=0xEF22cb48B8483dF6152e1423b19dF5553BbD818b chain=base",
          "token_profile chain=base address=0xEF22cb48B8483dF6152e1423b19dF5553BbD818b include=['pairs']",
          "token_profile symbol=BTC include=['funding_rates','technical_indicators']"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 2364,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/TokenResolverAgent.json"
        }
      },
      "module": "token_resolver_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "token_search",
            "description": "Find tokens by address, ticker/symbol, or token name. Returns up to 5 concise candidates with basic market/trading context. Use this tool for searching new tokens, unfamiliar tokens, or ambiguous queries. Do not search for multiple assets with one search query. This tool may return multiple assets with the same or similar name/symbol, and in this case you should identify the asset with largest market cap / volume or liquidity to identify the probable asset and ignore the others. The result might include scam tokens (indicated by higher-than-usual market cap with very low volume), which is totally normal and you should ignore them without reporting as errors.",
            "parameters": {
              "type": "object",
              "properties": {
                "query": {
                  "type": "string",
                  "description": "0x\u2026 (EVM), Solana mint, ticker/symbol or token name. When searching by name, do not add common crypto suffix such as 'protocol' or 'network'"
                },
                "chain": {
                  "type": "string",
                  "description": "Optional chain hint (e.g., base, ethereum, solana). ONLY use this field if you have direct context mentioning the chain. Leave this field blank otherwise."
                },
                "type_hint": {
                  "type": "string",
                  "enum": [
                    "address",
                    "symbol",
                    "name"
                  ],
                  "description": "Optional explicit hint for the type of the query"
                }
              },
              "required": [
                "query"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "token_profile",
            "description": "Get detailed profile and market data of a token. Identify it by ONE OF: chain+address (for contract tokens) or symbol (for native/well-known tokens) or coingecko_id. Optional sections to return: pairs, funding_rates (Binance-listed large caps only), technical_indicators (large caps only). Use this tool for well-known tokens such as BTC, ETH, SOL, or for tokens that you already know its chain+address or Coingecko ID. Prefer to use Coingecko ID if available. If the token address or coingecko_id is not known, use token_search tool first to get the disambiguated token information. Only enable pairs section if the token is an altcoin or you believe it has a DEX pool (some tokens are only traded on CEXs). Do not enable pairs section for large caps tokens. Only enable funding rates and technical indicators for large caps.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain such as ethereum, base, bsc, solana"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address (use with chain parameter)"
                },
                "symbol": {
                  "type": "string",
                  "description": "Ticker symbol like BTC or ETH. Only use this for well-known native tokens."
                },
                "coingecko_id": {
                  "type": "string"
                },
                "include": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "enum": [
                      "pairs",
                      "funding_rates",
                      "technical_indicators"
                    ]
                  },
                  "default": [
                    "pairs"
                  ]
                },
                "top_n_pairs": {
                  "type": "integer",
                  "default": 3,
                  "minimum": 1,
                  "maximum": 10
                },
                "indicator_interval": {
                  "type": "string",
                  "enum": [
                    "1h",
                    "1d"
                  ],
                  "default": "1d"
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "TrendingTokenAgent": {
      "metadata": {
        "name": "Trending Token Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Aggregates trending tokens from GMGN, CoinGecko, Pump.fun, Dexscreener, and Twitter discussions.",
        "external_apis": [
          "GMGN",
          "CoinGecko",
          "Dexscreener",
          "Elfa",
          "AIXBT",
          "Telegram"
        ],
        "tags": [
          "Token Trends",
          "Market Data"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/trending-token-agent.png",
        "examples": [
          "Show me trending tokens",
          "Get trending tokens including memecoins",
          "What are the hottest tokens right now across all platforms?",
          "Show me trending tokens from CoinGecko and Twitter only",
          "What tokens have recently graduated from pump.fun?"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10301,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/TrendingTokenAgent.json"
        }
      },
      "module": "trending_token_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_trending_tokens",
            "description": "Get trending tokens that are most talked about and traded on CEXs and DEXs. Optionally get trending tokens on a specific chain.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Chain to get trending tokens for. Your default action is to keep it empty to get trending tokens across CEXs and chains. Include this field if specific chain is requested in the context.",
                  "enum": [
                    "base",
                    "ethereum",
                    "solana",
                    "bsc"
                  ]
                },
                "include_memes": {
                  "type": "boolean",
                  "description": "Include GMGN trending memecoins and Pump.fun recent graduated tokens. Keep it false by default. Include only if memecoins are specifically requested in the context."
                }
              },
              "required": []
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_market_summary",
            "description": "Get a summary of recent market-wide news including macroeconomics, major updates of well-known crypto projects and tokens, and most discussed topics on crypto Twitter and Telegram groups. This tool returns 10~20 bite-sized items about various topics like market trends, opportunities, catalysts and risks. Useful for knowing what's going on in crypto now.",
            "parameters": {
              "type": "object",
              "properties": {},
              "required": []
            }
          }
        }
      ]
    },
    "TruthSocialAgent": {
      "metadata": {
        "name": "Truth Social Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can retrieve and analyze posts from Donald Trump on Truth Social.",
        "external_apis": [
          "Apify"
        ],
        "tags": [
          "Politics"
        ],
        "hidden": true,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Trump.png",
        "examples": [
          "Get the latest posts from Donald Trump",
          "Analyze recent Truth Social content from Trump"
        ],
        "credits": {
          "default": 2
        }
      },
      "module": "truth_social_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_trump_posts",
            "description": "Retrieve recent posts from Donald Trump's Truth Social profile. This tool fetches public posts from Trump's Truth Social feed.",
            "parameters": {
              "type": "object",
              "properties": {
                "profile": {
                  "type": "string",
                  "description": "Truth Social profile handle with @ symbol (defaults to @realDonaldTrump)",
                  "default": "@realDonaldTrump"
                },
                "max_posts": {
                  "type": "integer",
                  "description": "Maximum number of posts to retrieve",
                  "default": 20
                }
              },
              "required": []
            }
          }
        }
      ]
    },
    "TwitterInfoAgent": {
      "metadata": {
        "name": "Twitter Profile Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent fetches a Twitter user's profile information and recent tweets. It's useful for getting project updates or tracking key opinion leaders (KOLs) in the space.",
        "external_apis": [
          "Twitter API"
        ],
        "tags": [
          "Twitter"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Twitter.png",
        "examples": [
          "Summarise recent updates of @heurist_ai",
          "What has @elonmusk been tweeting lately?",
          "Get the recent tweets from cz_binance",
          "Search for 'bitcoin' (single word search)",
          "Search for '#ETH' (hashtag search)"
        ],
        "credits": {
          "default": 5
        }
      },
      "module": "twitter_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_user_tweets",
            "description": "Fetch recent tweets from a specific Twitter user's timeline. This tool retrieves the most recent posts from a user's profile, including their own tweets and retweets. Use this when you want to see what a specific person or organization has been posting recently, track their updates, or analyze their Twitter activity patterns. The tool returns tweet content, engagement metrics (likes, retweets, replies), and timestamps. Maximum 50 tweets can be retrieved per request.",
            "parameters": {
              "type": "object",
              "properties": {
                "username": {
                  "type": "string",
                  "description": "Twitter username (with or without @) or numeric user ID"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of tweets to return (max: 50)",
                  "default": 10
                },
                "cursor": {
                  "type": "string",
                  "description": "Cursor to fetch the next page of tweets"
                }
              },
              "required": [
                "username"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_twitter_detail",
            "description": "Fetch detailed information about a specific tweet, including the full thread context and replies. This tool provides comprehensive data about a single tweet, including the original tweet content, any tweets in the same thread (if it's part of a conversation), and replies to the tweet. Use this when you need to understand the full context of a discussion, see how people are responding to a specific tweet, or analyze a Twitter thread. The tool returns the complete thread structure and engagement metrics.",
            "parameters": {
              "type": "object",
              "properties": {
                "tweet_id": {
                  "type": "string",
                  "description": "The ID of the tweet to fetch details for"
                },
                "cursor": {
                  "type": "string",
                  "description": "Cursor to fetch the next page of tweets"
                }
              },
              "required": [
                "tweet_id"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_general_search",
            "description": "Search for tweets using a SINGLE keyword, hashtag, or mention. WARNING: Multi-word searches often return EMPTY results on X/Twitter. ONLY use: single words (e.g., 'bitcoin'), hashtags (e.g., '#ETH'), mentions (e.g., '@username'), or exact phrases in quotes (e.g., '\"market crash\"'). NEVER use sentences or multiple unquoted words like 'latest bitcoin news' or 'what people think'. If you need to search for a complex topic, break it down into single keyword searches. This tool searches Twitter's public timeline for tweets matching your query. Each search query should be ONE concept only.",
            "parameters": {
              "type": "object",
              "properties": {
                "q": {
                  "type": "string",
                  "description": "The search query - MUST be a single keyword, hashtag (#example), mention (@username), or exact phrase in quotes. DO NOT use multiple words or sentences."
                },
                "cursor": {
                  "type": "string",
                  "description": "Cursor to fetch the next page of tweets"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of tweets to return",
                  "default": 20
                }
              },
              "required": [
                "q"
              ]
            }
          }
        }
      ]
    },
    "TwitterIntelligenceAgent": {
      "metadata": {
        "name": "Twitter Intelligence Agent",
        "version": "2.1.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Twitter/X tools (timeline, tweet detail, search)",
        "external_apis": [
          "Twitter/X",
          "Influential mentions"
        ],
        "tags": [
          "Twitter",
          "Social"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/twitter-agent.png",
        "examples": [
          "user_timeline(identifier='@heurist_ai')",
          "tweet_detail(tweet_id='1975788185671389308')",
          "tweet_detail(tweet_id='1975788185671389308', show_thread=true)",
          "twitter_search(queries=['#ETH','SOL'], limit=15)"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10302,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/TwitterIntelligenceAgent.json"
        }
      },
      "module": "twitter_intelligence_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "user_timeline",
            "description": "Fetch a Twitter/X user's recent posts. Use when you want their latest activity or official announcements.",
            "parameters": {
              "type": "object",
              "properties": {
                "identifier": {
                  "type": "string",
                  "description": "User handle (with @) or numeric user_id"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of tweets to return",
                  "minimum": 5,
                  "maximum": 50
                },
                "cursor": {
                  "type": "string",
                  "description": "Pagination cursor from a prior call"
                }
              },
              "required": [
                "identifier"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "tweet_detail",
            "description": "Get a tweet with its thread context and replies. Use this to read a single tweet or the full conversation.",
            "parameters": {
              "type": "object",
              "properties": {
                "tweet_id": {
                  "type": "string",
                  "description": "The tweet ID"
                },
                "cursor": {
                  "type": "string",
                  "description": "Pagination cursor for next replies page"
                },
                "replies_limit": {
                  "type": "integer",
                  "description": "Max number of replies to return",
                  "minimum": 1,
                  "maximum": 50
                },
                "show_thread": {
                  "type": "boolean",
                  "description": "If true, include the entire thread including all replies; default shows only the main tweet.",
                  "default": false
                }
              },
              "required": [
                "tweet_id"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "twitter_search",
            "description": "Search Twitter/X for posts and influential mentions of the query. Use this tool to find discussions about news, crypto, blockchain projects, or any other topic of interest.",
            "parameters": {
              "type": "object",
              "properties": {
                "queries": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "1-3 search terms (e.g., 'bitcoin', '$ETH', '@coinbase', '\"exact phrase\"'). Case insensitive. Do not query the same term with variations of case or synonyms. Each of the queries should be within [English: one word or two-word phrase] [Chinese or Korean: one word, no more than 5 characters]. One query should be one concept only. Never use long sentences or long phrases as keywords."
                },
                "limit": {
                  "type": "integer",
                  "description": "Number of tweets to return."
                }
              },
              "required": [
                "queries"
              ]
            }
          }
        }
      ]
    },
    "UnifaiMeteoraInfoAgent": {
      "metadata": {
        "name": "UnifAI Meteora Info Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides Meteora pool information using UnifAI's API, including trending DLMM pools, dynamic AMM pools, and DLMM pool search functionality",
        "external_apis": [
          "UnifAI"
        ],
        "tags": [
          "Liquidity Pool"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Unifai.png",
        "examples": [
          "Show me trending DLMM pools on Meteora",
          "Search for SOL/USDC pools",
          "Find dynamic AMM pools with high TVL",
          "Get DLMM pools for SOL token"
        ],
        "credits": {
          "default": 0
        }
      },
      "module": "unifai_meteora_info_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_trending_dlmm_pools",
            "description": "Get trending DLMM pools from Meteora",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of pools to return",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 50
                },
                "include_pool_token_pairs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional array of token pairs to include (e.g., ['SOL/USDC'])",
                  "default": []
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "search_dynamic_amm_pools",
            "description": "Search for dynamic AMM pools on Meteora",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Number of pools to return",
                  "default": 10
                },
                "include_token_mints": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional array of token mint addresses to include (e.g., ['So11111111111111111111111111111111111111112'] for SOL)",
                  "default": []
                },
                "include_pool_token_pairs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional array of token pairs to include (e.g., ['USDC-SOL'])",
                  "default": []
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "search_dlmm_pools",
            "description": "Search for DLMM pools on Meteora",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Number of pools to return",
                  "default": 10
                },
                "include_pool_token_pairs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional array of token pairs to include",
                  "default": []
                },
                "include_token_mints": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  },
                  "description": "Optional array of token mint addresses to include",
                  "default": []
                }
              }
            }
          }
        }
      ]
    },
    "UnifaiTokenAnalysisAgent": {
      "metadata": {
        "name": "UnifAI Token Analysis Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides token analysis using UnifAI's API, including GMGN trend analysis (GMGN is a memecoin trading platform) and comprehensive token analysis for various cryptocurrencies",
        "external_apis": [
          "UnifAI"
        ],
        "tags": [
          "Token Analysis"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Unifai.png",
        "examples": [
          "Show me trending tokens on GMGN",
          "Analyze the ETH token for me",
          "What are the top 10 trending tokens on GMGN in the last 24 hours?",
          "Get token information for 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 on Ethereum"
        ],
        "credits": {
          "default": 0
        }
      },
      "module": "unifai_token_analysis_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_gmgn_trend",
            "description": "Get trending tokens from GMGN memecoin trading platform. Use this tool when you want to get trending memecoins.",
            "parameters": {
              "type": "object",
              "properties": {
                "time_window": {
                  "type": "string",
                  "description": "Time window for trends (e.g., '24h', '4h', '1h')",
                  "default": "24h"
                },
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of trending tokens to return",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 100
                }
              }
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_gmgn_token_info",
            "description": "Get detailed token information from GMGN (a memecoin trading platform). Use this tool to get new memecoin trading info, including basic market data, security metrics, liquidity info. Don't use this tool for large cap tokens or established projects.",
            "parameters": {
              "type": "object",
              "properties": {
                "chain": {
                  "type": "string",
                  "description": "Blockchain network (e.g., 'eth', 'sol', 'base', 'bsc')"
                },
                "address": {
                  "type": "string",
                  "description": "Token contract address"
                }
              },
              "required": [
                "chain",
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "analyze_token",
            "description": "Analyze a memecoin by its ticker. Use this tool to get a short summary of memecoin price, market cap and holder concentration. Don't use this tool for large cap tokens or established projects.",
            "parameters": {
              "type": "object",
              "properties": {
                "ticker": {
                  "type": "string",
                  "description": "Token ticker symbol (e.g., 'ETH', 'BTC', 'SOL')"
                }
              },
              "required": [
                "ticker"
              ]
            }
          }
        }
      ]
    },
    "UnifaiWeb3NewsAgent": {
      "metadata": {
        "name": "UnifAI Web3 News Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent fetches the latest Web3 and cryptocurrency news using UnifAI's API",
        "external_apis": [
          "UnifAI"
        ],
        "tags": [
          "News"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Unifai.png",
        "examples": [
          "What are the latest crypto news?",
          "Get me the most recent Web3 developments",
          "Show the top blockchain news"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "unifai_web3_news_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_web3_news",
            "description": "Fetch the latest news of the Web3 and cryptocurrency space. Use this tool to check the most recent updates and most important developments in crypto. You must use this tool before answering any crypto-related questions to check the market sentiment and news.",
            "parameters": {
              "type": "object",
              "properties": {
                "limit": {
                  "type": "integer",
                  "description": "Maximum number of news articles to return",
                  "default": 10
                }
              }
            }
          }
        }
      ]
    },
    "WanVideoGenAgent": {
      "metadata": {
        "name": "Wan Video Generation Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "Generate videos using Alibaba Wan 2.2 models. Supports text-to-video and image-to-video generation in 480p resolution. Videos are stored on AI3 (Autonomys) decentralized storage with R2 fallback.",
        "external_apis": [
          "DashScope",
          "Autonomys Auto Drive"
        ],
        "tags": [
          "Video Generation"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Wan.png",
        "examples": [
          "Generate a video of a cat running on grass",
          "Create a video from an image showing ocean waves",
          "Check status of task: abc123"
        ],
        "credits": {
          "default": 15,
          "text_to_video_480p_5s": 15,
          "text_to_video_with_audio_480p_5s": 25,
          "image_to_video_plus_480p_5s": 15,
          "image_to_video_flash_480p_5s": 10,
          "image_to_video_with_audio_480p_5s": 25,
          "get_video_status": 0.1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.15",
          "tool_prices": {
            "text_to_video_480p_5s": "0.15",
            "text_to_video_with_audio_480p_5s": "0.25",
            "image_to_video_plus_480p_5s": "0.15",
            "image_to_video_flash_480p_5s": "0.10",
            "image_to_video_with_audio_480p_5s": "0.25",
            "get_video_status": "0.001"
          }
        }
      },
      "module": "wan_video_gen_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "text_to_video_480p_5s",
            "description": "Generate 5-second 480p silent video from text using Wan 2.2 Plus",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "Text description of the video to generate"
                },
                "prompt_extend": {
                  "type": "boolean",
                  "description": "Whether to extend/enhance the prompt automatically",
                  "default": true
                }
              },
              "required": [
                "prompt"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "text_to_video_with_audio_480p_5s",
            "description": "Generate 5-second 480p video WITH AUDIO from text using Wan 2.5 Preview",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "Text description of the video to generate"
                },
                "prompt_extend": {
                  "type": "boolean",
                  "description": "Whether to extend/enhance the prompt automatically",
                  "default": true
                }
              },
              "required": [
                "prompt"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "image_to_video_plus_480p_5s",
            "description": "Generate 5-second 480p silent video from image using Wan 2.2 Plus (high quality)",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "Description of how the image should animate"
                },
                "image_url": {
                  "type": "string",
                  "description": "URL of the image to animate"
                },
                "prompt_extend": {
                  "type": "boolean",
                  "description": "Whether to extend/enhance the prompt automatically",
                  "default": true
                }
              },
              "required": [
                "prompt",
                "image_url"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "image_to_video_flash_480p_5s",
            "description": "Generate 5-second 480p silent video from image using Wan 2.2 Flash (fast generation)",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "Description of how the image should animate"
                },
                "image_url": {
                  "type": "string",
                  "description": "URL of the image to animate"
                },
                "prompt_extend": {
                  "type": "boolean",
                  "description": "Whether to extend/enhance the prompt automatically",
                  "default": true
                }
              },
              "required": [
                "prompt",
                "image_url"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "image_to_video_with_audio_480p_5s",
            "description": "Generate 5-second 480p video WITH AUDIO from image using Wan 2.5 Preview",
            "parameters": {
              "type": "object",
              "properties": {
                "prompt": {
                  "type": "string",
                  "description": "Description of how the image should animate"
                },
                "image_url": {
                  "type": "string",
                  "description": "URL of the image to animate"
                },
                "prompt_extend": {
                  "type": "boolean",
                  "description": "Whether to extend/enhance the prompt automatically",
                  "default": true
                }
              },
              "required": [
                "prompt",
                "image_url"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_video_status",
            "description": "Check the status of a video generation task and retrieve the video URL if completed.",
            "parameters": {
              "type": "object",
              "properties": {
                "task_id": {
                  "type": "string",
                  "description": "The task ID returned from text_to_video or image_to_video."
                }
              },
              "required": [
                "task_id"
              ]
            }
          }
        }
      ]
    },
    "YahooFinanceAgent": {
      "metadata": {
        "name": "Yahoo Finance Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent uses Yahoo Finance to obtain historical price performance and technical analysis for stocks and cryptocurrencies. Provides OHLCV data and technical indicators with trading signals.",
        "external_apis": [
          "Yahoo Finance"
        ],
        "tags": [
          "Market Analysis"
        ],
        "hidden": false,
        "verified": true,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/YFinance.png",
        "examples": [
          "Get 1d OHLCV for AAPL for the last 6 months",
          "Give me a 1h indicator snapshot for BTC-USD",
          "Signal summary for TSLA on 1d timeframe",
          "Show me technical analysis for ETH-USD"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        }
      },
      "module": "yahoo_finance_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "fetch_price_history",
            "description": "Use this to obtain historical price performance (OHLCV data) for stocks and cryptocurrencies using Yahoo Finance. Supports all major stock symbols and top 30 large-cap major crypto tokens. Only supports '1h' and '1d' intervals. Intraday data is limited to 60 days.",
            "parameters": {
              "type": "object",
              "properties": {
                "symbol": {
                  "type": "string",
                  "description": "Stock ticker or crypto with -USD suffix"
                },
                "interval": {
                  "type": "string",
                  "enum": [
                    "1h",
                    "1d"
                  ],
                  "description": "Candlestick interval",
                  "default": "1d"
                },
                "period": {
                  "type": "string",
                  "description": "Rolling window: 1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max. If start_date or end_date is provided, they take precedence.",
                  "default": "6mo"
                },
                "start_date": {
                  "type": "string"
                },
                "end_date": {
                  "type": "string"
                }
              },
              "required": [
                "symbol"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "indicator_snapshot",
            "description": "Use this to compute technical indicators and get trading signals for stocks and cryptocurrencies. Supports all major stock symbols and top 30 large-cap major crypto tokens. Returns a core set of technical indicators including RSI(14), MACD(12,26,9) [macd, macds, macdh], Bollinger Bands(20,2) [boll, boll_ub, boll_lb], and moving averages [close_10_ema, close_50_sma, close_200_sma]. Provides rule-based action signal (buy/sell/neutral) with confidence level and rationale.",
            "parameters": {
              "type": "object",
              "properties": {
                "symbol": {
                  "type": "string",
                  "description": "Stock ticker or crypto with -USD suffix"
                },
                "interval": {
                  "type": "string",
                  "enum": [
                    "1h",
                    "1d"
                  ],
                  "description": "Candlestick interval for analysis",
                  "default": "1d"
                },
                "period": {
                  "type": "string",
                  "description": "History window to support indicator calculations",
                  "default": "6mo"
                },
                "start_date": {
                  "type": "string"
                },
                "end_date": {
                  "type": "string"
                }
              },
              "required": [
                "symbol"
              ]
            }
          }
        }
      ]
    },
    "ZerionWalletAnalysisAgent": {
      "metadata": {
        "name": "Zerion Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent can fetch and analyze the token and NFT holdings of a crypto wallet (must be EVM chain)",
        "external_apis": [
          "Zerion"
        ],
        "tags": [
          "EVM Wallet"
        ],
        "hidden": false,
        "verified": true,
        "recommended": true,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Zerion.png",
        "examples": [
          "What tokens does 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D hold?",
          "Show me all NFT collections owned by 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
          "Analyze the token portfolio of wallet 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
          "What's the total value of tokens in 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D?",
          "Which tokens held by 0x7d9d1821d15B9e0b8Ab98A058361233E255E405D have had the most price change in the last 24 hours?"
        ],
        "credits": {
          "default": 1
        },
        "x402_config": {
          "enabled": true,
          "default_price_usd": "0.01"
        },
        "erc8004": {
          "enabled": true,
          "wallet_chain_id": 1,
          "registrations": [
            {
              "agentId": 10304,
              "agentRegistry": "eip155:1:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432"
            }
          ],
          "supportedTrust": [
            "reputation"
          ],
          "active": true,
          "registrationUrl": "https://mesh-data.heurist.xyz/erc8004/ZerionWalletAnalysisAgent.json"
        }
      },
      "module": "zerion_wallet_analysis_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "fetch_wallet_tokens",
            "description": "Fetch token holdings of an EVM wallet. The result includes the amount, USD value, 1-day price change, token contract address and the chain of all tokens held by the wallet. Use this tool if you want to know the token portfolio of the wallet or understand a user's onchain behavior.",
            "parameters": {
              "type": "object",
              "properties": {
                "wallet_address": {
                  "type": "string",
                  "description": "The EVM wallet address (starting with 0x and 42-character long) to analyze. You can also use 'SELF' for wallet_address to use the user's own wallet address."
                }
              },
              "required": [
                "wallet_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "fetch_wallet_nfts",
            "description": "Fetch NFT collections held by an EVM wallet. The result includes the number of NFTs, the collection name and description of the NFTs. Use this tool if you want to know the NFT portfolio of the wallet.",
            "parameters": {
              "type": "object",
              "properties": {
                "wallet_address": {
                  "type": "string",
                  "description": "The EVM wallet address (starting with 0x and 42-character long) to analyze. You can also use 'SELF' for wallet_address to use the user's own wallet address."
                }
              },
              "required": [
                "wallet_address"
              ]
            }
          }
        }
      ]
    },
    "ZoraAgent": {
      "metadata": {
        "name": "Zora Agent",
        "version": "1.0.0",
        "author": "Heurist team",
        "author_address": "0x7d9d1821d15B9e0b8Ab98A058361233E255E405D",
        "description": "This agent provides access to Zora protocol data including trending collections, coin holders, coin information, community comments, and user profiles",
        "external_apis": [
          "Zora"
        ],
        "tags": [
          "Social"
        ],
        "hidden": false,
        "verified": false,
        "recommended": false,
        "image_url": "https://raw.githubusercontent.com/heurist-network/heurist-agent-framework/refs/heads/main/mesh/images/Zora.png",
        "examples": [
          "Show me the top gainers on Zora",
          "Who are the most valuable creators?",
          "Get coin holders for address 0xd769d56f479e9e72a77bb1523e866a33098feec5 on Base",
          "Show me comments for this Zora coin",
          "What's the coin info for collection 0xd769d56f479e9e72a77bb1523e866a33098feec5?",
          "Show me the top volume collections in the last 24 hours",
          "Get profile information for user balraj",
          "Show me coins created by kazonomics",
          "What coins does kazonomics hold?"
        ]
      },
      "module": "zora_agent",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "explore_collections",
            "description": "Explore Zora collections by different metrics like top gainers, most valuable creators, top volume, or featured collections",
            "parameters": {
              "type": "object",
              "properties": {
                "list_type": {
                  "type": "string",
                  "description": "Type of collection list to retrieve",
                  "enum": [
                    "TOP_GAINERS",
                    "MOST_VALUABLE_CREATORS",
                    "TOP_VOLUME_24H",
                    "LAST_TRADED",
                    "FEATURED"
                  ],
                  "default": "TOP_GAINERS"
                },
                "count": {
                  "type": "integer",
                  "description": "Number of collections to retrieve",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 100
                }
              },
              "required": [
                "list_type"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_coin_holders",
            "description": "Get the list of holders for a specific Zora coin/collection",
            "parameters": {
              "type": "object",
              "properties": {
                "chain_id": {
                  "type": "integer",
                  "description": "Blockchain chain ID (e.g., 8453 for Base)",
                  "default": 8453
                },
                "address": {
                  "type": "string",
                  "description": "Collection/coin contract address (e.g., 0xd769d56f479e9e72a77bb1523e866a33098feec5)"
                },
                "count": {
                  "type": "integer",
                  "description": "Number of holders to retrieve",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 100
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_coin_info",
            "description": "Get detailed information about a specific Zora coin/collection",
            "parameters": {
              "type": "object",
              "properties": {
                "chain_id": {
                  "type": "integer",
                  "description": "Blockchain chain ID (e.g., 8453 for Base)",
                  "default": 8453
                },
                "collection_address": {
                  "type": "string",
                  "description": "Collection contract address (e.g., 0xd769d56f479e9e72a77bb1523e866a33098feec5)"
                }
              },
              "required": [
                "collection_address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_coin_comments",
            "description": "Get community comments for a specific Zora coin/collection",
            "parameters": {
              "type": "object",
              "properties": {
                "address": {
                  "type": "string",
                  "description": "Collection/coin contract address (e.g., 0xd769d56f479e9e72a77bb1523e866a33098feec5)"
                },
                "chain": {
                  "type": "integer",
                  "description": "Blockchain chain ID (e.g., 8453 for Base)",
                  "default": 8453
                },
                "count": {
                  "type": "integer",
                  "description": "Number of comments to retrieve",
                  "default": 10,
                  "minimum": 1,
                  "maximum": 50
                }
              },
              "required": [
                "address"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_profile",
            "description": "Get detailed information about a user's profile including handle, display name, and bio",
            "parameters": {
              "type": "object",
              "properties": {
                "identifier": {
                  "type": "string",
                  "description": "User identifier (username/handle, e.g., 'balraj' or 'kazonomics')"
                }
              },
              "required": [
                "identifier"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_profile_coins",
            "description": "Get coins created by a specific user",
            "parameters": {
              "type": "object",
              "properties": {
                "identifier": {
                  "type": "string",
                  "description": "User identifier (username/handle, e.g., 'balraj' or 'kazonomics')"
                },
                "count": {
                  "type": "integer",
                  "description": "Number of coins to retrieve",
                  "default": 30,
                  "minimum": 1,
                  "maximum": 100
                },
                "chain_ids": {
                  "type": "array",
                  "items": {
                    "type": "integer"
                  },
                  "description": "Array of chain IDs to filter by (e.g., [8453] for Base)",
                  "default": [
                    8453
                  ]
                }
              },
              "required": [
                "identifier"
              ]
            }
          }
        },
        {
          "type": "function",
          "function": {
            "name": "get_profile_balances",
            "description": "Get all coin balances held by a specific user",
            "parameters": {
              "type": "object",
              "properties": {
                "identifier": {
                  "type": "string",
                  "description": "User identifier (username/handle, e.g., 'balraj' or 'kazonomics')"
                },
                "count": {
                  "type": "integer",
                  "description": "Number of balances to retrieve",
                  "default": 30,
                  "minimum": 1,
                  "maximum": 100
                },
                "sort_option": {
                  "type": "string",
                  "description": "Sort option for the results",
                  "enum": [
                    "BALANCE",
                    "MARKET_CAP",
                    "USD_VALUE",
                    "PRICE_CHANGE"
                  ],
                  "default": "USD_VALUE"
                },
                "exclude_hidden": {
                  "type": "boolean",
                  "description": "Whether to exclude hidden coins",
                  "default": true
                },
                "chain_ids": {
                  "type": "array",
                  "items": {
                    "type": "integer"
                  },
                  "description": "Array of chain IDs to filter by (e.g., [8453] for Base)",
                  "default": [
                    8453
                  ]
                }
              },
              "required": [
                "identifier"
              ]
            }
          }
        }
      ]
    }
  }
}