Skip to main content
Glama

Novarithm Agent Hub: trust and commerce checks

chain_code

[PAID $0.003 USDC/call, x402, eip155:8453] Whether a Base address is a contract or an EOA, with the deployed bytecode size.

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

Input Schema

NameRequiredDescriptionDefault
addressYesEVM address

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose important behavioral facts the schema does not: the call costs $0.003 USDC via x402 and runs on eip155:8453 (Base). It does not state that it is a read-only/deterministic lookup, nor what happens for invalid, checksum-less, or non-existent addresses, or whether non-Base addresses are rejected.

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?

One compact sentence with no filler; the paid/protocol/chain tag is bracketed up front, which usefully front-loads cost before the agent commits. Slightly better if the cost tag followed the purpose statement instead of preceding it.

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

Completeness3/5

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

For a one-parameter lookup with no output schema and no annotations, the description covers purpose, cost, network, and the shape of the result (classification plus bytecode size). It leaves the exact response structure and edge-case behavior (EOA → size 0?, unverified/invalid addresses) undocumented.

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 single parameter is described as 'EVM address', so baseline would be 3; the description adds meaning by scoping the address to Base (eip155:8453), narrowing the generic EVM wording. It still does not specify format expectations such as checksumming or hex prefix.

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

Purpose4/5

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

States a specific resource and outcome: given a Base address, report whether it is a contract or an EOA plus the deployed bytecode size. That is materially different from sibling chain_balance, chain_nonce or chain_tx, though the description never explicitly names those siblings to sharpen the distinction.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not guidance and no alternative tool is named (e.g. use chain_tx for transactions, chain_balance for holdings). The intended use is only inferable from the phrasing 'whether ... is a contract or an EOA'.

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.