Token Verdict

io.github.QuincyGB由 GitHub 账号 QuincyGB 发布v0.1.2更新于 Oct 29, 2026

MCP server for Token Verdict — pay-per-call token risk verdicts over x402 ($0.02 USDC on Base)

已验证STDIO仅桌面金融AI 与机器学习

概览

AI 生成的概览

本地 stdio MCP 服务器,为助手提供一个按次付费的代币风险判定工具,每次调用通过 x402 在 Base 上支付 0.02 USDC。

可以做什么
  • 针对 base、ethereum 或 solana 上的代币合约地址请求风险判定
  • 获得 SOLID / CAUTION / DANGER 结论、0-100 风险评分、六项加权市场结构信号以及一段分析师点评
  • 查看判定所依据的原始市场数据,以便复核计算
  • 未配置签名钱包时返回结构化的 payment_required 错误及价格信息
适用场景
适合在买入、兑换或向某代币投入资金之前,需要快速做一次市场结构风险筛查,并愿意用自有钱包按次支付少量 USDC 的场景。
运行要求
需要 Python 3.10 或更高版本并在本地安装 token-verdict-mcp 包,以及支持 stdio 的 MCP 宿主(如 Claude Desktop、Cursor)。付费调用需要持有 USDC 的 EVM 钱包私钥,通过 AGENT_PRIVATE_KEY 或 AGENT_KEY_FILE 提供,并需要访问服务的网络连接。可选 TOKEN_VERDICT_URL 与 TOKEN_VERDICT_MAX_AMOUNT_UNITS。
安装前请注意
需要 EVM 私钥(AGENT_PRIVATE_KEY 或密钥文件)来签署 Base 上真实的 USDC 付款,建议使用仅存放周转资金的专用钱包。每次调用默认花费 0.02 USDC,由 TOKEN_VERDICT_MAX_AMOUNT_UNITS 限制上限。私钥仅在本地用于签名、不会被传输,但仍属可动用的敏感凭据。分析仅覆盖市场结构,不检查蜜罐与持币集中度。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Token Verdict,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

token-verdict-mcp

[M8ven Score]

Standalone home: This server was split out of QuincyGB/token-verdict-tools so each MCP server has its own GitHub repository for directory ingestion and maintenance. The PyPI package name (token-verdict-mcp), version, and install command are unchanged.

An MCP server (stdio transport) that exposes Token Verdict as a native tool for any MCP host — Claude Desktop, Cursor, or your own agent runtime.

Token Verdict is a pay-per-call token risk screen for AI agents: send a token contract address, get back a verdict (SOLID / CAUTION / DANGER), a 0–100 risk score, six weighted market-structure signals explained in plain English, and a written analyst take. It costs $0.02 USDC per call on Base, paid via the x402 protocol — no accounts, no API keys; the payment is the authentication.

The tool

token_verdict — one tool, the service's real contract:

InputTypeNotes
addressstring (required)Token contract address (0x...)
chainstring, default "base"base · ethereum · solana — which token market to analyze. Payment always settles in USDC on Base.

Output is the service's verdict JSON: token, verdict, score, signals (exactly six), take, and market (the raw data the verdict derives from, so callers can re-check the math). Market-structure analysis only — honeypot simulation and holder concentration are not checked, and the product says so in every take.

Install

bash
pip install token-verdict-mcp
# Or from a checkout of this repository:pip install .

Requires Python ≥ 3.10. The server pins the MCP v1 SDK API (mcp>=1.2,<2).

Configuration

All configuration is the operator's own environment — whoever runs this server supplies their own wallet. No key material ships in this package, and the package author never sees your key.

Env varRequiredPurpose
AGENT_PRIVATE_KEYfor paid callsEVM private key (0x...) of a wallet holding USDC on Base. Used locally to sign the x402 EIP-3009 authorization.
AGENT_KEY_FILEalternativePath to a file containing that key.
TOKEN_VERDICT_URLnoService base URL override (default: production).
TOKEN_VERDICT_MAX_AMOUNT_UNITSnoSpend guard per call in USDC micro-units (default 20000 = $0.02, the known price). The client refuses to sign anything priced above it.

Without a signer configured the tool never pays. On a 402 it returns the parsed challenge as a structured error — error: "payment_required" with the full accepts array (scheme, network, asset, amount, payTo) — so the calling agent can see the price and decide what to do, or settle the challenge with its own x402 client.

MCP host configuration

Claude Desktop (claude_desktop_config.json) — same shape for other stdio MCP hosts:

json
{  "mcpServers": {    "token-verdict": {      "command": "token-verdict-mcp",      "env": {        "AGENT_PRIVATE_KEY": "0xYOUR_OWN_WALLET_KEY"      }    }  }}

From a checkout instead of an install:

json
{  "mcpServers": {    "token-verdict": {      "command": "python",      "args": ["-m", "token_verdict_mcp"],      "env": {        "PYTHONPATH": "/path/to/token-verdict-mcp/src",        "AGENT_KEY_FILE": "/path/to/your/agent.key"      }    }  }}

Prefer AGENT_KEY_FILE over inlining a key in a config file when your host setup allows it.

How payment works

The client mirrors the standard x402 v2 flow (the same flow used for the service's own live cataloging payment):

  1. POST /v1/verdict unpaid → HTTP 402, challenge base64-encoded in the payment-required header.
  2. Pick the exact / eip155:8453 entry from accepts.
  3. Build an EIP-3009 TransferWithAuthorization (validAfter: 0, validBefore: now + maxTimeoutSeconds, random 32-byte nonce) and sign it as EIP-712 typed data against the USDC domain the challenge advertises (extra.name / extra.version).
  4. Retry the identical POST with the payload in the PAYMENT-SIGNATURE header. The service verifies and settles through its facilitator (PayAI) server-side; the settlement receipt comes back in the payment-response header.

Tests

bash
pip install -e ".[dev]"pytest

14 tests, all payments mocked (httpx MockTransport, throwaway signer generated at test time). The 402 fixture is the real challenge captured from production; the paid-flow test verifies the EIP-712 signature actually recovers to the signer address.

Security notes

  • Your private key is read from your environment at runtime and used only to sign payment authorizations locally. It is never transmitted — the x402 payload contains a signature, not a key.
  • The spend guard caps any single call at the configured amount (default: exactly the $0.02 price).
  • Run this with a dedicated agent wallet holding only working funds, the same way you would fund any agent.

来源:README.md,提交 a1d5622

工具

1

token_verdict

Get a risk verdict for a token before buying, swapping, or routing funds into it. Calls Token Verdict (POST /v1/verdict, $0.02 USDC on Base via x402). Returns verdict (SOLID / CAUTION / DANGER), a 0-100 risk score, six weighted market-structure signals (liquidity depth, volume churn, sell pressure, price action, trader breadth, pair age), a written analyst take, and the raw market data the verdict derives from. Args: address: Token contract address (0x...). chain: Chain label — "base" (default), "ethereum", or "solana".

输入参数chainaddress必填

版本历史

2
  1. v0.1.2最新Oct 26, 2026
  2. v0.1.1Oct 23, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分