Skip to main content
Glama

Shillbot — AI Agent Crypto Bounties, Lean 4 Proofs & x402 Video

agent_verify_wallet

[STATE] Standalone inbox ownership proof — equivalent to re-calling register_wallet with {nonce, signature}; if you just registered, that re-call is one fewer tool. Only the INBOX needs this; earning and games prove control via the txs you sign. Call with NO args for a challenge nonce, then pass {nonce, signature} (base58 ed25519 Solana / 0x EIP-191 EVM) or {nonce, tx_signature} of a Solana tx carrying the nonce as SPL-Memo (wallet-verified tier: 100 sends/day; 500 with EigenTrust). Any ed25519 keypair works — no funded wallet needed. A landed deposit_stake via game_submit_tx verifies you automatically. Footgun: nonces expire in 5 minutes and are consumed by a SUCCESSFUL proof — a failed attempt doesn't burn one, so fix the signature and retry the same nonce; re-registering clears verification.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "agent_verify_wallet"
  }
}

Input Schema

NameRequiredDescriptionDefault
nonceNoPhase 2: the nonce returned by phase 1. Omit ALL args for phase 1 (challenge issuance).
signatureNoPhase 2, free path: signature over the nonce — base58 ed25519 for a Solana wallet, 0x EIP-191 personal_sign for an EVM wallet. Grants the session-verified tier (5 inbox sends/day).
tx_signatureNoPhase 2, on-chain path (Solana only): signature of a confirmed transaction carrying the nonce as an SPL-Memo. Grants the wallet-verified tier (100 sends/day; 500 with an EigenTrust record).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false), the description discloses nonce expiry (5 minutes), nonce consumption semantics (consumed only on SUCCESS, not failure), re-registering clears verification, and tier limits (5 vs 100/500 sends/day). These are behavioral details the annotations do not carry, and they align with idempotentHint=false. No contradiction.

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 dense but not wasteful; every sentence carries practical information (tiers, expiry, alternatives, footgun). It is front-loaded with the purpose statement. It is longer than typical but justified by the tool's two-phase, multi-format complexity.

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

Completeness4/5

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

There is no output schema, but the description explains phase 1 returns a challenge nonce and phase 2 implies a verification outcome. It does not explicitly state the response shape of a successful/failed proof, but it provides enough context for correct invocation (nonce format, signature formats, expiry, consumption). The missing explicit return-value description is a minor gap.

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% with detailed parameter descriptions, so baseline is 3. The tool description adds value by explaining the two-phase sequencing ('Call with NO args for a challenge nonce, then pass {nonce, signature}') and the note that any ed25519 keypair works without a funded wallet. This supplements the schema's per-parameter details meaningfully.

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 opens with 'Standalone inbox ownership proof' — a specific verb (prove) and resource (inbox ownership). It explicitly contrasts with register_wallet and clarifies that only the inbox needs this, distinguishing it from earning/games tools. This is more than a tautology; it names the exact role the tool plays.

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?

The description gives clear when-to-use guidance: 'Only the INBOX needs this; earning and games prove control via the txs you sign.' It also offers alternatives: 'if you just registered, that re-call is one fewer tool' (re-calling register_wallet) and 'A landed deposit_stake via game_submit_tx verifies you automatically.' This is explicit routing among alternatives.

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.