关于 RugRadar
RugRadar 是面向 Solana 代币风险检查的服务,名称和简介强调 rug、代币安全及 honeypot 检查与监控提醒。README 描述的是一组按次以 USDC 付费的研究 API,但未说明这些风险检查的具体端点或 MCP 接口。
主要功能
- 01Solana 代币风险检查
- 02代币安全与 honeypot 检查
- 03代币监控提醒
适用场景
- 01检查 Solana 代币的潜在风险
- 02评估代币安全性与 honeypot 风险
- 03接收代币监控提醒
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://x402-seller-pmlm.onrender.com/mcpclaude mcp add --transport http jimmybr-pdx-rugradar https://x402-seller-pmlm.onrender.com/mcp{"mcpServers":{"jimmybr-pdx-rugradar":{"type":"http","url":"https://x402-seller-pmlm.onrender.com/mcp"}}}在 Cursor 中打开{"servers":{"jimmybr-pdx-rugradar":{"type":"http","url":"https://x402-seller-pmlm.onrender.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"jimmybr-pdx-rugradar":{"type":"http","url":"https://x402-seller-pmlm.onrender.com/mcp"}}}{"mcpServers":{"jimmybr-pdx-rugradar":{"serverUrl":"https://x402-seller-pmlm.onrender.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://x402-seller-pmlm.onrender.com/mcp需要授权工具
3| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| chain | enum | 否 | 默认使用 solana;0x 地址默认使用 basesolana | base | bnb | ethereum | arbitrum |
| token | string | 是 | Solana mint 或 EVM 0x 代币合约 |
| api_key | string | 否 | 可选的 RugRadar 额度密钥(或发送请求头 X-RugRadar-Key) |
详细介绍
Agent 研究工具 — 按次付费的 x402 API(USDC,支持 Base、Polygon、Arbitrum、Solana、Avalanche、Sei)
在线服务:https://x402-seller-pmlm.onrender.com · Agent 指南:/llms.txt · OpenAPI:/openapi.json · 发现:/.well-known/x402
无需 API 密钥,无需注册。AI Agent 使用 x402 协议,以 USDC 按请求付费,支持 Base(eip155:8453)、Polygon(eip155:137)、
Arbitrum(eip155:42161)、Solana 主网(CDP facilitator)或 Avalanche(eip155:43114)和 Sei(eip155:1329)
(免费 PayAI facilitator)。交易通过 Coinbase CDP facilitator 结算,并收录在 CDP x402 Bazaar 中。
| 端点 | 价格 | 适用场景 | 返回内容 |
|---|---|---|---|
GET /report?q=<question> | $0.01 | 你需要关于某个主题的简明、有引用的回答或背景信息 | 1-3 句的 answer、与来源 ID 对应的 key_points、sources[](通常为 1-5 个:优先 Wikipedia,匹配时还会包含 Stack Overflow、GitHub、Crossref 论文、官方文档;会剔除不相关来源),附带 URL、日期和支持性引文,以及 confidence |
GET /read?url=<https url> | $0.005 | 你有一个 URL,需要提取其中的文本供大模型使用 | title、description、publishedAt、清理后的 markdown、wordCount、headings[]、links[] |
GET /check?url=<x402 endpoint> | $0.005 | 你准备为某个 x402 API 付费或将其列出 | 就绪度 score、逐项检查结果、fixes[](进行一次不付费的探测;绝不会向目标付费) |
GET /news?q=<keywords> | $0.005 | 你需要了解某个主题过去 1-7 天发生了什么 | articles[](标题、URL、媒体、publishedAt、匹配 score、partialMatch)、媒体列表、提供方状态。可选参数 hours(1-168,默认值 72)、limit(1-25)。仅返回标题和链接 |
GET /price?token=<symbol, 0x address or Solana mint> | $0.002 | 你需要可验证的代币美元价格和 24 小时涨跌幅 | priceUsd、change24hPct + priceUsd24hAgo(EVM)、confidence、poolSpreadPct、totalDepthUsd、带区块浏览器链接的 pools[]、block/slot。可选参数 chain(ethereum、base、arbitrum、polygon、solana) |
GET /solana-price?token=<symbol or mint> | $0.002 | 你需要 Solana 代币价格(包括 pump.fun / PumpSwap 代币) | priceUsd、confidence、thinLiquidity、pools[](Orca Whirlpool、Raydium CLMM、PumpSwap、pump.fun 曲线),包含深度信息;poolSpreadPct、solUsd、slot |
GET /balance?address=<0x, name.eth or Solana address> | $0.003 | 你需要了解某个钱包持有的资产及其价值 | 各链的 native + tokens[](余额、价格、美元价值)以及 totalUsd;一次调用即可查询 EVM 的 Ethereum、Base、Arbitrum、Polygon。可选参数 chain、tokens(额外合约 / mint) |
GET /tx?hash=<0x hash or Solana signature> | $0.003 | 你需要确认某笔交易 / 付款是否已上链,以及具体内容 | status、timestamp、confirmations、from/to、解码后的 method(标记 x402 / EIP-3009 USDC 付款)、以美元计的 fee、解码后的 tokenTransfers[](EVM)或 SOL / 代币余额变化(Solana)。可选参数 chain |
GET /gas[?chain=] | $0.002 | 你需要在发送交易前了解当前手续费 | 基础费用、慢速 / 标准 / 快速优先费用、maxFeePerGas、每条 EVM 链上转账 / ERC-20 转账 / 兑换的美元成本、Solana 优先费用、cheapestEvmForErc20Transfer |
错误不收费: 400 输入无效,422 未找到内容 / 目标无法访问,503 服务不可用。 只有处理程序返回 2xx 时,x402 中间件才会结算付款。
调用方式
# 1. Unpaid call -> 402 with base64 JSON challenge in the PAYMENT-REQUIRED header
curl -i "https://x402-seller-pmlm.onrender.com/report?q=history+of+the+transistor"
# 2. Pay with any x402 client, e.g. @x402/fetch
import { wrapFetchWithPayment } from "@x402/fetch";
// ... create an x402 client with an EVM signer holding a little Base USDC
const res = await fetchWithPayment("https://x402-seller-pmlm.onrender.com/report?q=what+is+RAG");
console.log(await res.json()); // { summary, bullets, sources, ... }
自行运行
Node 22+、CDP API 密钥(https://portal.cdp.coinbase.com)和 Base 收款地址。
cp .env.example .env # fill CDP_API_KEY_ID / CDP_API_KEY_SECRET / X402_PAY_TO
npm ci && npm run dev # http://localhost:8402
| 环境变量 | 默认值 | 说明 |
|---|---|---|
X402_ENV | development | production = Base、Polygon、Arbitrum、Solana(CDP)+ Avalanche、Sei(PayAI);development = Base Sepolia + Solana Devnet |
X402_NETWORKS | 按 X402_ENV 设置 | 可选的逗号分隔 CAIP-2 覆盖值,例如 eip155:8453,eip155:137(支持:8453、137、42161、43114、1329、84532、Solana 主网/开发网)。所有 EVM 链使用相同的 X402_PAY_TO |
X402_SOLANA_PAY_TO | 内置公共地址 | Solana 收款地址(仅限公钥;此仓库中绝不会保存密钥) |
PAYAI_FACILITATOR_URL | https://facilitator.payai.network | Avalanche/Sei 的 Facilitator(免费套餐,无需 API 密钥) |
X402_PAY_TO | — | 你的 EVM 收款地址(否则由 CDP 配置一个;需要 CDP_WALLET_SECRET) |
REPORT_PRICE / READ_PRICE / CHECK_PRICE / NEWS_PRICE / TOKEN_PRICE | $0.01 / $0.005 / $0.005 / $0.005 / $0.002 | 每次调用的价格 |
SOL_PRICE / BALANCE_PRICE / TX_PRICE / GAS_PRICE | $0.002 / $0.003 / $0.003 / $0.002 | /solana-price、/balance、/tx、/gas 的每次调用价格 |
NEWS_GKG_HOURS | 24 | 保留在内存中的 GDELT GKG 15 分钟新闻索引时长(0 = 关闭)。每 15 分钟下载约 2.5 MB,每天约 50k 条标题,占用约 60 MB RAM |
NEWS_GDELT_API | 关闭 | 1 = 也查询 GDELT DOC API(有速率限制;会增加延迟) |
TRAFFIC_FILE | ./data/traffic.json | /stats 计数的保存位置(每 10 分钟及关闭时保存)。off = 仅存于内存。Render 免费套餐没有持久磁盘,因此每次部署后计数都会重置,除非在此挂载磁盘 |
SOLANA_RPC_URLS | Solana Foundation + PublicNode | 逗号分隔的 Solana RPC URL(使用第一个健康的节点) |
PUBLIC_URL | Render URL | 用于发现文档 |
DAILY_SPEND_CAP_USD | 50 | 对每个 UTC 日已确认结算金额的失控保护上限 |
GROK_API_KEY 或 OPENAI_API_KEY | — | 可选:对引用来源进行大模型综合;未设置时,/report 采用摘录式回答 |
SERPER_API_KEY | — | 可选:使用 Serper(Google 结果 API)作为第一个 /search 来源(超时为 5 秒);发生错误/超出配额或未设置时,将依次回退到 Brave → DuckDuckGo → Bing → Bing RSS → Wikipedia,并补足过短的结果列表 |
免费路由:/health、/stats、/examples、/llms.txt、/openapi.json、/.well-known/x402、/robots.txt、/icon.png(/icon.svg)。
答案永久链接(/a/<id>)
每个付费的 /report 答案都会生成一个免费的可分享页面,网址为 /a/<id>(简洁 HTML;添加 ?format=json 可获取存储的 JSON),页脚附有返回服务的链接。内容仅存储在内存中(最多 500 条,保留 30 天),因此每次 Render 部署/重启后链接都会重置。仅存储答案(问题、答案、来源),绝不存储 IP、用户代理或付款方信息。/a/example-mcp 是固定的演示页面。付费响应开头包含便于机器人处理的字段:answer、answer_citations、key_points[{text,citations}]、包含 publisher、published、quote、confidence + confidence_why 的来源、checked_at、permalink;原有字段(summary、bullets 等)保持不变。
兴趣追踪器(/stats)
在浏览器中打开 /stats(或 /stats?view=simple),即可查看一个通俗易懂的页面:一条标题句、按工具分类的表格(查看价格/已付费/机器人爬虫),以及太平洋时间。程序可获取 JSON(默认格式,或使用 ?format=json)。由我们自己的测试钱包签名的付款(SELF_PAYERS,默认值为 0x4862…4940),以及同一访客在这些付款之前紧挨着发出的未付款探测请求,都会标记为 self,并从买家数量中排除(selfPaid 会显示这些数据)。
按付费路由以及每小时/UTC 日统计:未付款的 402 响应、已付款的 200 响应、结算失败、付款被拒、未收费错误和唯一访客,并按访客类别细分:client(发送付款的任何人,或使用非机器人用户代理的用户,例如 node、python、curl、浏览器)、crawler(CDP Bazaar、x402scan、402index 及其他 x402 目录)、pinger(cron-job.org、UptimeRobot 等)、bot(搜索/AI 爬虫、扫描器、空 UA)、head(HEAD/OPTIONS)和 self(scripts/rank-check.mjs)。访客 ID 为 sha256(random daily salt + IP + UA);绝不存储原始 IP,盐值也不会离开内存。/health 包含简洁的 traffic 数据块;/stats 提供今天、昨天、最近 7 天、48 个小时分桶和 35 个日分桶的数据、热门用户代理及相关定义。内存占用仅几百 KB。
发现与排名
- 每个付费路由都会根据 x402 Bazaar 规范声明
extensions.bazaar(输入架构和示例、带类型的输出架构和示例),以及resource.serviceName/tags/iconUrl/mimeType。 - 路由在首次通过 CDP 结算付款后由 CDP Bazaar 编入索引,并每约 6 小时更新排名(根据 30 天调用量、唯一付款者、元数据质量和可用性)。30 天内没有结算记录的路由会被移除。
node scripts/rank-check.mjs会打印定期检查清单(在线状态、Bazaar 列表和各查询的排名,包括使用与不使用 Base 筛选条件的情况、CDP 验证、链上销售、/stats兴趣追踪器、x402scan 收录情况)。- 影响 Bazaar 搜索排序的因素(CDP 文档和观察到的排名):
serviceName、标签和描述与查询的相关性(混合文本与语义搜索),以及 30 天唯一买家数、已结算调用量、近期情况和元数据完整度的综合结果;约每 6 小时重新计算;每个域名的结果数量设有上限;只有出现新的 CDP 结算付款后,索引中的元数据才会刷新。
防护措施
- 仅在收款方确认后,才将结算记录到
payments.jsonl(已在 gitignore 中忽略),并记录付款方和交易哈希。 - 熔断机制:10 分钟内发生 3 次结算失败(已验证付款,但结算失败)后,对付费调用返回 503(不收费)。
/news的来源:GDELT GKG 的 15 分钟文件(开放数据,注明来源 gdeltproject.org;索引在内存中,因此没有 API 速率限制)、Hacker News(Algolia API)以及约 26 个发布方的 RSS/Atom 源(缓存 10 分钟)。仅返回标题、链接、媒体来源和时间,不返回文章正文。/price通过 Multicall,直接从公共 RPC 节点读取 Uniswap v3 池状态(slot0、储备量):不使用第三方价格 API,因此每个数值都可在返回区块上链验证。忽略报价侧深度低于 $25k 的池;没有符合条件的池时返回 422(不收费)。24 小时涨跌幅来自最深池自身的 TWAP 预言机(observe),或约 24 小时前区块的归档slot0读取结果。缓存 30 秒。/solana-price(以及针对 Solana 的/price)通过 PDA 推导 Orca Whirlpool、Raydium CLMM、PumpSwap 和 pump.fun 联合曲线账户,并从公共 Solana RPC 读取(不使用索引器或 API 密钥)。不支持:Raydium AMM v4、Meteora。Solana 上不提供 24 小时涨跌幅(公共 RPC 不保留价格历史)。深度低于 $5k 时返回 422;低于 $25k 时标记为thinLiquidity。/balance、/tx、/gas仅读取公共 RPC 节点(EVM 上使用 Multicall3)。余额涵盖原生资产、每条链精选的主要代币,以及你传入的任何tokens=(公共 RPC 不会索引钱包持有的所有代币)。/read和/check仅抓取公共https主机(会屏蔽私有、环回和链路本地 IP,并重新检查重定向;限制为 3 MB / 15 秒)。
MIT 风格:可自由使用。本仓库不包含任何密钥;切勿提交 .env。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。