Skip to main content
Glama

Find money across many wallets (paste a list)

find_money_batch
Read-only

Paste a list of PUBLIC addresses (any mix: EVM 0x…, ENS/Basenames, .sol, Solana, Tron, Bitcoin; commas/newlines/whatever) and SwapChan auto-detects each chain (EVM addresses are scanned on every EVM chain) and runs find_money on all of them in the background. Returns a jobId immediately; poll find_money_status every ~15s (a big list can take several minutes; jobs are stored durably and survive server restarts for 6h). Labels you pass come back on each wallet and item (walletLabel). Final result: aggregated totalEstUsd across wallets, ranked items tagged by wallet, a 'summary' to relay to the user VERBATIM (short + full links), and one 'Recover and swap all' plan (phase1_recover, phase2_protect, phase3_swap). Refuses anything that looks like a seed phrase or private key. Result includes display markdown with chan images: show it to the user. How to combine this with the other tools: swapchan_playbook (workflows: find-money, best-swap, rebalance, revoke-approvals, bridge-stuck, token-safety, recover-old-wallet).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "addresses": "<addresses>"
    },
    "name": "find_money_batch"
  }
}

Input Schema

NameRequiredDescriptionDefault
addressesYesUp to 500 public addresses/names: pasted text (one per line; other words on the line become its label, e.g. "MetaMask m/44'/60'/0'/0/3 0xabc…"), a list of strings, or a list of {address, label}. Send EVERY address you derived from a phrase (gap limit 20 per path, 50+ for heavy users), not just the first.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / addresses / anyOf
      Previous value: -[
      -  {
      -    "maxLength": 20000,
      -    "type": "string"
      -  },
      -  {
      -    "items": {
      -      "maxLength": 200,
      -      "type": "string"
      -    },
      -    "maxItems": 200,
      -    "type": "array"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 100000,
      +    "type": "string"
      +  },
      +  {
      +    "items": {
      +      "anyOf": [
      +        {
      +          "maxLength": 300,
      +          "type": "string"
      +        },
      +        {
      +          "additionalProperties": {
      +            "maxLength": 200,
      +            "type": "string"
      +          },
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        }
      +      ]
      +    },
      +    "maxItems": 500,
      +    "type": "array"
      +  }
      +]
    • changedInput schema / properties / addresses / description
      Previous value: -"Up to 50 public addresses/names, as a list or pasted text"New value: +"Up to 500 public addresses/names: pasted text (one per line; other words on the line become its label, e.g. \"MetaMask m/44'/60'/0'/0/3 0xabc…\"), a list of strings, or a list of {address, label}. Send EVERY address you derived from a phrase (gap limit 20 per path, 50+ for heavy users), not just the first."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only say readOnly/openWorld; the description adds the async contract (jobId returned immediately), job durability ('survive server restarts for 6h'), refusal of seed phrases/private keys, label propagation via walletLabel, and the shape of the final result including a 'summary' to relay VERBATIM. That is substantial behavior beyond structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the actionable instruction and zero filler sentences, but the body is a dense run-on of parentheticals (chain list, polling, durability, result shape, playbook) that is harder to scan than it needs to be. Every element earns its place; the packaging is just cramped.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description carries the return-value burden itself — jobId, polling cadence, final aggregated totalEstUsd, ranked items by wallet, the verbatim summary, the three-phase plan, and the `display` markdown to show the user. Nothing an agent needs to call and follow up correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already documents the paste/list/{address,label} forms and gap limit, so the baseline is 3. The description still adds real semantics: which chain families are auto-detected (.sol, Tron, Bitcoin, ENS/Basenames) and that EVM addresses are scanned on every EVM chain — behavior the schema cannot express.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource+scope: 'Paste a list of PUBLIC addresses … runs find_money on all of them in the background.' It explicitly positions itself against siblings find_money (single) and find_money_status (polling), so an agent can pick the right tool without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States the trigger (many addresses at once), the follow-up step ('poll find_money_status every ~15s'), the expected latency ('a big list can take several minutes'), and routes to swapchan_playbook for multi-step workflows. When-to-use and the alternative are both explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.