Skip to main content
Glama

get_wallet_summary

Read-onlyIdempotent

Call this whenever the user asks for a wallet summary, wallet list, their wallets, wallet balances, verified holdings, or Proof of Funds ceiling. Returns all wallets for the authenticated user with their balances, verification status, and Proof of Funds ceiling. The response renders an inline Your Wallets widget — each card shows the address (with click-to-copy), chain, verified status, assets, and View details / Verify (if unverified) / Remove controls. Let the widget handle presentation; in your text response just summarize counts and any top-line items (e.g. "You have 3 wallets, 2 verified, POF ceiling $65k"). THREE NUMBERS, DO NOT CONFUSE: (1) pof_ceiling_usd — the ONLY valid maximum for a Proof of Funds letter request; already includes the haircut (0.98× stablecoins, 0.935× volatile) and excludes unverified wallets. (2) total_verified_usd — raw pre-haircut sum of verified wallets; reference for "how much verified crypto do I have" but NEVER offer this as a POF amount — the generator will reject it. (3) Σ wallets[].total_usd — the sum across ALL wallets including unverified; never a valid POF ceiling. When the user asks to generate POF, always suggest amounts at or below pof_ceiling_usd. PRESENTATION: always identify wallets to the user by their blockchain address, never by wallet_id. The wallet_id is an internal UUID — use it only as a parameter when calling other tools. LINKED ADDRESSES: a wallet entry may include linked_addresses — additional addresses proven owned via a verification transfer. ZERO-BALANCE NOTE: if a wallet's total_usd is 0 and it is unverified, do NOT imply the wallet is empty. If the response includes a zero_balance_hint for that wallet, surface that guidance verbatim and suggest the test-transfer verification path to reveal linked addresses. BITCOIN FULL-WALLET NOTE: a verified Bitcoin wallet entry may carry full_wallet_hint (no extended public key linked yet — only the verified address and transfer-proven addresses are counted) or xpub_linked: true with an xpub_scan summary (every derived address counted). If a user says their Bitcoin balance looks low, relay full_wallet_hint and offer link_wallet_xpub. ZCASH: a Zcash wallet entry carries transparent_only_hint — only transparent (t1…) balances are verified and counted; relay it before the user starts verification if their ZEC may be shielded.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
walletsYesAll wallets on the user's account
eligible_tokensNoAsset symbols that count toward POF eligibility
pof_ceiling_usdNoMaximum amount valid for a Proof of Funds letter. Already includes the haircut (0.98× stables, 0.935× volatile) and excludes unverified wallets.
total_verified_usdNoRaw pre-haircut sum of verified wallets. NEVER use as a POF ceiling — pof_ceiling_usd is the only correct max.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • addedOutput schema / properties / wallets / items / properties / transparent_only_hint
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  2. Changed3 schema fields changed
    • addedOutput schema / properties / wallets / items / properties / full_wallet_hint
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / wallets / items / properties / xpub_linked
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / wallets / items / properties / xpub_scan
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": true,
      +      "properties": {},
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "eligible_tokens": {
      +      "description": "Asset symbols that count toward POF eligibility",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "pof_ceiling_usd": {
      +      "description": "Maximum amount valid for a Proof of Funds letter. Already includes the haircut (0.98× stables, 0.935× volatile) and excludes unverified wallets.",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "total_verified_usd": {
      +      "description": "Raw pre-haircut sum of verified wallets. NEVER use as a POF ceiling — pof_ceiling_usd is the only correct max.",
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "wallets": {
      +      "description": "All wallets on the user's account",
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "address": {
      +            "type": "string"
      +          },
      +          "assets": {
      +            "items": {
      +              "additionalProperties": true,
      +              "properties": {},
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "blockchain": {
      +            "type": "string"
      +          },
      +          "linked_addresses": {
      +            "items": {
      +              "additionalProperties": true,
      +              "properties": {},
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "ownership_status": {
      +            "type": "string"
      +          },
      +          "total_usd": {
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "verified_at": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "wallet_id": {
      +            "type": "string"
      +          },
      +          "zero_balance_hint": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "wallet_id",
      +          "address",
      +          "blockchain",
      +          "ownership_status"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "wallets"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description goes far beyond annotations by explaining widget rendering, the precise meanings of the three returned USD numbers, rejection behavior of generate_proof_of_funds, and special hints for zero-balance, Bitcoin full-wallet, and Zcash transparent-only cases. This is substantial behavioral context that annotations alone could not provide.

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?

The description is long but well-organized with bolded labels and scannable sections. It front-loads the trigger and core purpose before diving into cautionary notes. A few warnings repeat the same point, especially around never using total_usd or total_verified_usd as the POF ceiling, but the redundancy is likely intentional for a high-stakes numerical distinction.

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?

For a tool with no parameters and an output schema, the description still provides complete operational context: what counts as a valid POF ceiling, how to handle the widget, what to do with zero_balance_hint, full_wallet_hint, and transparent_only_hint, and how to route the next step to generate_proof_of_funds. An agent has everything needed to invoke this tool correctly and avoid common mistakes.

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?

The tool has zero parameters, so the input schema carries no burden and the baseline is 4. The description adds useful meaning about the result fields and their distinctions (pof_ceiling_usd, total_verified_usd, total_usd), which is enough for correct use. Nothing more is needed for parameters.

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?

The description names a specific verb and resource family: 'Call this whenever the user asks for a wallet summary, wallet list, their wallets, wallet balances, verified holdings, or Proof of Funds ceiling.' It states exactly what is returned: all wallets, balances, verification status, and POF ceiling. It is clearly differentiated from siblings like generate_proof_of_funds and refresh_wallet_balance by tying this tool to summary/list/balance 'asks'.

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?

Usage guidance is explicit and actionable: it lists trigger phrases, instructs the agent to let the widget handle presentation, and tells it to pass pof_ceiling_usd to generate_proof_of_funds when generating a POF. It also gives strong 'never' rules, such as never using total_usd or total_verified_usd as the POF ceiling, and never implying an unverified zero-balance wallet is empty. This gives clear when-to-use and when-not-to-use behavior.

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.

TDQS

A4.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes (wallet management, verification, knowledge lookup, marketing, account status), but there is minor overlap between add_wallet and refresh_wallet_verification (both generate verification challenges) and between get_started and get_account_status (both touch on next-step resolution). Descriptions clarify the differences, so confusion is unlikely.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., add_wallet, get_wallet_summary, verify_wallet_transfer), with only 'logout' as a single verb, which is still consistent with the imperative style. No mixed conventions or cryptic names.

Tool Count4/5

The server exposes 20 tools, which is on the heavier side of the typical range but appropriate for the broad domain (wallet operations, verification, KYC, knowledge base, marketing assets, referral tracking). Each tool has a distinct role, so the count feels justified rather than bloated.

Completeness5/5

The surface covers the full lifecycle for crypto-to-real-estate transactions: wallet management (add, remove, refresh, verify), identity verification, proof-of-funds generation, knowledge tools (fees, coverage, supported crypto, how-it-works), marketing (snippets, assets, referral), and account navigation (get_started, logout). No obvious gaps that would leave an agent stuck.