mcpField
R
robotbase-web3

robotbase-web3

远程服务
web3.robotbase.cc金融数据0今天更新

关于 robotbase-web3

robotbase-web3 是面向 Agent 的只读 MCP 服务,用于查询 Bitcoin、Ethereum、Monero、Zcash 和 Tron 链上数据,并提供网页搜索与页面读取。其自建节点支持交易验证和风险查询,超出免费额度的付费调用使用 x402。

主要功能

  1. 01五条链的交易与支付验证
  2. 02费用、内存池和地址风险查询
  3. 03网页搜索与页面内容读取
  4. 04x402 按调用付费

适用场景

  1. 01核实链上支付是否结算
  2. 02查询交易费用与内存池状态
  3. 03搜索网页并读取来源页面

MCP 相关

向 MCP 客户端提供链上验证、风险查询及网页搜索和读取工具。托管端点支持 Streamable HTTP;无需 API key,超出免费额度可通过 x402 支付。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://web3.robotbase.cc/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

RobotBase MCP 服务

面向 Agent 的单一 MCP 端点:搜索网络、读取任意页面、验证链上付款并按次付费——无需 API 密钥。

免鉴权 · 无追踪 · 只读 | 自建裸金属全节点,为 Agent 提供统一的「验证 + 风控」语义入口

托管服务提供 三个 MCP 版本,均包含完整的 17 个工具网络工具箱: Web3(https://web3.robotbase.cc/mcp,65 个工具——BTC/ETH/XMR/ZEC/TRON 验证与风控、预测市场、加密货币趋势)、 Dev(https://dev.robotbase.cc/mcp,18 个工具——GitHub/HF/npm/PyPI/HN 趋势 + 网络),以及 Content(https://content.robotbase.cc/mcp,35 个工具——社交平台热榜、关注度趋势、16 个 CyberLibrary 图书工具 + 网络)。 https://robotbase.cc/mcp 是 Web3 兼容别名。本仓库是无依赖的参考实现:45 个工具(41 个免费验证工具 + 2 个风控工具 + 2 个网络工具)。

版本端点工具数适用对象
Web3https://web3.robotbase.cc/mcp65链上验证、风控、预测市场、加密货币趋势
Devhttps://dev.robotbase.cc/mcp18GitHub/HF/npm/PyPI/HN 趋势 + 网络文档工具
Contenthttps://content.robotbase.cc/mcp35社交平台热榜、关注度趋势、图书 + 网络

https://robotbase.cc/mcp 是面向现有客户端的 Web3 兼容别名——它不是独立的 MCP 服务,不应作为单独的连接器列出。

以上四个端点均包含 17 个工具的网络工具箱。每个版本的免费网络额度为 每 IP 每天 100 次调用;x402 额度余额共享。

Base 和 Solana 数据工具已于 2026-10-18 停用。 五条链的服务范围为 Bitcoin、Ethereum、Monero、Zcash 和 Tron。x402 付款仍使用 Base 或 Solana 上的 USDC 结算;这是支付通道,不是数据服务。

托管工具 参考工具 协议 传输方式 Glama MCP 注册表

托管端点:https://robotbase.cc/mcp · 介绍页:https://robotbase.cc/mcp · 服务卡片:https://robotbase.cc/mcp/server.json · 实时使用情况审计:https://robotbase.cc/mcp/stats

已列入 官方 MCP Registry,名称为 io.github.wygogogo19/robotbase-mcp · 已被 Glama 收录 · 已发布至 Smithery(wygogogo/robotbase-mcp)。


原因

处理加密货币的自主 Agent 面临两个关键问题:这笔付款是否真的已结算,以及下一笔付款要花多少钱。如今问大模型这些问题,它们没有可靠的数据源可查——MCP 生态中,围绕托管索引器构建的封装十分丰富,而可自行运行的基础设施却很少。

Web3 版本提供 65 个严格只读工具(44 个免费验证工具 + 2 个按量计费的风险工具 + 2 个市场/趋势工具 + 17 个 Web 工具:14 个按量计费工具,以及 3 个免费辅助工具——web_crawl_job、web_monitor_list 和 web_monitor_delete);此参考实现提供其中 45 个(41 个免费工具 + 2 个风险工具 + 2 个 Web 工具)。所有工具均基于我们自己的全节点、本地索引和按量计费的 Web 层:使用 btc_get_transaction 检查结算状态,使用 btc_get_fee_rates 和 btc_get_mempool_state 查询下一笔交易的费用,使用 zec_get_pool_status 查询 Zcash 屏蔽池供应量;完整的 Monero 工具集(xmr_get_fee_rates、xmr_get_transaction、xmr_verify_payment,……)直接从我们自己的 monerod 读取;Ethereum 工具集(eth_get_transaction、eth_get_fee_rates、eth_read_contract)运行在我们自己的 Reth 节点上;Tron 工具集(tron_read_contract、tron_get_transaction)运行在我们自己的 java-tron 节点上。

定价

套餐包含内容限额
验证(41 个工具)手续费、内存池、交易/区块/地址验证、节点和屏蔽池遥测、可选的原始交易中继永久免费,无需密钥,无需注册
风险情报(2 个工具)tron_check_address_risk、tron_verify_usdt_transfer每个 IP 每天免费调用 5 次,于 Asia/Shanghai 时间 00:00 重置
Web 工具(2 个工具)web_search(排序后的 Web 结果)和 web_fetch(读取一个公开 URL 的可读文本)——共用一个 Web 配额,与风险工具的配额独立两个 Web 工具共用每个 IP 每天 100 次调用,于 Asia/Shanghai 时间 00:00 重置
x402 额度包超出免费额度后,每次按量计费调用收费 $0.01(1 个额度:风险工具 1 次、web_search 1 次、web_fetch 1 次)在 Base 或 Solana 上以 USDC 支付 10 次调用/0.10 USDC 或 100 次调用/1.00 USDC,使用调用者自己的钱包付款——仅作为支付通道,不提供 Base/Solana 链数据

**Base 和 Solana 仅作为支付通道。**x402 通过 Base 或 Solana 上的 USDC 结算,但 RobotBase 不提供 Base 或 Solana 链数据:这 8 个数据工具已于 2026-10-18 下线,目前支持的链为 Bitcoin、Ethereum、Monero、Zcash 和 Tron。

每个按量计费的响应都会附带自己的 _metering 区块(额度、重置时间、剩余调用次数);本地验证失败的调用——例如地址或 txid 格式错误——不会消耗额度。超出免费额度后,工具会返回 Payment Required,并提供充值页面链接,而不是返回不完整结果。

无需 API 密钥、账户或订阅——自 2026-10-16 起,付费套餐仅支持通过 x402 进行机器支付。免费额度用尽后,工具会返回 402 Payment Required,并在 structuredContent.accepts[] 中提供完整的机器可读条款。Agent 结算一个额度包(在 Base 上使用 EIP-3009,在 Solana 上使用签名转账),之后每次调用都在 params._meta["x402/payment"] 中重新发送同一支付负载:每个支付 nonce 只结算一次,因此不会对该负载重复收费——每次调用只会扣除一个额度,直至额度包用完。购买新的额度包即可继续使用。

两个网络的重放机制相同。对于 Solana,支付负载中只包含已签名的交易,因此服务器会根据交易哈希从已结算付款账本中找回付款方——绝不会重新模拟已上链的交易。

x402 支付层(开源)

x402_pay.py 是完整的付费层实现,随本仓库一同提供。它仅使用标准库——通过 HTTP 与你的协调服务通信,并维护一个 sqlite 账本。它绝不会接触私钥,也不会提交交易。

它的功能:

组成部分行为
402 挑战structuredContent.accepts[] 列出每种网络/资产/套餐组合;其中 Solana 使用 extra.feePayer,EIP-3009 使用 EIP-712 域
结算针对每个支付 nonce,在你的协调服务上依次调用 POST /verify 和 POST /settle
额度已结算的套餐会为付款方地址增加 calls 次调用额度;套餐按次扣减
重放客户端重新发送相同的负载;账本会直接处理该请求,因此不会重复模拟或结算(EVM 和 Solana 均如此)
重试安全5 分钟内,同一付款方对同一工具使用相同参数时,会返回缓存的答案,并设置 charged_this_call=false
余额GET /credits?payer=<address> 会返回剩余额度、已扣费的调用次数、最近一次支付以及当前套餐列表
额度耗尽工具会返回 PaymentRequired/insufficient_credit,而不是不完整的结果
故障安全工具在本地验证失败时会返回 _no_charge,因此错误参数不会消耗额度
并发spend() 会执行单次原子 UPDATE ... WHERE balance>0;余额不会变成负数
对账如果结算响应丢失,系统会先在链上检查 EIP-3009 authorizationState,再重新记入额度

完全通过环境变量启用(见 examples/x402.env.example):

export RB_X402_ENABLED=1
export RB_X402_FACILITATOR_URL=https://facilitator.example
export RB_X402_OPTIONS='[{"network":"eip155:8453","asset":"0x…","pay_to":"0x…","decimals":6, …}]'
export RB_X402_PACKS='[{"amount_atomic":"100000","calls":10,"label":"10 calls"}]'
export RB_X402_LEDGER_DB=./x402_credit.db
python3 server.py

如果未设置这些变量,服务端只会运行免费层。本仓库提供了 45 个链/Web 工具作为参考实现——与托管端点的唯一区别在于各链后端的指向(使用你的 RB_* 变量,而不是我们的变量),以及托管端专有的 CyberLibrary 桥接(16 个图书工具)和另外 15 个 Web 工具(截图、地图、批处理、信息流、元数据、爬取、提取、操作、extract_schema、差异比较、异步爬取、爬取任务、设置监控、监控列表、删除监控);这些都不包含在本仓库中。

无需消耗调用即可查看付款方的余额:

GET https://robotbase.cc/mcp/credits?payer=<the address that paid>
→ { "found": true, "credits_remaining": 19, "calls_charged": 1,
    "last_payment": { … }, "packs": [ … ] }

EVM 地址不区分大小写;这里不进行身份验证,因为余额是根据公开的链上支付记录计算得出的。

连接(3 行)

{
  "mcpServers": {
    "robotbase": { "url": "https://robotbase.cc/mcp" }
  }
}

支持 Claude Desktop、Cursor、VS Code(远程 MCP)以及任何支持 Streamable HTTP(2025-06-18)的 MCP 客户端。无需 API 密钥。

curl -s https://robotbase.cc/mcp -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
       "params":{"name":"btc_get_fee_rates","arguments":{}}}'

工具(45 个——参考实现)

公开列表顺序为先 Web 工具,再高频验证工具(即 tools/list 和 server.json 返回的顺序);托管端点会将其 16 个 CyberLibrary 工具放在最后。

托管端点 https://robotbase.cc/mcp 有 79 个工具:这 45 个工具,加上 3 个免费的 XMR 钱包/商家工具、16 个 CyberLibrary 图书工具(cyberlibrary_catalog_index、cyberlibrary_language_shard、cyberlibrary_book_meta、cyberlibrary_get_toc、cyberlibrary_get_chapter、cyberlibrary_get_markdown、cyberlibrary_cite、cyberlibrary_search_books、cyberlibrary_fulltext_search、cyberlibrary_service_info、cyberlibrary_get_chunks、cyberlibrary_verify_quote、cyberlibrary_search_passages、cyberlibrary_rag_context、cyberlibrary_semantic_search、cyberlibrary_search)、12 个额外的 Web 工具(web_screenshot、web_map、web_fetch_batch、web_feed、web_metadata、web_crawl、web_extract、web_act、web_extract_schema、web_diff、web_crawl_async、web_crawl_job)以及 3 个定时监控工具(web_monitor_set、web_monitor_list、web_monitor_delete)。

Web 工具(高频)

托管端点提供 十七个 Web 工具:web_search、web_fetch、web_screenshot、 web_map、web_fetch_batch、web_feed、web_metadata、web_crawl、web_extract、web_act、 web_extract_schema、web_diff、web_crawl_async、web_crawl_job、web_monitor_set、 web_monitor_list 和 web_monitor_delete。此参考实现提供前两个,其余十五个仅托管提供。它们在公开的 tools/list 顺序中列在最前。

两个通用 Web 工具与链上功能并列。它们是 Agent 在验证之前使用的入口:搜索实时 Web,阅读看起来最权威的页面,然后在链上核查相关说法。调用它们无需 API 密钥。

工具功能典型问题
web_search(query, count?, freshness?, site?, lang?)带有标题、URL、摘要和发布日期的排序 Web 结果。Serper 是主要提供商,Tavily、Brave 和无需密钥的 cn.bing RSS 源作为备用;答案中包含 provider 字段。结果会去重(单个域名所占结果集比例不能超过约 40%),并缓存最多 10 分钟“今天 BTC 费用市场有什么动向?”“近期有哪些 Zcash 治理提案?”
web_fetch(url, max_chars?, format?)读取一个公开 URL 的可读文本/Markdown:首先检查 robots.txt,然后由标准库提取器移除 scripts/nav/header/footer。优先尝试直接获取;无法由此节点访问的页面则通过提供商备用方案获取,并标记为 source=provider。每次调用的响应上限为 12,000 个字符“阅读这篇文章并总结”“将此 URL 转换为简洁的 Markdown”

共享免费额度:这两个 Web 工具共用每个 IP 每天 100 次调用,额度池与每天 5 次的风险工具额度分开——搜索绝不会消耗风险工具的免费调用次数。缓存命中的搜索仍计为一次免费额度调用;付费调用若由缓存响应,则不会消耗额度。超出额度后,每次调用消耗 1 个 x402 额度($0.01),从与风险工具共用的 USDC 额度余额中扣除。

限制:web_fetch 只读取一个公开 URL,不会批量读取或读取整个网站;它不会登录、突破付费墙、遵循 noindex 规避手段,也不会绕过 robots.txt。所有获取操作均受 SSRF 防护:仅允许 http/https,仅允许 80/443 端口;拒绝私有、环回、链路本地、保留和 CGNAT 地址;每次重定向都会重新验证;解析出的 IP 会固定用于连接;响应正文上限为 2 MB。审计记录不保存查询字符串或 URL,只保存工具名称、延迟、结果和截断后的 IP 哈希。

**提供商配置(可选)。**参考实现仅使用标准库。设置 RB_SERPER_KEY 以使用主要搜索提供商,也可设置 RB_TAVILY_KEY / RB_BRAVE_KEY 以配置备用链(cn.bing RSS 无需密钥)。设置 RB_TAVILY_DAILY_CREDITS(默认值为 15)以限制 Tavily 每日额度,并设置 RB_SERPER_DAILY_CALLS(默认值为 200)以限制 Serper 调用次数。若未设置任何提供商密钥,web_search 会降级为无需密钥的 cn.bing RSS 源,而 web_fetch 仍可用于直接访问的页面。

链上验证工具
工具功能典型问题
list_chains名单中的所有链及其状态(live|provisioning|planned)和可用性“你们支持哪些链?它们在线吗?”
chain_status(chain)节点高度、同步进度、节点数、内存池、版本(btc|eth|xmr|zec|tron)“Monero 节点同步了吗?”
robotbase_capabilities各节点能够和无法回答的问题,包括修剪/保留限制“还能读取那么久以前的数据吗?”
robotbase_services网关级服务健康状态“全面检查一下健康状态”
btc_get_fee_rates1/2/3/6/12/24 个区块目标的费用及内存池最低费用,单位为 sat/vB“现在应该支付多少手续费?”
btc_get_mempool_state内存池深度、容量负载、最低费用、总手续费及拥堵/正常判定“Bitcoin 现在拥堵吗?”
btc_get_transaction(txid)BTC 交易:确认数、区块、输入/输出摘要“这笔付款真的结算了吗?”
btc_get_block(height|blockhash)区块摘要(默认为链顶端)“最新区块里有多少笔交易?”
btc_get_network_stats难度、算力、交易总数和当前每秒交易数、客户端、节点数、中继费用、运行时间、已同步索引“有多少算力在保护 Bitcoin 网络?”
btc_get_address(address)余额、UTXO、交易数、近期交易(P2PKH/P2SH/bech32/bech32m)“这个地址里有多少 BTC?”
broadcast_raw_transaction通过我们自己的节点中继已签名的 BTC 交易(先执行 testmempoolaccept;需操作员授权)“帮我广播这笔已签名交易”
eth_get_transaction(txid)ETH 交易:状态、Gas、费用、确认数、是否已最终确认,以及从收据日志解码的 ERC-20 转账,并解析代币自身的小数位数“这笔 ETH 或 USDT/USDC 付款结算了吗?”
eth_get_fee_rates基础费用(当前和下一区块)、优先费百分位数,以及普通转账和 ERC-20 转账的费用估算“我的 Ethereum 交易要花多少钱?”
eth_get_account(address)ETH 余额、nonce,以及该地址是否为合约“这是 EOA 还是合约?”
eth_get_block(height?|block_hash?)按编号、标签(latest/finalized/safe)或哈希查询区块:交易、已用 Gas 与 Gas 上限、基础费用、构建者“Ethereum 现在有多满?”
eth_get_logs(from?, to?, address?, topic0?)查询范围内的事件日志,并解码 ERC-20 转账;查询结果超出节点上限时会自动缩小范围“过去 N 个区块里,谁转移了这个代币?”
eth_read_contract(contract, function, argument?)在我们自己的 Reth 节点上执行只读 eth_call:balanceOf、allowance、decimals、symbol、name、totalSupply 或任何原始选择器“这个地址有多少 USDT?”
tron_get_node_statusTron 节点:链顶端高度、最终确认(solidity)高度及滞后、节点数、客户端版本、链顶端区块中的交易数“Tron 节点同步了吗?”
tron_get_current_block正在生成的区块:编号、ID、按合约类型统计的交易数、出块见证人“Tron 现在有多繁忙?”
tron_get_block(height|block_id)单个区块:生产者、时间戳、按类型统计的交易数、交易 ID“87,147,698 号区块里有什么?”
tron_list_proposals(limit?)治理提案:ID、提案者、状态、赞成票,以及提案将更改的参数“有待处理的链参数变更吗?”
tron_get_transaction(txid)单笔交易:成功/已回滚、已用 Energy、确认数、是否已在 solidity 上最终确认,以及从收据日志解码的 TRC-20 转账(代币、发送方、接收方、金额)“这笔 USDT 付款到账了吗?金额是多少?”
tron_get_account(address)TRX 余额、激活状态、Energy 和带宽、见证人标记、账户使用年限“这个地址里有多少 TRX?”
tron_get_contract(address)是否已发布 ABI、名称、创建者、函数列表、代码哈希、TRC-20 检测结果“这个合约已验证吗?”
tron_read_contract(contract, function, argument)由我们自己的节点执行只读常量调用——balanceOf、allowance、decimals、symbol、name、totalSupply 或任何原始选择器。无需密钥,也不会更改状态“这个地址有多少 USDT?”
tron_get_chain_economicsEnergy 价格(sun/单位)、交易费用、账户创建费用、每区块见证人报酬、Energy/带宽限制、下次维护时间“TRC-20 转账要花多少 TRX?”
tron_list_witnesses(limit)超级代表:已生产区块数、错过的区块数、投票数、网站“谁在生产 Tron 区块?”
xmr_get_node_statusMonero 节点:实际最后区块高度、同步标记、难度、交易池、数据库大小、monerod 版本、节点数“Monero 节点同步了吗?”
xmr_get_fee_rates从我们自己的节点读取的各优先级费用估算,按每 kB 计费并从低到高排列“我的 XMR 交易需要多少手续费?”
xmr_get_mempool_state待处理交易数、总字节数和费用、最早待处理交易的时间、双花/失败交易数“Monero 现在拥堵吗?”
xmr_get_block(height|block_hash)单个区块头:时间、交易数、奖励、难度、权重、协议版本“3,784,931 号区块里有什么?”
xmr_get_recent_blocks(n)近期区块,以及观测到的区块间隔与 120 秒目标的对比“XMR 区块运行正常吗?”
xmr_get_output_distribution(from?, to?)按环大小分组的可花费输出数——Monero 匿名集的一面。仅提供原始计数,绝不会给出“隐私评分”。数据比链顶端滞后约 5,000 个区块,并会注明这一点“可花费输出集有多大?”
xmr_get_transaction(txid)该 txid 是否已挖出、所在区块、确认数、大小、输出、环大小。金额/发送方/接收方会标记为协议未披露——Monero 按设计隐藏这些信息,任何第三方都无法还原“我的 XMR 转账挖出了吗?”
xmr_get_network_stats网络算力、难度、过去 720 个区块的发行量和费用、协议版本、下一次硬分叉“有多少算力在保护 Monero 网络?”
xmr_verify_payment(txid, address, tx_key|signature)Monero 付款的加密验证:提供 txid,以及你自己的钱包生成的交易密钥(get_tx_key)或交易证明(get_tx_proof),即可验证交易是否确实向该地址付款、金额多少以及确认数。此功能运行在 RobotBase 自有的 monero-wallet-rpc 实例上(独立服务、独立凭据、空钱包——不含资金,也不含接收密钥)“这笔 XMR 付款真的到账了吗?”
zec_get_pool_statusZcash 节点状态,以及全部六种价值池(transparent/sprout/sapling/orchard/ironwood/lockbox)及其 1 小时/24 小时变化“有多少 ZEC 处于屏蔽状态?数量在增加吗?”
zec_get_recent_blocks(n)近期 Zcash 区块“ZEC 区块运行正常吗?”
zec_get_network_stats内存池、节点版本、难度、算力、链进度、区块奖励、资金流(ZCG)和 lockbox“有多少算力在保护 Zcash 网络?补贴流向哪里?”
zec_get_treestate(block_hash?|height?)区块上的 Sapling/Orchard/Ironwood 屏蔽承诺树锚定根“屏蔽集合如何增长?”
zec_get_transaction(txid)ZEC 交易:确认数、区块、是否位于活动链,以及透明与屏蔽部分的金额。屏蔽金额/参与方会标记为协议未披露“这笔 ZEC 付款到账了吗?”
风险情报(按量计费)

两个工具可以回答免费区块浏览器无法回答的问题。它们聚合经我们自有中间层处理的公开数据集;TRON 结算检查会在数据保留期限内读取我们自己的节点,并对更早的交易回退到 TronGrid。

工具功能典型问题
tron_check_address_risk(address)TRC-20 交易对手筛查:司法/黑市/混币器/钓鱼标签、账户激活状态和使用时长、0-100 安全评分,以及明确列出的 not_covered 项“从这个地址接收 USDT 安全吗?”
tron_verify_usdt_transfer(txid, expected_to?, expected_amount_usdt?)USDT 结算检查:是否已在 solidity 链上最终确认、确认数、金额、发送方、接收方,并与预期值进行比对。在约 6 天的窗口期内读取我们自己的 Tron 节点(亚秒级响应,不涉及第三方);对更早的交易则回退到 TronGrid——source 会说明由哪一方响应,本地未查到时绝不会报告为“未找到”“这笔 USDT 付款是否已到账、不可撤销,且金额正确?”

Base 和 Solana 是支付通道,而非数据服务。 x402 使用 Base 或 Solana 上的 USDC 进行结算;Base/Solana 链上数据工具已于 2026-10-18 停用,且不会查询外部 RPC 获取链上数据。

每个工具都会返回 risk_level、0-100 的 safety_score、据以得出的上游标记原文、not_covered 项列表和免责声明——它只转述公开标签,不形成任何法律意见。对于发行方支持的代币(受监管的稳定币),系统将其视为发行方控制,而非跑路风险信号,并会在响应中说明这一判断。

有一点值得明确说明:RobotBase 不会索引 Monero 交易、钱包或环签名,也不会为 Bitcoin 地址打标签或评定风险分数。节点无法回答时,工具会如实说明,而不是猜测。

超越通用读取器

大多数 MCP 服务都只是封装第三方 API。这些工具来自我们运营的基础设施,因此很难在其他地方找到:

  1. 结算验证 — btc_get_transaction / btc_get_block / btc_get_address 基于我们自己的 txindex 节点,回答 Agent 在收到付款已完成的声明后首先会提出的问题。
  2. 手续费和内存池预言机 — btc_get_fee_rates + btc_get_mempool_state 回答第二个问题:下一笔交易需要多少费用,以及现在是否是合适的时机。
  3. 本地索引 — zec_get_pool_status 读取我们自己的 Zebra 节点和值池索引(包含全部六个池及其变化量),而非公共区块浏览器。
  4. 可选中继 — broadcast_raw_transaction 允许 Agent 在本地签名,并仅将我们用作高可用广播通道;除非运营方设置 RB_ENABLE_BROADCAST=1,否则此功能默认禁用。

架构

   AI Agent (Claude / Cursor / VS Code / custom)
            │  HTTPS · MCP Streamable HTTP (2025-06-18)
            ▼
   https://robotbase.cc/mcp          ← hosted, no auth required
            │
            ▼
   MCP server (dependency-free Python, this repo)
            ├── BTC  : Bitcoin Core RPC + electrs (address/tx index)
            ├── ETH  : Reth (execution) + Lighthouse (consensus)
            ├── XMR  : monerod JSON-RPC (node telemetry only)
            ├── ZEC  : Zebra RPC (valuePools → shielded-pool supply)
            ├── TRON : java-tron lite full node (tip state + a ~6 day window)
            ├── meta : gateway service aggregation
            └── web  : Serper / Tavily / Brave / cn.bing RSS search (optional keys),
                       direct fetch + standard-library extraction, Tavily /extract fallback

隐私与限制

  • 完全无需身份验证 — robotbase.cc 不会发放 API 密钥,发送 X-API-Key 也不会有任何影响。
  • 每个 IP 每分钟 120 次请求,仅有一个档位(响应头 X-MCP-Plan / X-RateLimit-Limit)。付费访问使用 x402 额度,但不会提高每 IP 的速率限制。
  • 审计记录只存储截断后的客户端 IP 的 SHA-256——绝不存储查询参数。
  • 只读:不提供交易、签名、托管或写入方法。BTC 交易通过 txindex 查询。
  • 每次调用的响应会裁剪至约 3.8 KB,以保护大模型上下文;web_fetch 除外(最多 12,000 个字符),因为它的全部用途就是返回网页文本。
  • Web 工具除每 IP 每分钟 120 次的总体限制外,还额外受每 IP 每分钟 20 次请求的限制;其免费额度(14 个按量计费的 Web 工具共享,每 IP 每天 100 次调用)单独跟踪。

自托管(此仓库)

server.py 是一个无依赖的参考实现,可连接到你自己的节点。使用环境变量配置所有内容:

export RB_BIND=0.0.0.0            # bind address (default 127.0.0.1)
export RB_PORT=8090               # listen port
export RB_BTC_RPC_URL=http://127.0.0.1:8332
export RB_BTC_RPC_USER=rpcuser
export RB_BTC_RPC_PASS=...
export RB_BTC_DASHBOARD=http://127.0.0.1:8600            # optional: /api/node used by chain_status(btc)
export RB_ELECTRS_HOST=127.0.0.1  # electrs for btc_get_address
export RB_ELECTRS_PORT=50001
export RB_ZEC_BASE=http://127.0.0.1:8080                  # status API with /api/chaininfo
export RB_XMR_HELPER=http://127.0.0.1:18085/rpc           # monerod JSON-RPC (xmr_get_node_status)
export RB_HOME_BASE=http://127.0.0.1:8081                 # gateway aggregation: /api/nodes (eth + xmr telemetry) /api/services
export RB_USAGE_DB=./usage.db                             # optional usage audit
export RB_BILLING_DB=./billing.db                         # deprecated: API-key verification (no keys are issued since 2026-10-16)
export RB_RISK_DB=./risk_quota.db                         # optional: daily risk-tool allowance bookkeeping
export RB_WEB_CACHE_DB=./web_cache.db                     # optional: web result cache + web quota/spend tables
# web tools: no key is required. Optional provider keys buy quality/reliability:
export RB_SERPER_KEY=...                                  # primary search provider (best results)
export RB_TAVILY_KEY=...                                  # fallback search + fetch-extract fallback
export RB_BRAVE_KEY=...                                   # optional extra search fallback
export RB_SERPER_DAILY_CALLS=200                          # optional: daily Serper call cap
export RB_TAVILY_DAILY_CREDITS=15                         # optional: daily Tavily credit cap
export RB_WEB_FREE=100                                    # optional: per-IP free web allowance (shared by web tools)
export RB_WEB_GLOBAL=2000                                 # optional: site-wide free web cap
export RB_WEB_DAILY_BUDGET_USD=5                          # optional: daily upstream spend breaker
export RB_WEB_TRUNCATE=12000 RB_WEB_CACHE_MAX_MB=100      # optional: web_fetch cap / cache cap
export RB_WEB_UA='RobotBaseMCP/0.25.2 (+https://robotbase.cc/mcp)'  # optional: crawler User-Agent
# optional paid tier — see examples/x402.env.example for the full list
export RB_X402_ENABLED=1
export RB_X402_FACILITATOR_URL=https://facilitator.example
export RB_X402_OPTIONS='[ … ]'
export RB_X402_PACKS='[ … ]'
export RB_X402_LEDGER_DB=./x402_credit.db
python3 server.py

客户端配置请参阅 examples/,节点变量请参阅 examples/env.example,支付变量请参阅 examples/x402.env.example。服务器自身提供的端点:/(文档)、/tools(工具列表 JSON)、/server.json(服务器卡片)、/stats(使用情况审计)、/healthz。

参考实现历史

  • 2026-10-20 — v0.27.0:10 个托管 Web 工具现在共用每个 IP 每天 100 次调用(此前为 web_search 20 次,其他 9 个工具共用 50 次);参考实现的 2 个 Web 工具也采用相同的共享 100 次策略。付费积分、风险/知识库每天 5 次的限额以及其他所有条款均保持不变。
  • 2026-10-23 — v0.32.0:将托管服务拆分为 3 个 MCP 版本,每个版本均包含 17 个 Web 工具:Web3 65 个(保留 ZEC;预测/加密趋势)、Dev 18 个(dev_trending + Web)、Content 35 个(CyberLibrary + 社交/注意力 + Web)。Official Registry 现在分别列出 robotbase-mcp(Web3 别名)、robotbase-dev 和 robotbase-content。每个版本的免费 Web 配额为每个 IP 每天 100 次;x402 积分余额共用。
  • 2026-10-23 — v0.31.1:web_monitor_list 新增单监控项模式——传入 monitor_id,即可获取该监控项以及 last_event.diff(最近检测到的变更,最多 4000 个字符),让没有 webhook 的 Agent 也能读取变更内容;设置 include_diff=false 可省略此项。已通过托管端点和真实的公共 HTTPS webhook 接收端完成端到端验证(投递 status=200),并在隔离实例中验证(RB_MONITOR_MIN_INTERVAL_S=5)。工具数量不变:托管版 79 个 / 参考实现 45 个。
  • 2026-10-23 — v0.31.0:托管版增至 79 个工具(44 个免费验证 + 2 个风险 + 16 个 CyberLibrary + 17 个 Web:14 个计量工具 + 3 个免费辅助工具——web_crawl_job、web_monitor_list、web_monitor_delete),新增 web_monitor_set、web_monitor_list 和 web_monitor_delete,用于定时监控页面变更,并可选使用 HMAC-SHA256 webhook;参考实现仍为 45 个工具。工具总数 79 个,计量工具 32 个。Registry/Glama/Smithery 元数据已与托管版同步。
  • 2026-10-23 — v0.30.0:托管版增至 76 个工具(44 个免费验证 + 2 个风险 + 16 个 CyberLibrary + 14 个 Web),新增 web_extract_schema、web_diff、web_crawl_async 和 web_crawl_job;参考实现仍为 45 个工具。Registry/Glama/Smithery 元数据已与托管版同步。
  • 2026-10-20 — v0.26.0:公开工具的排序现在优先展示 Web 工具和高频工具(tools/list、server.json、README 表格);托管端点仍为 72 个工具(44 个免费 + 2 个风险 + 16 个 CyberLibrary + 10 个 Web),参考实现仍为 45 个工具。
  • 2026-10-19 — v0.25.2:托管版增至 72 个工具(10 个 Web 工具,包括 web_crawl/web_extract/web_act 和 OCR;web_search 主要使用可自托管的 SearXNG;16 个 CyberLibrary 工具)。此版本还将已在托管服务中发布的缺陷修复(v0.22.0/v0.22.1)移植到这个包含 45 个工具的参考实现中。主要更新:支持 JSON 安全截断(超过传输上限的响应仍保持有效 JSON,并包含 _truncated / _original_chars 元数据,不再从对象中间截断);bech32m/BIP350 witness-v1+ 和 base58check 地址验证;Zcash Ironwood 屏蔽池核算;eth_read_contract 原始选择器和 ABI 参数前缀处理(不再因静默执行 lstrip("0x") 而破坏数据);TRON 合约回滚检测、通过 getcontract 检查 has_code、USDT 判定终态拆分、确认数差一错误修复、风险地址 base58 校验和 + 41 位十六进制验证及未激活账户覆盖说明;所有工具统一使用 isError;严格的批处理/HTTP 处理(批处理元素验证、DELETE/PUT/HEAD 返回 405、请求体上限返回 413、Content-Type 返回 415、路径返回 404、完整 CORS 预检、通过 X-Real-IP 获取可信客户端 IP、429 响应包含 Retry-After);tools/list 中的工具 title + 注解(readOnlyHint 等)以及 additionalProperties 规范化;web_fetch 的 max_chars 上限/预算,以及直接传递 HTTP 4xx 响应,而不是静默回退到其他提供方;根据实际链上最新高度动态计算 XMR 输出分布延迟;Monero 证明检查错误语义;以及基于 eth_feeHistory 百分位数估算费用(转账使用 p50 小费,ERC-20 转账使用 p90),而非使用为零的 eth_maxPriorityFeePerGas。server.json、mcp-registry.json 和 smithery.yaml 中的版本字段也相应更新;glama.json 不包含版本字段。

许可证

MIT — 详见 LICENSE。


RobotBase · 面向 Web3 Agent 的验证与风险情报 · https://robotbase.cc/

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。