Tereno on Base

Check a Base contract, transaction or web page before you act. Free pricing, paid per call in USDC.

我该使用它吗

质量与安全性

A
描述质量
94%
模式完整度
86%
命名质量
80%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,755token 数(工具定义)
~1.1 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.37%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "tereno": {
      "command": "npx",
      "args": [
        "tereno-mcp"
      ]
    }
  }
}

可运行的软件包

npmtereno-mcp0.1.3stdio

远程端点

https://www.tereno.xyz/api/mcpstreamable-http

它能做什么

工具清单

工具(10)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢tereno_catalog

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.

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢tereno_price(capability, address, question)

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.

输入模式

{
  "type": "object",
  "properties": {
    "capability": {
      "type": "string",
      "description": "Capability id: token.metadata, chain.snapshot, contract.guard or prediction.evidence."
    },
    "address": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "Base contract address, for the capabilities that take one."
    },
    "question": {
      "type": "string",
      "maxLength": 2000,
      "description": "Proposition, for prediction.evidence."
    }
  },
  "required": [
    "capability"
  ],
  "additionalProperties": false
}
🟢tereno_receipt(invocationId)

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.

输入模式

{
  "type": "object",
  "properties": {
    "invocationId": {
      "type": "string",
      "maxLength": 64,
      "description": "Invocation id from a receiptUrl."
    }
  },
  "required": [
    "invocationId"
  ],
  "additionalProperties": false
}
⚪tereno_evidence_reference(artifactId, installationId, channel)

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.

输入模式

{
  "type": "object",
  "properties": {
    "artifactId": {
      "type": "string",
      "pattern": "^sha256:[a-f0-9]{64}$",
      "description": "Public Tereno artifact id received from another agent."
    },
    "installationId": {
      "type": "string",
      "minLength": 16,
      "maxLength": 128,
      "description": "Stable opaque id for this receiving installation; do not use a wallet or secret."
    },
    "channel": {
      "type": "string",
      "maxLength": 64,
      "description": "Optional lowercase channel label, e.g. mcp or dex-bot."
    }
  },
  "required": [
    "artifactId"
  ],
  "additionalProperties": false
}
🟡tereno_publish(wallet, address, bytecodeHash, bytecodeBytes, computedAtBlock, ...)

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.

输入模式

{
  "type": "object",
  "properties": {
    "wallet": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "Your Base wallet. Becomes the seeder and earns the reuse dividend."
    },
    "address": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "Base contract address the fingerprint is for."
    },
    "bytecodeHash": {
      "type": "string",
      "pattern": "^0x[0-9a-f]{64}$",
      "description": "keccak256 of the deployed bytecode you read. Omit only for an address with no code."
    },
    "bytecodeBytes": {
      "type": "number",
      "description": "Length of the deployed bytecode in bytes. Must be 0 exactly when bytecodeHash is omitted."
    },
    "computedAtBlock": {
      "type": "number",
      "description": "Block number you read the bytecode at."
    },
    "agentId": {
      "type": "string",
      "maxLength": 78,
      "description": "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."
    },
    "registerIfMissing": {
      "type": "boolean",
      "description": "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."
    }
  },
  "required": [
    "wallet",
    "address",
    "computedAtBlock"
  ],
  "additionalProperties": false
}
🟢token_metadata(address)

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.

输入模式

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "Base token contract address to read name, symbol, decimals and total supply from."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}
⚪chain_snapshot

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.

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢contract_guard(address)

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.

输入模式

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[a-fA-F0-9]{40}$",
      "description": "Base contract address to check."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}
⚪prediction_evidence(question, market, marketUrl, context)

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.

输入模式

{
  "type": "object",
  "properties": {
    "question": {
      "type": "string",
      "minLength": 5,
      "maxLength": 2000,
      "description": "Prediction market question or proposition."
    },
    "market": {
      "type": "string",
      "description": "Market venue identifier (e.g. polymarket, omen, kalshi). Defaults to polymarket."
    },
    "marketUrl": {
      "type": "string",
      "description": "Optional market URL for resolution rules extraction."
    },
    "context": {
      "type": "object",
      "description": "Optional contextual metadata."
    }
  },
  "required": [
    "question"
  ],
  "additionalProperties": false
}
⚪demand_pledge(wallet, capability)

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.

输入模式

{
  "type": "object",
  "properties": {
    "wallet": {
      "type": "string",
      "description": "Your Base wallet; must later be the x402 payer."
    },
    "capability": {
      "type": "string",
      "description": "2-64 character capability id, e.g. wallet-scam-classification."
    }
  },
  "required": [
    "wallet",
    "capability"
  ],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本10 个工具
已验证未记录版本10 个工具
已验证未记录版本22 个工具