Skip to main content
Glama

EIP-3009 TransferWithAuthorization params check ($0.01)

eip3009_params_check
Idempotent

[Paid x402 / X-Bazaar-Key: 0.01 USDC] Validate EIP-3009 TransferWithAuthorization domain parameters (name, version, chainId, verifyingContract, nonce) for Base USDC and compute canonical EIP-712 typeHashes.

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": "eip3009_params_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoEIP-712 token domain name (e.g. USD Coin)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare idempotent=true, destructive=false, openWorldHint=true and readOnlyHint=false; the description adds the crucial non-obvious context that the call is a paid x402 invocation costing 0.01 USDC via X-Bazaar-Key, which explains why readOnlyHint is false for what is otherwise a pure computation. It does not describe failure behavior (e.g. invalid domain handling), which keeps it below a 5.

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

Conciseness5/5

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

Two compact clauses with the payment prefix up front and the core action immediately after; every element (price, scope, fields, output) carries information an agent needs.

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?

For a stateless compute tool with no output schema, the description covers the input field set, the chain/token scope and the produced artifact (typeHashes). It stops short of saying what a valid vs invalid result looks like or whether all five domain fields are required, which would complete the picture.

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 schema only formally defines one property (name) with additionalProperties:true, so the description compensates meaningfully by enumerating the expected domain fields (name, version, chainId, verifyingContract, nonce). That is real added value beyond what the structured schema conveys, though types/format per field remain unstated.

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?

States a specific verb (Validate/check), a specific resource (EIP-3009 TransferWithAuthorization domain parameters) and an additional output (canonical EIP-712 typeHashes). It is clearly distinguishable from every sibling, which are linters, calculators and listing tools rather than EIP-3009 validators.

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

Usage Guidelines3/5

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

The description scopes usage implicitly by naming 'Base USDC' as the target domain, so an agent knows this is only for that token/chain. However there is no explicit when-to-use/when-not-to-use guidance, no prerequisites, and no mention of alternatives for other chains or tokens.

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.

Resources