Tereno on Base
Server Details
Check a Base contract, transaction or web page before you act. Free pricing, paid per call in USDC.
- Status
- Healthy
- Uptime
- 100.0% over 50 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- tereno-xyz/tereno-mcp
- GitHub Stars
- 0
- Server Listing
- tereno-mcp
TDQS
Scored across 10 tools
Each tool targets a distinct concern—chain state, contract safety, token metadata, prediction evidence, pricing, receipts, publishing, and catalog lookup—so misselection risk is low. A few adjacent concepts like tereno_price vs tereno_receipt vs tereno_catalog require careful reading, but the descriptions draw clear boundaries.
All names are lowercase snake_case and mostly noun phrases, with paid data queries unprefixed and platform utilities using the tereno_ prefix. The main inconsistency is tereno_publish being a verb among nouns, plus the mixed prefix scheme, but the naming remains readable and predictable.
Ten tools is well within the ideal range for a marketplace covering paid data queries, discovery, pricing, receipts, and supply-side publishing. Each tool earns its place and supports a distinct part of the workflow.
The tool set covers discovery, pricing, execution verification, receipts, and supply-side seeding, giving agents a navigable end-to-end marketplace flow. Minor gaps like a direct credit-balance or agent-registration tool are handled outside the MCP surface and do not block core workflows.
Available Tools
10 toolschain_snapshotWhat is the current state of Base?AInspect
What is the current state of Base? Latest block number, timestamp, base fee and suggested gas fees in a single cheap call — no parameters required. Paid per call with x402 on Base: $0.002 to $0.005 USDC depending on how much of the answer the network already has. Shared: reusing an answer another agent already paid for costs less, and the wallet that produced it earns a bounded credit.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral transparency. It discloses a key behavioral trait: cost sharing/reuse where answers cached by other agents reduce cost and earn credit for the producing wallet. This goes beyond simple read behavior and aids expectation setting.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the core purpose and supported by pricing and reuse details. It is not overly verbose, though the cost explanation could be shortened without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description adequately explains what the tool returns and the pricing model. It is complete enough for an agent to understand the tool's purpose and operational context, though it lacks explicit return format or error handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and is fully covered (100%). The description clarifies that no parameters are required and adds meaning by listing the returned data fields, which is useful since no output schema is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves the current state of Base, listing specific data points (latest block number, timestamp, base fee, suggested gas fees) and emphasizes it requires no parameters. This distinguishes it from sibling tools that deal with contracts, evidence, and transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context on when to use the tool (getting current state cheaply) and the cost model, but does not explicitly contrast with sibling tools or state when not to use it. An agent must infer exclusivity from the sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
contract_guardIs this Base contract safe to interact with?AInspect
Is this Base contract safe to interact with? Check whether an address is executable code, detect common proxy and pause signals, and return a bounded action verdict. Paid per call with x402 on Base: $0.02 to $0.1 USDC depending on how much of the answer the network already has. Shared: reusing an answer another agent already paid for costs less, and the wallet that produced it earns a bounded credit.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Base contract address to check. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose a genuinely non-obvious trait: the x402 per-call payment model, a $0.02–$0.1 USDC cost range tied to network answer availability, and cache-sharing economics including producer credits. It is silent on what the 'bounded action verdict' actually contains, failure modes, and any auth/latency behavior, so the operational picture is incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core capability is front-loaded in the first sentence, which is good structure. The payment and shared-cache sentences are dense but partly promotional, and some of that detail could be trimmed without losing decision-relevant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description is the only source of return-shape information – yet 'bounded action verdict' is never defined in terms of possible outcomes. It lists what is inspected (executable code, proxy signals, pause signals) but leaves the agent unsure how to interpret or act on the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter with full schema description coverage, so the schema already explains that it is a Base contract address matching a hex pattern. The description adds nothing beyond the schema here; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: checks whether an address is executable code, detects proxy and pause signals, and returns a bounded action verdict. That is far more than a restatement of the name. It does not, however, distinguish itself from close siblings like contract_change, contract_interface, or transaction_intent_guard, so an agent gets no routing help.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the framing question 'Is this Base contract safe to interact with?', which suggests calling it before interacting with an unknown contract. There is no explicit when-to-use, when-not-to-use, or named alternative among the many contract-oriented siblings, so the agent must infer the trigger.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
demand_pledgeDeclare a capability you would pay forAInspect
Free market-signal pledge. It earns no credit now; a bounded non-transferable credit is released only if this same wallet later settles the named capability after it exists.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Your Base wallet; must later be the x402 payer. | |
| capability | Yes | 2-64 character capability id, e.g. wallet-scam-classification. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the disclosure burden. It reveals key traits: no immediate credit, bounded and non-transferable credit, and conditional release only if the same wallet later settles the capability. This is useful, though it doesn't mention if the pledge is irreversible or if it has other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with 'Free market-signal pledge,' and every clause adds value. It is concise without sacrificing key behavioral information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two well-documented parameters and no output schema, the description provides sufficient context about the pledge's purpose and credit behavior. It lacks guidance on return values or failure conditions, but these are less critical for a simple declarative tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for both parameters, so the schema already documents wallet and capability thoroughly. The description adds some context (e.g., 'same wallet' reinforces the wallet parameter) but doesn't provide additional syntax or format details beyond the schema, warranting a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a market-signal pledge for declaring a capability you would pay for, with a specific conditional credit mechanism. This distinguishes it from sibling tools like chain_snapshot or token_metadata, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool or when to avoid it. It implies a usage for signaling demand but offers no guidance on alternatives or exclusions, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prediction_evidenceGather sourced machine-readable evidence supporting or contradicting a prediction market propositionBInspect
Returns current, sourced and machine-readable evidence supporting or contradicting a prediction-market proposition. Paid per call with x402 on Base: $0.01 to $0.05 USDC depending on how much of the answer the network already has. Shared: reusing an answer another agent already paid for costs less, and the wallet that produced it earns a bounded credit.
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | Market venue identifier (e.g. polymarket, omen, kalshi). Defaults to polymarket. | |
| context | No | Optional contextual metadata. | |
| question | Yes | Prediction market question or proposition. | |
| marketUrl | No | Optional market URL for resolution rules extraction. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It adds valuable context about the payment model ('Paid per call with x402 on Base: $0.01 to $0.05 USDC') and the shared-credit mechanism, which are non-obvious behavioral traits. However, it does not address whether the tool is read-only, what happens on no evidence, or any rate limits, leaving some behavioral uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, three sentences long, with the primary purpose front-loaded in the first sentence. The pricing and sharing details are relevant but add length; still, every sentence earns its place and there is no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with moderate complexity (4 params, no output schema, no annotations), the description covers purpose, pricing, and sharing but omits usage guidelines and any details about the return format or error behavior. The schema covers parameters, so the description is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented in the schema. The description does not add parameter-specific meaning beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Returns current, sourced and machine-readable evidence') and its specific target ('supporting or contradicting a prediction-market proposition'). This is a specific verb and resource, but it does not differentiate from siblings like evidence_artifact or tereno_find_claims, which likely overlap in purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternative evidence-related tools among the siblings. There is no explicit context, no exclusions, and no mention of prerequisites or alternative tools, leaving the agent to infer when to select this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tereno_catalogWhat can Tereno answer, and what does it cost?AInspect
Free. The full capability catalog: what each one answers, its price tiers in USDC on Base, how long an answer stays valid, and whether it is shared or private. Read this before paying for anything.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the behavioral burden. It does disclose that the catalog is 'Free' and implies a read-only reference role by warning to read before paying. However, it never explicitly states that the tool has no side effects, does not charge, or what the agent should expect in the response. The cost transparency is useful, but the operational behavior is only implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the most important fact ('Free.') and a compact list of what the catalog contains. Every phrase contributes; there is no filler, repetition, or unnecessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter catalog with no output schema, the description covers the key decision points: it's free, it's a full catalog, it lists pricing and validity, and it should be read before paying. It could explicitly say something like 'returns a list...' to set return-shape expectations, but for this simple tool the lack of that detail is a minor gap, not a critical one.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters, so the schema leaves nothing to explain. The description doesn't need to document inputs; it simply tells the user this is a catalog to consult. The '0 params = baseline 4' rule applies, and the description fully aligns with that expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies this as a capability catalog with a specific scope: what each capability answers, price tiers in USDC on Base, answer validity, and shared/private status. It also positions itself relative to the other Tereno tools with the directive 'Read this before paying for anything.' This is far from the tautological 'Process' example; it tells an agent exactly what the tool is for.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Read this before paying for anything' gives explicit timing guidance: consult this catalog before any paid action. It does not explicitly name sibling alternatives like tereno_price or tereno_publish, nor does it say when not to use it, so it stops just short of being fully explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tereno_evidence_referenceRead a portable Tereno evidence referenceAInspect
Free. Resolve an artifactId another agent handed you: producer, validity window and the exact normalized input needed to reproduce it. Supply a stable opaque installationId to participate in the cross-agent reference experiment; it is hashed, deduplicated daily and never creates payment or credit.
| Name | Required | Description | Default |
|---|---|---|---|
| channel | No | Optional lowercase channel label, e.g. mcp or dex-bot. | |
| artifactId | Yes | Public Tereno artifact id received from another agent. | |
| installationId | No | Stable opaque id for this receiving installation; do not use a wallet or secret. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It proactively discloses that the tool is free, that installationId is hashed and deduplicated daily, and that it never creates payment or credit. This addresses the main behavioral concerns, though it does not exhaustively describe all behaviors such as error handling or side effects beyond logging.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences. The first states the core purpose and output; the second explains the optional parameter. It is front-loaded, contains no filler, and every clause adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no output schema, the description explicitly enumerates what the tool returns (producer, validity window, normalized input). It covers the input (artifactId, installationId) and the operational context (experiment participation, no cost). For a simple read tool with one required parameter, this is fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage of parameter descriptions, giving a baseline of 3. The description adds meaningful context beyond the schema, particularly for installationId (purpose of participating in the cross-agent experiment and its hashed/deduped handling) and artifactId (origin from another agent). This raises the score above the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Resolve' with a clear resource (artifactId) and explicitly lists the output: producer, validity window, and normalized input. It distinguishes itself from siblings by specifying the use case 'another agent handed you', making its purpose unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (when another agent hands you an artifactId) but does not explicitly mention alternatives or when not to use it. The context is strong, but it lacks explicit exclusions or other sibling tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tereno_priceWhat would this call cost right now?AInspect
Free. Indicative price and reuse tier for one specific input, without binding a quote or revealing a wallet. Returns hit when another agent already paid to compute this and it is still fresh, partial when only the durable half survives, miss when nothing is there to reuse. The gap between those tiers is what reuse is worth.
| Name | Required | Description | Default |
|---|---|---|---|
| address | No | Base contract address, for the capabilities that take one. | |
| question | No | Proposition, for prediction.evidence. | |
| capability | Yes | Capability id: token.metadata, chain.snapshot, contract.guard or prediction.evidence. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the call is 'Free', that it does not bind a quote or reveal a wallet (safety/side-effect notes), and explains the hit/partial/miss semantics of the reuse tiers. This goes beyond a bare functional statement and covers key behavioral aspects. It doesn't mention rate limits or authentication, but those are less critical for an indicative price tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is tightly written: three sentences, front-loaded with 'Free.' and then immediately explains purpose and return states. No wasted words. Each sentence contributes essential information. It's a model of conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema, the description adequately explains the output semantics (hit/partial/miss) and their meaning. It covers the cost, the reuse concept, and the non-binding nature. It doesn't specify the exact response format (fields, types), but the conceptual explanation is sufficient for an agent to understand what it will receive. It could mention error cases or timeouts, but overall it's quite complete for the tool's purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all parameters have descriptions), so the baseline is 3. The description adds only the concept of 'one specific input' and does not enrich parameter meaning beyond what the schema provides. It doesn't clarify the relationship between address/question and capability, but that is already in the schema. Marginal value added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb-resource pair: 'indicative price and reuse tier' for a given input. It explains the three possible return states (hit, partial, miss) and what they mean. This distinguishes it from sibling tools like token_metadata or chain_snapshot, which are data-fetching tools rather than pricing/quote tools. The purpose is unambiguous and not a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage (check cost before a call) and scopes to 'one specific input', but it does not explicitly mention when to prefer this over alternatives or when not to use it. It never references sibling tools or provides exclusion criteria. An agent must infer that this is a pre-flight pricing check, which is a minor gap but not a fatal one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tereno_publishPublish work you already computed, and get it attested on-chainAInspect
Free, no payment and no gas. Submit a contract bytecode fingerprint you computed yourself. Tereno recomputes it against chain state: a mismatch burns the submission, a match makes you the seeder and pays you the reuse dividend in non-transferable credits whenever another wallet's settled call reuses it. Supply an ERC-8004 agentId you own and the passing audit is also projected to the Reputation Registry on Base under tag tereno.audit. No agentId yet? This tool has no HTTP-only sibling here: pay POST /api/v1/agents/register once (small flat fee, covers the mint gas) to get one, then publish again with it.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Your Base wallet. Becomes the seeder and earns the reuse dividend. | |
| address | Yes | Base contract address the fingerprint is for. | |
| agentId | No | Optional ERC-8004 agentId you own, as a decimal string. Ownership is verified against ownerOf before anything is written on-chain; an unverifiable claim is skipped and changes nothing about the publication. | |
| bytecodeHash | No | keccak256 of the deployed bytecode you read. Omit only for an address with no code. | |
| bytecodeBytes | No | Length of the deployed bytecode in bytes. Must be 0 exactly when bytecodeHash is omitted. | |
| computedAtBlock | Yes | Block number you read the bytecode at. | |
| registerIfMissing | No | Explicit consent to be attested via a Tereno-delegated identity you already paid POST /api/v1/agents/register for. Bind it by signing <contract-address>:erc8004-register as the resource. Does not itself trigger a mint — it only unlocks reuse of one you hold. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the behavioral disclosure burden. It explains costs (free, no gas), consequences (mismatch burns, match pays dividends), requirements (owning an agentId), and side effects (reputation registry projection). It also notes that unverifiable agentId claims are skipped without affecting the publication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph with six sentences. It front-loads key information (free, no gas) and every sentence contributes useful context. It is not overly verbose, though structured formatting could improve scanability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description comprehensively covers the tool's effects and prerequisites: burn on mismatch, dividend on match, reputation projection with agentId, and the external registration process. Despite lacking an output schema, it provides a complete picture of what happens before, during, and after the call.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds some context for agentId (audit projection) and the registration flow, but it largely repeats schema information. It does not significantly elaborate on computedAtBlock or bytecodeBytes beyond their existing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description and title clearly state the tool's function: submitting a self-computed contract bytecode fingerprint for on-chain attestation. It uses a specific verb (submit/publish) and a specific resource (contract bytecode fingerprint), making the purpose unambiguous and distinct from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool (after computing a fingerprint) and provides an alternative path for obtaining an agentId via an external HTTP endpoint. It also notes that there is no HTTP-only sibling for this, guiding the agent to the correct external registration route.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tereno_receiptVerify a Tereno receiptAInspect
Free. Look up what a settled invocation actually charged: capability, version, cache tier, list price, credit applied, price paid and whether it settled on chain. Use it to check that a call you or another agent paid for was billed the way it was quoted.
| Name | Required | Description | Default |
|---|---|---|---|
| invocationId | Yes | Invocation id from a receiptUrl. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool is 'Free' and details the returned information (capability, version, cache tier, price paid, on-chain settlement). The verb 'look up' implies a read-only operation, but it does not explicitly state side-effect-freedom or require authentication. Still, it provides useful behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with 'Free' and the core purpose. Every sentence contributes value – the first describes what it does, the second specifies when to use it. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter lookup tool with no output schema, the description adequately lists the result fields (capability, version, cache tier, list price, credit, paid price, on-chain settlement). It fully explains the tool's purpose and context. Minor gaps like not-found behavior do not significantly impede understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers the single parameter 'invocationId' with description 'Invocation id from a receiptUrl.' The tool description does not add further meaning about the parameter beyond referencing 'settled invocation' in the purpose. Baseline 3 is appropriate since schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with 'Look up what a settled invocation actually charged' – a specific verb and resource. It clearly distinguishes this tool from siblings like tereno_price (for quotes) and tereno_catalog (for catalog data) by focusing on settled receipts/billing verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the intended use: 'Use it to check that a call you or another agent paid for was billed the way it was quoted.' This gives a clear when-to-use signal. It does not explicitly mention when not to use it or name alternatives, but the use case is specific and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
token_metadataWhat token is this?AInspect
What token is this? Read a Base token's name, symbol, decimals and total supply as one typed, cache-shared answer with block-level freshness. Paid per call with x402 on Base: $0.01 to $0.03 USDC depending on how much of the answer the network already has. Shared: reusing an answer another agent already paid for costs less, and the wallet that produced it earns a bounded credit.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Base token contract address to read name, symbol, decimals and total supply from. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It transparently discloses key behaviors: paid per call with x402 pricing, caching and sharing of answers, block-level freshness, and the credit/reuse model. This far exceeds basic read-tool descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose and is reasonably concise. The pricing and sharing details add length but are essential behavioral context, so the trade-off is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description adequately specifies the returned fields (name, symbol, decimals, total supply) and also covers the response freshness and network (Base). The additional economic model context makes the tool's behavior fully understandable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes the single address parameter, including pattern and purpose. The description adds no additional semantics beyond the schema's 100% coverage, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads a Base token's name, symbol, decimals, and total supply from a given contract address. It uses a specific verb ('Read') and resource ('Base token'), and this scope distinguishes it from sibling tools like contract_interface.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for looking up token metadata but does not explicitly state when to use it versus alternatives. No exclusions or comparisons to sibling tools are provided, so guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
- Removed
aerodrome_swap_guard - Removed
contract_change - Removed
contract_interface - Removed
evidence_artifact - Removed
hyperliquid_market_check - Removed
morpho_collateral_guard - Removed
obligation_verdict - Removed
rwa_market_guard - Removed
tereno_find_claims - Changed
tereno_price4 fields changed- removed
Input schema / properties / artifactIdRemoved value: -{ - "description": "Artifact id, for evidence.artifact.", - "pattern": "^sha256:[a-f0-9]{64}$", - "type": "string" -} - changed
Input schema / properties / capability / descriptionPrevious value: -"Capability id, for example token.metadata or contract.guard."New value: +"Capability id: token.metadata, chain.snapshot, contract.guard or prediction.evidence." - added
Input schema / properties / questionAdded value: +{ + "description": "Proposition, for prediction.evidence.", + "maxLength": 2000, + "type": "string" +} - removed
Input schema / properties / urlRemoved value: -{ - "description": "Public page URL, for web.compile.", - "maxLength": 2048, - "type": "string" -}
- Removed
trade_execution_notarize - Removed
transaction_intent_guard - Removed
uniswap_v4_hook_guard - Removed
web_compile
1 tool update
- Added
hyperliquid_market_check
1 tool update
- Added
prediction_evidence
1 tool update
- Added
trade_execution_notarize
1 tool update
- Changed
aerodrome_swap_guard6 fields changed- added
Input schema / properties / amountInAdded value: +{ + "description": "Input amount in base units/wei (alternative to data).", + "pattern": "^[0-9]+$", + "type": "string" +} - added
Input schema / properties / minAmountOutAdded value: +{ + "description": "Minimum output expected in base units/wei.", + "pattern": "^[0-9]+$", + "type": "string" +} - added
Input schema / properties / routerTypeAdded value: +{ + "description": "Router type: classic (default) or slipstream.", + "enum": [ + "classic", + "slipstream" + ], + "type": "string" +} - added
Input schema / properties / tokenInAdded value: +{ + "description": "Input token address (alternative to data).", + "pattern": "^0x[a-fA-F0-9]{40}$", + "type": "string" +} - added
Input schema / properties / tokenOutAdded value: +{ + "description": "Output token address (alternative to data).", + "pattern": "^0x[a-fA-F0-9]{40}$", + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "from", - "to", - "data" -]
3 tool updates
- Added
morpho_collateral_guard - Added
rwa_market_guard - Added
uniswap_v4_hook_guard
1 tool update
- Added
aerodrome_swap_guard
1 tool update
- Added
obligation_verdict
2 tool updates
- Added
tereno_find_claims - Added
tereno_publish
1 tool update
- Added
tereno_evidence_reference
1 tool update
- Changed
contract_change1 field changed- changed
Input schema / properties / address / descriptionPrevious value: -"Base contract address to compare against its previous observation."New value: +"Base token or contract address to compare against its previous observation. Poll it on a watchlist: the answer states the block it stops being valid at."
12 tool updates
- First observed
chain_snapshot - First observed
contract_change - First observed
contract_guard - First observed
contract_interface - First observed
demand_pledge - First observed
evidence_artifact - First observed
tereno_catalog - First observed
tereno_price - First observed
tereno_receipt - First observed
token_metadata - First observed
transaction_intent_guard - First observed
web_compile
Related MCP Connectors
Base token risk (honeypot sim), prices, balances, Basenames, tx data. Pay-per-call in USDC via x402.
Smart contract security screening for Base. Check any contract or token for risk before interacting with it: Solidity source verification, upgradeable proxies and admin or mint powers, holder concentration, dangerous selectors, and B20 issuer powers. It surfaces the usual rug pull and scam indicators. The free tool needs no wallet and no API key; the paid Flash Audit (3.49 USDC over x402) returns a report with an anchored SHA-256. Payment is the only gate.
Smart contract security screening for Base. Check any contract or token for risk before interacting with it: Solidity source verification, upgradeable proxies and admin or mint powers, holder concentration, dangerous selectors, and B20 issuer powers. It surfaces the usual rug pull and scam indicators. The free tool needs no wallet and no API key; the paid Flash Audit (3.49 USDC over x402) returns a report with an anchored SHA-256. Payment is the only gate.
Pre-trade token safety checks for AI agents on Solana and Base. x402 USDC per call, no key.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI agents to check an EVM address on Base for risk (safe, caution, danger) before sending funds, with reasons, paid per call via x402 from the user's own wallet.5386 npmMIT
- FlicenseAqualityBmaintenanceAgent-Level Transaction Safety Oracle. Before an AI agent signs a blockchain transaction, it returns a SAFE/UNSAFE verdict with a SENTINEL Score (AAA-D) and risk flags. Pay-per-call $0.005 USDC via x402 on Base.1-
- AlicenseAqualityFmaintenanceThe safety layer that checks a DeFi transaction or token before your agent (or you) signs — on Base L2.646 npmMIT
- AlicenseNot gradedqualityCmaintenanceProvides onchain intelligence tools for Base, including token risk checks, wallet PnL, and leaderboard data, with paid calls settled per-request in USDC via x402.350 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.