mcpField
O
OneSource MCP

OneSource MCP

本地服务
mcp.onesource.io金融数据02 天前更新

关于 OneSource MCP

OneSource MCP 将 OneSource 的区块链数据、链上查询、Deepstate 市场数据和 The Standard Reserve 数据及 API 文档提供给 MCP 客户端,适用于需要通过 AI 工具查询这些信息的用户。它集成了实时链上读取、市场分析和协议状态查询工具。

主要功能

  1. 01实时区块链与 RPC 查询
  2. 02Deepstate 订单簿及交易数据
  3. 03The Standard Reserve 协议数据
  4. 04支付模式与退款工具
  5. 05REST API 文档查询

适用场景

  1. 01查询代币余额和交易详情
  2. 02检查链上市场订单与价格数据
  3. 03分析 The Standard Reserve 状态
  4. 04通过 MCP 客户端调用 OneSource 数据

MCP 相关

该 MCP 服务向 MCP 客户端提供 OneSource 区块链 API 和文档工具。支持 stdio,也可通过 HTTP 模式连接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"io-onesource": {
"command": "npx",
"args": [
"-y",
"@one-source/mcp"
],
"env": {
"X402_PRIVATE_KEY": "<X402_PRIVATE_KEY>",
"ONESOURCE_API_KEY": "<ONESOURCE_API_KEY>"
}
}
}
}
启动命令npx -y @one-source/mcp
需要配置的环境变量
X402_PRIVATE_KEY密钥EVM private key (64-char hex, 0x prefix optional) for automatic x402 USDC payments on Base
ONESOURCE_API_KEY密钥OneSource API key for Bearer token auth

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@one-source/mcp5.24.0

工具

97

收录的工具列表 · 更新于 2 天前

参数类型必填说明
ownerstring是代币所有者地址
tokenstring是ERC20 代币合约地址
networkenum否区块链网络。"ethereum"(默认,区块时间约为 12 秒,支持 ENS 和公共内存池)、"sepolia"(Ethereum 测试网)或 "robinhood"(Robinhood Chain,链 ID 为 4663——一个结算到 Ethereum 的 Arbitrum Orbit L2,区块时间约为 100 毫秒,不支持 ENS 或公共内存池,仅支持实时 RPC,因此无法使用索引端点)。在确定区块范围大小或解读 pending/finalized 前,先调用 1s_network_info 了解链的特性。ethereum | sepolia | robinhood
spenderstring是已批准的 spender 地址

详细介绍

@one-source/mcp

适用于 OneSource 的统一 MCP 服务 — 在单个服务中提供 91 个工具,涵盖区块链数据、实时链上查询、Deepstate 市场数据、The Standard Reserve 和 REST API 文档。

什么是 MCP? Model Context Protocol 可让 AI 助手调用工具并访问数据源。此服务将 OneSource 区块链 API 及其文档作为工具提供。

快速开始

Claude Code
claude mcp add onesource -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor

添加到 MCP 配置中:

{
  "mcpServers": {
    "onesource": {
      "command": "npx",
      "args": ["-y", "@one-source/mcp@latest"]
    }
  }
}
任意 MCP 客户端(stdio)
npx -y @one-source/mcp@latest
HTTP 服务(可自托管)
npx -y @one-source/mcp@latest --http
npx -y @one-source/mcp@latest --http --port=8080

然后将 MCP 客户端连接到 http://localhost:3000/(或你的 --port 值,例如上方第二个示例中的 8080)。

运行状况检查:GET http://localhost:3000/health(替换为你的端口)。

工具(97 个)

区块链 API — 实时链上数据(12 个工具)
工具描述
1s_allowance_live检查 ERC20 授权额度
1s_contract_info_live通过 ERC165 检测合约类型
1s_erc1155_balance_live通过 RPC 查询 ERC1155 余额
1s_erc20_balance_live通过 balanceOf 查询 ERC20 余额
1s_erc20_transfers_live通过 eth_getLogs 查询 ERC20 Transfer 日志
1s_erc721_tokens_liveERC721 代币枚举
1s_events_live通过 eth_getLogs 查询事件日志
1s_multi_balance_liveETH + 多种 ERC20 余额
1s_nft_metadata_live通过 tokenURI 查询 NFT 元数据
1s_nft_owner_live通过 ownerOf 查询 NFT 所有者
1s_total_supply_live代币总供应量
1s_tx_details_live通过 RPC 查询交易 + 收据
区块链 API — 链上实用工具(13 个工具)

仅限 RPC。

工具描述
1s_block_by_number通过 RPC 按区块编号查询区块详情
1s_block_number最新区块编号
1s_chain_idEIP-155 链 ID
1s_contract_code合约字节码
1s_ens_resolveENS 名称/地址解析
1s_estimate_gasGas 估算
1s_network_info链 ID、区块编号、Gas 价格
1s_nonce交易计数
1s_pending_block来自内存池的待处理区块
1s_proxy_detect代理合约检测
1s_simulate_call模拟 eth_call
1s_storage_read读取存储槽
1s_tx_receipt交易收据
支付(2 个工具)
工具描述
1s_payment_mode查看或切换四种模式下的支付通道 + 方案:x402-exact / x402-batch(Base 上的 USDC)和 mpp-charge / mpp-session(Tempo 上的 USDC.e / pathUSD)。batch 和 session 会开启一个可为多次调用提供资金的通道。
1s_refund按需取回开放支付通道中未使用的存款 — 适用于 x402 batch 通道(Base)和 MPP session 凭证通道(Tempo)
Deepstate 市场数据(10 个工具)

Deepstate 是 Robinhood Chain(链 ID 为 4663)上的链上订单簿协议。这些工具用于读取市场数据,包括订单簿、交易、K 线、统计数据、做市商分析以及 Gas/深度分析。它们是同一 API 上的普通工具,不需要 network 参数——始终使用 Robinhood Chain——并且与其他所有工具一样需要付费:使用 API 密钥、x402 或 MPP。自 DGP-3 迁移(2026-09-22)以来,做市商奖励按市场发放,而非单一固定代币——请始终查看 1s_ds_markets 中某个市场的 reward_token,不要默认它是 DEEP。

工具描述
1s_ds_markets列出此 API 提供的 Deepstate 市场(订单簿),包括每个市场的 slug、代币布局、池/路由器地址、status 和 reward_token
1s_ds_book市场的订单簿快照——买单按价格降序排列,卖单按价格升序排列,并显示每个价位的挂单数量
1s_ds_trades市场的交易记录,按时间从新到旧排列——包含每笔成交的价格、数量、方向和区块
1s_ds_candles指定时间周期的市场 OHLCV K 线
1s_ds_stats市场滚动 24 小时/7 天/30 天的交易量和价格变动,以及最新成交价
1s_ds_makers市场的做市商分析数据——订单簿顶部的停留时间、挂单名义金额、成交次数/频率,以及已赚取的做市商奖励(奖励代币按市场确定——请参阅 1s_ds_markets 中的 reward_token)
1s_ds_cost_to_quote市场挂单和撤单所消耗的 Gas,按时间分组
1s_ds_depth_history市场深度热力图——随时间变化的各价位挂单数量
1s_ds_token_2deep2DEEP 的供应量、上限、流通量、奖励池和捐赠基金余额、迁移负债以及池价格——链上实时数据
1s_ds_migration自 DGP-3(2026-09-22)以来 DEEP/STATE 兑换为 2DEEP 的进度:总量、数量、剩余量和每日序列

除 1s_ds_markets 外,每个 Deepstate 工具都需要 book 参数:市场的规范大写 slug(例如 NVDA-USDG)或其 32 字节 book_id。请先调用 1s_ds_markets 获取完整列表。

The Standard Reserve(49 个工具)

The Standard Reserve 是 Robinhood Chain(链 ID 为 4663)上的链上中央银行协议。这些工具用于读取 OneSource 索引并提供的已部署合约状态,每个响应都包含 basis、as_of_block 和 serving_state。1s_std_addresses 和 1s_std_genesis_live 免费;此处其他所有工具与本 API 的其余工具一样需要付费:使用 API 密钥、x402 或 MPP。若干工具(1s_std_supply、_vaults、_pool、_exit_pressure、_backing、_policy_current)还接受 atBlock 参数,可读取截至过去某个区块的状态,而非最新状态。

工具描述
1s_std_addressesTSR 合约和池的已验证注册表,每个条目均附有验证状态。免费,无需付款。
1s_std_auction_days许可证或章程拍卖的逐日历史:开盘价/底价/收盘价、已售数量与供应数量、售罄所需时间;许可证日还会列出购买次数、不同章程数、平均和总支付金额,以及每笔交易的购买量分布
1s_std_auction_sales许可证或章程拍卖的近期销售记录,按时间从新到旧排列:买家、单价、数量和区块。可按类型筛选,使用 before/limit 翻页
1s_std_auctions_current每日许可证拍卖和章程拍卖的当前状态:价格、底价、今日已售/剩余数量、阶段和最近一笔销售
1s_std_backing储备支持情况:金库 ETH 余额、储备资产持有量、金库的 Uniswap v4 仓位,以及每个 STANDARD 对应的 ETH 支持额,分为三种口径:仅计入金库 ETH、加上协议自有流动性,以及按储备自身池价计入全部储备资产(USDG 按 $1 计)。可查询当前值、历史记录或指定过去区块的状态
1s_std_branch_auction_liveBranch 许可证拍卖的原始最新状态:阶段、价格、今日已售/剩余数量和近期销售速度
1s_std_branches_doiBranch 许可证拍卖的发行天数,以及立即购买与等待的对比表
1s_std_branches_summaryTSR 活跃 Branch 的汇总:数量、每个 Branch 每日发行量,以及以发行天数计的许可证价格
1s_std_buyback_readiness收缩金库回购刻度的准备情况:本刻度的 ETH 容量、限制因素、冷却时间、TWAP 偏差和近期执行的刻度
1s_std_candlesETH/STANDARD 池的 OHLC 价格蜡烛图,以每个 STANDARD 对应的 ETH 计价,并附有交换次数和交易量。设置 tf 指定蜡烛图宽度(1m 至 1d),设置 from/to 指定时间范围
1s_std_charter按 ID 查询单个章程,或按所有者筛选章程:持有者、Branch 数量、铸造类型、应得产出、Branch 历史、其在一次性章程激励中的份额(所有者可在响应返回的截止日期前领取),以及其在每次 launchpad 章程空投中的份额
1s_std_decision_branch综合查询:现在是否应该购买 Branch/许可证。汇总发行天数、许可证成本与章程拍卖的对比、近期拍卖历史、政策展望、待处理的治理变更,以及某个 Branch 在过去 launchpad 章程空投中获得的收益(历史数据,并非预测)
1s_std_decision_bid综合查询:以此最高价格挂出许可证拍卖买单后,何时可能成交、前面有多少买单和许可证,以及(提供 charter_id 时)该章程待领取的 STANDARD 和额度是否足以满足买单。成交需要任何人另行发送一笔交易;响应会说明这一点并提供测得的成交历史。接受 max_unit_price;count 和 charter_id 为可选参数
1s_std_decision_charter综合查询:现在是否应该买入新章程。汇总章程拍卖状态、成本最低的许可证获取路径、发行天数、支持率、持有人集中度,以及某个 Branch 在过去 launchpad 章程空投中获得的收益(历史数据,并非预测)
1s_std_decision_exit综合查询:现在是否应该退出章程的 Branch。汇总退出报价、费用曲线、费用预测、税费计划、池状态、政策展望、待处理的治理变更、全部退出将放弃的未领取激励,以及关闭后将释放的章程空投,并附有 noteOwner 警告
1s_std_decision_hold综合查询:是否应该继续持有 STANDARD。汇总政策展望、发行余量、待处理的治理变更、税费计划、回购准备情况和休眠状态;无需参数
1s_std_decision_plan在指定期限内模拟三种 Branch 购买策略(保留、择机、积极),除非另行覆盖,否则以实时价格、发行量和许可证成本为初始数据。提供章程 ID 时,会在策略旁边显示 launchpad 空投份额,并将其排除在所有 ETH 结果之外。这是规划工具,并非预测:它绝不会指出哪种策略胜出
1s_std_decision_sbill综合查询:应如何处理此 S-Bill。到期前:现在退出的支付金额、放弃的溢价,以及假设无人退出时未来每一天的退出费用(推导值)。到期后:赎回支付金额和续存将锁定的利率(推导值),并说明不会自动续存。接受 bill_id
1s_std_decision_stake综合查询:现在是否应该将此 STANDARD 存入 S-Bill,还是等待。汇总 S-Bill 报价、按钱包检查的额度、存入后立即退出的费用,以及假设无人再存入时 1h/6h/24h 的利率(推导值)。接受 amount;wallet 为可选参数
1s_std_dormancy已超过可报告休眠期限的钱包,或完整的已追踪钱包列表
1s_std_dormancy_bounties休眠赏金看板:已超过可报告期限的钱包,按预估赏金从高到低排序
1s_std_epochsTSR epoch 历史:每个 epoch 的净流量、信号、机制和发行量。使用 before/limit 翻页
1s_std_events原始解码后的协议事件,可选按 contract_label、event_name、地址、token_id、epoch 或区块/日志游标筛选,并使用 before/limit 翻页
1s_std_exit_fee_curve退出费用如何随提现规模变化:当前费率,以及按总提现额的 1/5/10/25/50/100% 计算的阶梯费率
1s_std_exit_fee_forecast按当前速度推算在没有更多提现时退出费用的逐日变化,另列费用降至最低值所需天数,以及每个已记录的提现日离开费用窗口的准确时刻
1s_std_exit_pressure退出压力读数及相应的结算费率。可查询当前值、历史记录或指定过去区块的状态
1s_std_exit_quote关闭章程未关闭的 Branch 时按比例计算的退出报价,并提供指定区块时可实现的 ETH 估算值
1s_std_flow_charters按发生每次交换时持有章程的钱包分组,列出 ETH/STANDARD 池的买入和卖出。设置 hours 和 limit 指定结果时间范围
1s_std_flow_hourlyETH/STANDARD 池每小时流入和流出的 ETH 量,以及交换次数。设置 hours 指定回溯时长
1s_std_genesis_liveGenesis 荷兰式铸造的最新统计:阶段、已铸造数量、剩余数量、价格和销售速度。免费。
1s_std_governance_changesTSR 追踪的 15 个合约的治理/参数变更历史、当前排队的变更、开关状态和 guardian 暂停状态
1s_std_holders_concentration章程/Branch 所有权集中度:章程分布、主要所有者、HHI(赫芬达尔-赫希曼指数)评分,以及 Genesis 与拍卖群体的划分
1s_std_issuance_runway对比中央银行发行预算列出累计 STANDARD 发行量、当前流速,以及在状态不变情况下预算耗尽时间的预测
1s_std_license_bids在同一个区块读取的许可证拍卖所有挂单:竞标者、数量、最高单价、合约是否可以成交、每笔买单的限制条件、过期或可清理标记,以及推导出的有效交叉价格。可按章程、竞标者或可成交状态筛选并排序
1s_std_license_costBranch 许可证当前的 ETH 成本,以及章程拍卖是否是达到相同结果的更便宜途径
1s_std_license_headroom章程今天还能购买多少张 Branch 许可证,并提供实时单价报价阶梯
1s_std_policy_current当前 epoch 的货币政策:机制、乘数、净流量和双 epoch 信号。可查询当前值或指定过去区块的状态
1s_std_policy_outlook假设当前 epoch 的净流量正负号持续至结束,在状态不变情况下推算政策乘数和发行率
1s_std_poolETH/STANDARD Uniswap v4 池的最新状态:价格、tick、流动性、储备和剩余 launch tax。可查询当前值或指定过去区块的状态
1s_std_protocol_flows按时间从新到旧排列的协议资金流动:持仓迁移、税款转发、费用回收、团队领取、POL 回购、费用和配对、激励发放,以及由多签持有的储备金库流出的资金;同时列出转移资金的方法和用于标示接收方的 to_label。使用 kind 筛选,使用 cursor 翻页
1s_std_sbills_bills按 ID 查询单个 S-Bill,或按所有者或状态筛选 S-Bill:本金、溢价、锁定利率、到期时间和结算方式。单个 S-Bill 查询还会返回实时退出和赎回报价
1s_std_sbills_current当前的 S-Bill 质押条款:各期限的利率及其简单年利率、漂移状态、锁定本金、溢价预算、额度和提前退出费用窗口。利率按期限计算,并非年利率
1s_std_sbills_events解码后的 S-Bill 合约事件,按时间从新到旧排列:存入、提前退出、赎回、续存、结算、奖励分发、利率变更和管理员变更
1s_std_sbills_quote将 STANDARD 质押至 S-Bill 的实时报价:将锁定的利率、托管的溢价、存入后的利率,以及额度或暂停状态是否会阻止操作。直接读取合约数据
1s_std_sbills_rate_historyS-Bill 利率变化记录:每次链上利率变更以及定期漂移采样,并标明当时生效的期限长度
1s_std_supplySTANDARD 供应账目:流通量、累计铸造量、按路径累计销毁量、最大供应量和未领取的章程激励(过去区块的值为 null)。可查询当前值、历史记录或指定过去区块的状态
1s_std_tax_scheduleLaunch tax-hook 计划:当前买入/卖出税、衰减配置,以及 launch 计划生效期间带标签的预测
1s_std_vaults扩张金库和收缩金库余额:持有的 WETH 和 STANDARD、协议自有流动性,以及回购容量。可查询当前值、历史记录或指定过去区块的状态
1s_std_wallet单个钱包持有的所有章程对应的完整 TSR 持仓:待领取收益、退出报价概要、休眠状态、许可证额度、可领取的章程激励,以及可领取和已锁定的章程空投
文档(8 个工具)

无需身份验证。这些工具从服务随附的文档语料库中提供答案,因此不产生费用,即使尚未配置付款方式也能使用。它们与独立的 @one-source/docs-mcp 服务同名,该服务提供相同的语料库。

工具描述
1s_search_docs在 OneSource 开发者文档中按关键词搜索
1s_get_api_overviewREST API 涵盖的内容——操作数量、标签、网络和付款协议
1s_list_endpoints所有 REST 端点及其方法、路径、价格和摘要;可按标签筛选
1s_get_endpoint_reference单个端点的完整信息——参数、请求正文、响应示例、价格和 curl
1s_search_use_cases根据任务的自然语言描述查找合适的端点
1s_list_networksREST API 路由到的网络,以其已发布规范中的声明为准
1s_get_payment_info价格范围、付款渠道和收款地址;指定端点时提供该端点的信息
1s_get_authentication_guide如何向 REST API 进行身份验证,以及应选择哪种方法
设置与运维(3 个工具)

无需身份验证。

工具用途使用时机
1s_setup_check**交互式设置与运行状况检查。**逐项引导用户完成两种付款渠道的所有配置选项(身份验证方法、x402、MPP、付款模式、渠道偏好)——每次运行都会引导,即使已经完成配置;此外还会检查版本、身份验证状态、渠道状态和连接情况首先调用此工具——用于设置、修改配置或排查问题
1s_batch_config查看或更改付款渠道偏好(自主性、阈值、x402 存款倍率、MPP 会话存款上限、默认模式),并将其持久化保存,以便重启后保留——无需编辑配置在会话中配置渠道行为
1s_report_bug向 Slack 报告错误(或在 Slack 不可用时使用 GitHub Issues)工具出错或用户想要报告问题时

网络

所有区块链 API 工具都接受可选的 network 参数:

网络描述
ethereumEthereum 主网(默认)
sepoliaEthereum Sepolia 测试网
robinhoodRobinhood Chain,链 ID 为 4663(Arbitrum Orbit L2)——仅限实时 RPC

身份验证

区块链 API 工具需要身份验证。有三种可用方式——如果同时设置了 API 密钥和钱包密钥,API 密钥将优先使用,钱包密钥会被忽略。

**提示:**配置上述任何方式,最快捷的方法是使用 1s_setup_check 工具——它会逐步引导你完成所有选项,并提供一条可直接运行的命令,因此你无需手动编辑环境变量或配置文件。以下手动说明可供参考。

方法变量说明
API 密钥ONESOURCE_API_KEY调用次数不限,无单次调用费用
x402 微支付X402_PRIVATE_KEY通过 Base 上的 USDC 按次付费,无需账户
MPP 微支付MPP_PRIVATE_KEY通过 Tempo 上的 USDC.e / pathUSD 按次付费,无需账户
选项 1:API 密钥
  1. 前往 app.onesource.io 并创建账户。
  2. 通过 Stripe 结账完成 API 密钥订阅。
  3. 前往 API Keys 并生成密钥。
  4. 复制密钥——它以 sk_ 开头。
Claude Code
claude mcp add onesource -e ONESOURCE_API_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor

将 env 区块添加到 MCP 配置中:

{
  "mcpServers": {
    "onesource": {
      "command": "npx",
      "args": ["-y", "@one-source/mcp@latest"],
      "env": {
        "ONESOURCE_API_KEY": "<key>"
      }
    }
  }
}
任意 MCP 客户端(stdio)
ONESOURCE_API_KEY=<key> npx -y @one-source/mcp@latest

添加后,重新加载 MCP 服务并调用 1s_setup_check——在 Current configuration 下,应显示 Active auth method: API key(并显示密钥的前 6 个字符)。

选项 2:x402 微支付

区块链 API 端点通过 x402 使用 Base 上的 USDC 计价。设置 X402_PRIVATE_KEY 后,服务会自动处理付款——工具调用会自动付费并透明重试,Agent 无需进行任何额外操作。

  1. 获取 EVM 私钥——从 MetaMask、Coinbase Wallet 或任何 EVM 钱包导出,或者生成一个新的私钥。该密钥是 64 个字符的十六进制字符串。0x 前缀可选,两种格式均可接受。
  2. 使用以下任一方法将密钥传递给服务。
  3. 重新加载并查找钱包地址——重新加载 MCP 服务,然后调用 1s_setup_check。在 Current configuration 下会列出 x402 (Base) wallet,即根据你的密钥推导出的地址。
  4. 向该地址充值 Base 上的 USDC——在 Base 网络上,向 1s_setup_check 显示的地址发送 USDC。几美元(1–5 USDC)足以支付数百次调用。如果你的 USDC 在 Ethereum 主网上,可使用 Base Bridge 进行跨链转移。
  5. 验证——调用 1s_network_info,并指定 ethereum。如果返回链数据(区块编号、Gas 价格),则表示 x402 付款已端到端正常运行。
Claude Code
claude mcp add onesource -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor

将 env 区块添加到 MCP 配置中:

{
  "mcpServers": {
    "onesource": {
      "command": "npx",
      "args": ["-y", "@one-source/mcp@latest"],
      "env": {
        "X402_PRIVATE_KEY": "<key>"
      }
    }
  }
}
任意 MCP 客户端(stdio)
X402_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
选项 3:MPP 微支付(Tempo)

区块链 API 端点也可通过 MPP 使用 Tempo 网络付款,这是 x402 在 Base 上的替代方案。设置 MPP_PRIVATE_KEY 后,服务会自动处理付款;工具调用会自动付费并透明重试。

  1. 获取 EVM 私钥——格式与 x402 相同(64 个字符的十六进制字符串,0x 前缀可选)。导出一个密钥或生成一个新的密钥。
  2. 使用以下任一方法将密钥传递给服务。
  3. 重新加载并查找钱包地址——重新加载 MCP 服务,然后调用 1s_setup_check。在 Current configuration 下会列出 MPP (Tempo) wallet,即根据你的密钥推导出的地址。
  4. 向该地址充值 Tempo 上的 USDC.e 或 pathUSD——几美元即可支付数百次调用。
  5. 验证——调用 1s_network_info。如果返回链数据,则表示 MPP 付款已端到端正常运行。
Claude Code
claude mcp add onesource -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor
{
  "mcpServers": {
    "onesource": {
      "command": "npx",
      "args": ["-y", "@one-source/mcp@latest"],
      "env": {
        "MPP_PRIVATE_KEY": "<key>"
      }
    }
  }
}
任意 MCP 客户端(stdio)
MPP_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest

默认情况下,MPP 按调用付费(mpp-charge)。如果要连续调用多次,可切换到 Tempo 凭证通道:使用 1s_payment_mode { "mode": "mpp-session" }(或设置 MPP_PAYMENT_MODE=session)——一次存款即可为多次链下调用提供资金;可随时使用 1s_refund 取回未使用的余额,也可在正常关闭时自动结算。

配置文件位置

如果你更愿意直接编辑配置文件,而不是使用 CLI 命令:

客户端配置文件路径
Claude Code运行 claude mcp get onesource 查看文件路径
Claude Desktop(macOS)~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop(Windows)%APPDATA%\Claude\claude_desktop_config.json
Cursor(macOS)~/.cursor/mcp.json
Cursor(Windows)%USERPROFILE%\.cursor\mcp.json

使用上方的 JSON 代码块,在 "mcpServers" 中添加 onesource 条目。

替代方案:设置为环境变量

你可以将以下任一变量设置为 shell 或系统环境变量,以替代 env 配置块:export ONESOURCE_API_KEY=<key>(bash/zsh)或 $env:ONESOURCE_API_KEY = "<key>"(PowerShell)。在操作系统层级设置变量,可使其在不同会话间持久生效。

支付通道(可选)

默认情况下,每次付费调用都会签署一笔支付(Base 上使用 x402-exact,Tempo 上使用 mpp-charge)。如果要连续调用多次,可以开启支付通道——一次链上存款即可为多次链下调用提供资金,并统一结算,相比逐次付费更省钱:

  • x402(Base): 使用 1s_payment_mode { "mode": "x402-batch" } 切换到 x402-batch(或设置 X402_PAYMENT_MODE=batch)。首次调用会存入 price × X402_DEPOSIT_MULTIPLIER(默认值为 10)。
  • MPP(Tempo): 使用 1s_payment_mode { "mode": "mpp-session" } 切换到 mpp-session(或设置 MPP_PAYMENT_MODE=session)。首次调用最多存入 MPP_MAX_DEPOSIT(默认值为 1)。

可随时使用 1s_refund 工具取回未使用的余额(两种支付网络均适用);剩余金额始终可在链上取回。闲置的 x402 通道也会在几小时后自动退款,MPP 会话则会在正常关闭时自动结算。

通过钱包付款时,Agent 启动后会在其系统提示词中收到通道指引,因此它可以代你管理这项操作,无需你手动处理:当 Agent 预计会连续调用多次时,会提议为当前支付网络切换到通道模式,并在结束后提醒你使用 1s_refund。你可以使用 X402_BATCH_PROMPT(ask / auto / off)和 X402_BATCH_THRESHOLD(预计调用多少次算作连续调用;两个支付网络共用此设置)控制其主动程度——请参阅环境变量。1s_setup_check 会报告当前模式、通道是否可用以及所有设置。

安全

切勿将密钥提交到源代码管理中。请使用环境变量、不纳入 git 的 .env 文件,或密钥管理器。

更改任何配置后: 在 Claude Code 中运行 /reload-plugins,或重启 Claude Desktop / Cursor。必须重新加载 MCP 服务,才能读取新的环境变量。

环境变量

必需

设置其中一个即可访问区块链 API 工具。未设置任何密钥时,只能使用无需身份验证的 Setup & Ops 工具。同时设置 API 密钥和钱包密钥时,API 密钥优先。

变量默认值描述
ONESOURCE_API_KEY—用于 Bearer token 身份验证的 OneSource API 密钥。优先于钱包支付通道。
X402_PRIVATE_KEY—用于在 Base 上自动支付 x402 USDC 的 EVM 私钥(64 位十六进制,可选 0x 前缀)。
MPP_PRIVATE_KEY—用于在 Tempo 上自动支付 MPP(USDC.e / pathUSD)的 EVM 私钥。
可选 / 高级

所有配置项都有合理的默认值,支付通道模式开箱即用。仅在需要覆盖端点、调整支付通道模式的行为或修改分析设置时才设置这些配置项。也可以在运行时使用 1s_payment_mode 工具切换支付模式。以下支付通道配置项(X402_PAYMENT_MODE、X402_DEPOSIT_MULTIPLIER、MPP_PAYMENT_MODE、MPP_MAX_DEPOSIT、X402_BATCH_PROMPT、X402_BATCH_THRESHOLD)可在会话中通过 1s_batch_config 工具设置并持久化,无需编辑配置或重启;已保存的配置优先于这些环境变量。

变量默认值描述
ONESOURCE_BASE_URLhttps://api.onesource.ioAPI 基础 URL。
X402_PAYMENT_MODEexact初始 x402 方案:exact(按次支付)或 batch(支付通道)。可在会话中使用 1s_payment_mode 切换。
X402_RPC_URLBase 默认值用于在批量模式下提交支付通道存款的 Base RPC 端点。
X402_DEPOSIT_MULTIPLIER10批量模式:存款 = 价格 × 此倍数,为每个支付通道提供相应次数的调用资金。未使用的余额可通过 1s_refund 取回。
X402_CHANNEL_DIR—用于在重启后保留批量支付通道状态的目录。未设置 = 仅存储在内存中(重启后支付通道会丢失)。
X402_CHANNEL_SALTzero批量模式:用于派生起始支付通道 ID 的 32 字节十六进制盐值。支付通道耗尽或退款后,客户端会自动轮换到下一个盐值。
MPP_PAYMENT_MODEcharge初始 MPP 方案:charge(按次支付)或 session(Tempo 凭证支付通道)。可在会话中使用 1s_payment_mode 切换。
MPP_MAX_DEPOSIT1会话模式:每个 Tempo 凭证支付通道锁定的 USDC.e / pathUSD 最大金额。未使用的余额可通过 1s_refund 取回。
MPP_RPC_URLTempo 默认值用于在会话模式下提交支付通道存款的 Tempo RPC 端点。
X402_BATCH_PROMPTaskAgent 如何处理切换到支付通道模式(适用于两种支付通道):ask(切换前确认)、auto(自动切换)或 off(仅在明确要求时切换)。
X402_BATCH_THRESHOLD5当会话中预期调用次数达到或超过此值时,Agent 会考虑使用支付通道模式(适用于两种支付通道)。此值仅供参考,Agent 会估算调用次数,不会将其作为严格的运行时计数器。
ONESOURCE_CONFIG_DIR~/.onesource存放服务器管理的支付通道配置(batch-config.json)的目录,该配置由 1s_batch_config 写入。
ONESOURCE_ANALYTICStrue设置为 false 可停用分析功能。
ONESOURCE_ANALYTICS_URLhttps://1s-analytics.vercel.app分析功能的仪表板端点。
ONESOURCE_ANALYTICS_KEYonesource-mcp仪表板分析功能的 API 密钥。旧别名 X402_ANALYTICS_KEY 仍可使用,但已弃用。

故障排除

1s_setup_check 显示“Active auth method: none”(区块链工具已锁定) 在 Current configuration 下,“Active auth method: none”表示尚未设置身份验证。设置 ONESOURCE_API_KEY(API 密钥)、X402_PRIVATE_KEY(Base 上的 x402)或 MPP_PRIVATE_KEY(Tempo 上的 MPP)之一;也可以直接运行 1s_setup_check,按提示完成设置。设置任何变量后,都要重新加载 MCP 服务(参见上方说明)。如果密钥仍未传递到服务,请直接将其设置为 shell 环境变量。

设置正确却收到 403 / 使用了错误的密钥 在 shell 配置文件(例如 ~/.zshrc、~/.bash_profile)中设置的密钥,即使没有写入 Claude MCP 配置,也会被 MCP 服务进程读取。在终端中运行 echo $ONESOURCE_API_KEY 进行检查。如果输出的值不是你想要的,可以取消设置(unset ONESOURCE_API_KEY),或在添加服务时显式清除该变量:claude mcp add onesource -e ONESOURCE_API_KEY= -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest。1s_setup_check 会显示当前生效密钥的前 6 个字符,方便你确认服务正在使用哪个密钥。

重新安装后,说明中显示的身份验证方式不正确 在 Claude Code 中运行 /reload-plugins 会重新连接工具,但可能不会刷新大模型看到的系统提示词。如果你切换了身份验证方式(例如从 API 密钥切换到 x402),请完整重启 Claude Code,确保说明反映了新的身份验证方式。

“MCP server onesource already exists”错误 先运行 claude mcp remove onesource,然后使用更新后的配置重新添加。

Windows:npx 需要 cmd /c 包装 Claude Code 的 /doctor 命令可能会对此发出警告。更新 MCP 配置,使用 "command": "cmd" 和 "args": ["/c", "npx", "-y", "@one-source/mcp@latest"]。

**npx 卡住且没有输出** 这是正常的 — stdio 模式会等待从 stdin 输入 JSON-RPC。如果你想要一个可以用 curl 访问的 HTTP 服务,请使用 --http。

端口已被占用 指定其他端口:npx -y @one-source/mcp@latest --http --port=8080

注册表发布

此软件包已列入官方 MCP 注册表,使用经过验证的命名空间 io.onesource/mcp,并已列入 Glama。发布新版本时,请更新这两个注册表。

MCP 注册表
首次设置
1. 安装 Go

从 go.dev/dl 下载适用于你平台的安装程序并运行。验证:

go version
2. 安装 mcp-publisher
go install github.com/modelcontextprotocol/registry/cmd/mcp-publisher@latest

如果 Go 模块路径已更改,导致命令失败,请改为从 mcp-publisher GitHub releases 页面直接下载二进制文件。

在 Windows 上,如果无法识别该命令,请将 Go 的 bin 目录添加到 PATH:

$env:PATH += ";$env:USERPROFILE\go\bin"

验证:

mcp-publisher --help
3. DNS 身份验证(已完成)

onesource.io 域名包含用于证明 io.onesource 命名空间所有权的 DNS TXT 记录。此项已配置完成 — 无需重新设置。

该记录位于根域名(onesource.io,而非 _mcp-registry.onesource.io):

v=MCPv1; k=ed25519; p=7D3U5rufgNXb/lH2MthTRZdDzEGeE7/Jvg8YkiArQc8=

你可以验证其是否能解析:

nslookup -type=TXT onesource.io 8.8.8.8
4. 获取私钥

身份验证需要与 DNS 记录中的公钥对应的 ed25519 私钥,格式为 hex。请向团队负责人索取此密钥 — 它保存在团队的密码管理器 / 密钥库中。

如果需要重新生成密钥对(这会使当前 DNS 记录失效,并需要更新该记录):

  1. 生成新的 ed25519 密钥对(例如,openssl genpkey -algorithm Ed25519 -out key.pem)
  2. 提取原始的 32 字节私钥种子并转换为 hex:
 openssl pkey -in key.pem -outform DER | tail -c 32 | xxd -p -c 32
  1. 提取用于 DNS TXT 记录的 base64 格式公钥:
 openssl pkey -in key.pem -pubout -outform DER | tail -c 32 | base64
  1. 使用新的公钥更新 onesource.io 上的 DNS TXT 记录:
 v=MCPv1; k=ed25519; p=<base64-public-key>
  1. 等待 DNS 传播后再尝试登录。
发布新版本

请使用发布脚本。 通常通过 sre-services 仓库中的协调发布脚本来执行发布 (scripts/release-mcp.mjs——参见 sre-services/RELEASING.md), 该脚本会按正确顺序完成以下所有步骤,涵盖 @one-source/api-mcp 和 @one-source/mcp,包括更新 server.json 和执行 mcp-publisher publish。上述首次设置仍是执行注册表步骤的前提。以下手动步骤是注册表专用修复 或脚本无法运行时的备用方案。

每次发布新的 npm 版本时,都要更新 MCP Registry:

  1. 发布到 npm(注册表会验证软件包是否存在,因此必须先完成此步骤):
 npm run build
 npm publish --access public
  1. 更新 server.json——将两个 version 字段设为与新的 npm 版本一致:
 {
   "version": "x.y.z",
   ...
   "packages": [{ "version": "x.y.z", ... }]
 }

package.json 中的 mcpName 字段必须为 "io.onesource/mcp",并且必须与 server.json 中的 name 字段一致。此项已设置,请勿移除。 3. 进行身份验证(令牌会过期,因此每次都要执行):

 mcp-publisher login dns --domain onesource.io --private-key <ed25519-hex-private-key>
  1. 发布到注册表:
 mcp-publisher publish
  1. 验证:
 curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=onesource"
Glama

Glama 每天会自动与 GitHub 仓库同步。发布后无需手动操作,只需确保更改已推送到 develop(默认分支)。仓库根目录中的 glama.json 文件用于控制所有权。认领服务后,可在 Glama 管理面板中手动重新同步。

隐私政策

使用此扩展会连接到 OneSource API。有关数据处理方式的详情,请参阅 OneSource 隐私政策。

许可证

Apache 2.0——详情请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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