Skip to main content
Glama

Crypto address risk / AML screen

address_check
Read-onlyIdempotent

Screen a wallet address (BTC, ETH/EVM, Solana, Tron, XRP, LTC) against OFAC sanctions and scam lists with on-chain context. tier=max adds the chain's own trail: a 2-hop Bitcoin trace with exposure, a Solana wallet's age and trading record, or a Base wallet's USDC counterparties. For tokens use token_check. Price: standard $0.02, max $0.10. Live; 2-20 s. Risk signals, not a legal finding. Paid with x402 (USDC on Base, Polygon or Solana) per call; failed or empty calls are never charged.

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": {
      "address": "<address>"
    },
    "name": "address_check"
  }
}

Input Schema

NameRequiredDescriptionDefault
tierNoDefault standard.
addressYesThe wallet address.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent/non-destructive, and the description still adds material context: x402 payment per call, failed or empty calls never charged, cost tiers, latency window, and the important framing that output is 'risk signals, not a legal finding'. That last caveat is exactly the kind of behavioral nuance annotations cannot carry.

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 screening action and covered chains, then the tier fork, then cost/mechanics. Dense but nearly every clause earns its place; the middle tier-max enumeration is list-heavy but is the most decision-relevant content.

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?

With no output schema, the description carries the return-value burden and does so for tier=max (exposure, wallet age, counterparties) and frames the overall output as risk signals rather than a verdict. The standard tier's output shape (e.g., whether a sanctions hit is a boolean or a scored list) is left implicit.

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%, so baseline is 3, and the description earns above baseline by explaining what tier=max actually produces per chain (2-hop BTC trace with exposure, Solana wallet age/trading record, Base USDC counterparties). The address parameter itself gets no added detail, but it needs none.

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+resource ('Screen a wallet address') with the exact chain coverage (BTC, ETH/EVM, Solana, Tron, XRP, LTC) and the check performed (OFAC sanctions, scam lists, on-chain context). It explicitly routes tokens elsewhere ('For tokens use token_check'), making it distinguishable from the nearest sibling 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?

Gives a concrete when-to-use fork: tokens go to token_check, and tier=max is the right choice when you need chain-native trail data with a per-chain breakdown of what that buys. Price and latency (2-20 s) let the agent judge whether the higher tier is worth it.

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