mcpField
C
CRA AGENT

CRA AGENT

本地服务
cra-agent.tech金融数据12 周前更新

关于 CRA AGENT

CRA AGENT 是一款 MCP 服务,让 AI Agent 在 Arc 上使用 USDC 发现并支付 API,同时遵守模型无法更改的支出限额。它提供支付、余额、账本和收据工具,并附带用于配置及其他操作的命令行工具。

主要功能

  1. 01搜索 Arc 上可购买的 API
  2. 02查询价格并检查支出政策
  3. 03支付 API 调用并返回收据
  4. 04查看余额、账本和支付证明
  5. 05设置 Agent 无法更改的限额

适用场景

  1. 01让 Agent 在配置限额内支付已列出的 API 调用
  2. 02付款前检查 URL 的价格和政策许可情况
  3. 03检查已结算付款并验证签名收据

MCP 相关

该 MCP 服务提供工具,用于发现可付费 API、查询价格和政策、付款,以及查看收据和余额。Agent 的密钥和支出政策从环境中读取,不受模型控制。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"giupy997-cra-agent": {
"command": "npx",
"args": [
"-y",
"@cra-agent/mcp"
],
"env": {
"CRA_NETWORK": "<CRA_NETWORK>",
"CRA_KEY_FILE": "<CRA_KEY_FILE>",
"CRA_POLICY": "<CRA_POLICY>",
"CRA_RPC_URL": "<CRA_RPC_URL>",
"DATABASE_URL": "<DATABASE_URL>"
}
}
}
}
启动命令npx -y @cra-agent/mcp
需要配置的环境变量
CRA_NETWORKarc (mainnet) or arcTestnet
CRA_KEY_FILE密钥Path to a chmod 600 file holding the agent's private key. Never put the key in a prompt.
CRA_POLICYSpending limits, e.g. daily=5,per_seller=0.5,per_payment=0.05
CRA_RPC_URLOptional RPC endpoints, comma separated, in priority order
DATABASE_URLOptional Postgres for the ledger; in memory without it

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

安装包
npm@cra-agent/mcp0.0.11

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

@cra-agent/mcp

一个 MCP 服务,让 AI Agent 可以为 API 调用付费。Agent 调用一个工具,支付通道读取 x402 价格,检查支出策略,通过 Circle Gateway 在 Arc 上使用 USDC 付款,买方无需支付 Gas 费,并保存收据。

模型永远看不到密钥,也无法提高自己的限额:两者都会在对话开始前从环境中读取。

安装

npm i -g @cra-agent/mcp

一条命令完成设置

cra-agent init --client claude-desktop

在 ~/.cra-agent/agent.key 中创建 Agent 的密钥(仅你可读取,且绝不会覆盖),检查限额,将配置项写入客户端的配置文件并备份旧文件,然后打印需要充值的地址。--client 可选 claude-desktop、cursor、claude-code 或 terminal;--policy、--network、--key-file 和 --dry-run 的作用顾名思义。CRA Factory 会根据四个问题为你生成命令。

或者,从任意 MCP 客户端手动设置

{ "mcpServers": { "cra-agent": {
    "command": "cra-agent-mcp",
    "env": {
      "CRA_NETWORK": "arc",
      "CRA_KEY_FILE": "/path/to/agent.key",
      "CRA_POLICY": "daily=5,per_seller=0.5,per_payment=0.05"
    }
} } }

CRA_KEY_FILE 指向存放私钥的文件,权限应设置为 chmod 600。切勿将密钥放入提示词。

工具

工具功能
arc_search根据几个词(“bitcoin price”、“web search”)查找 Arc 上可购买的内容:CRA AGENT 自有数据、CRA 市场,以及 Circle 的 x402 目录中列出的、可在 Arc 上付费的端点(Exa、Goldsky、BlockRun 等)。每项结果都会显示方法和 URL,以及示例参数、每个参数应放置的位置(查询、路径或 JSON 请求体)、价格、卖家、上架者,以及当前策略是否允许付款。免费。
arc_quote读取 URL 的价格,并说明策略是否允许付款。不付款。对于 POST 请求,请传入付款时将携带的请求体:有些卖家会在报价前检查请求体。
arc_pay为 URL 付款,并返回带有收据的响应。设置 lightning: true 时,如果卖家的 402 提供此选项,则通过 Lightning 使用比特币付款(x402 exact on lnbtc),资金来自 CRA_NWC_PAY_FILE 中的钱包,并遵守相同的美元限额。付款时会先检查 402 请求的金额,之后才会签名。maxUsdc 为单次调用设置上限:传入 arc_search 列出的价格;即使卖家涨价后仍在你的限额内,也会拒绝付款。
arc_balance查看钱包和 Circle Gateway 余额。
arc_deposit将钱包中的 USDC 转入 Gateway 余额。首次付款前需要执行一次。
arc_ledger查看每次尝试:报价、拒绝、已签名、已结算或失败。
arc_proof将已结算付款与承载该付款的链上转账相匹配。
arc_verify_receipt检查来自其他 Agent 的签名收据:谁签了名,以及付款是否符合收据中声明的限额。
arc_policy显示当前生效的限额。
arc_job_*ERC-8183 托管任务。合约部署到 Arc 主网上之前,仅支持测试网。

一个为自身思考付费的 Agent

cra-agent think "<task>" 会运行一个小型自主 Agent,它的大脑是 Arc 上按调用付费的大模型,即 BlockRun 的聊天补全服务,可在 bazaar 中找到,默认使用 Claude Haiku 4.5。每次思考都是一次付费调用,大脑请求的每个工具也都要付费:它会先免费搜索 bazaar,然后按标价购买所需工具。全程没有 API 密钥,只有 Agent 的钱包。会话预算(--budget,默认值为 $0.10)和支出策略同时适用于思考和工具;每次思考的费用上限由 --ceiling 设定(默认值为 $0.01),而且大脑只能购买搜索结果中返回的 URL。它会打印每个步骤及其费用,最后列出账单:思考花了多少,工具花了多少。一个简短的任务只需几美分:cra-agent.tech/think 上运行的一次任务,查明了 Arc 主网何时上线以及由谁验证,花费 $0.023648,共进行了四次思考,并使用 Exa 进行了一次网页搜索。

它还知道几个免费的公共 API,无需付费即可调用,并会将这些调用标示为免费:DexScreener 的交易对、热门代币和新代币资料,并整理成能回答问题的形式(如按 24 小时交易量排列交易对)。--tools <file> 会将其限制在一组 URL 前缀内:其他内容不会展示给它,因此也不会被购买。

指定 --record 和 DATABASE_URL 后,运行过程会逐步实时保存到 Postgres,这也是页面能实时展示并在之后重放运行过程的原因。未提供问题时,--questions <file> 会从文件中选取问题,这正是我们的服务按定时器运行 Agent 的方式:文件将模板(What is the price of {coin} right now?)和列表(@coin = bitcoin (BTC) | ether (ETH))组合在一起;已记录的运行不会重复最近一百个问题中的任何一个。

任何人都可以通过 x402 upto 雇用同一个 Agent:GET https://api.cra-agent.tech/v1/upto/think?task=… 会要求你签署最多 $0.10 的付款,并收取本次运行的实际花费,另加 $0.005。arc_pay 和 cra-agent pay 可以支付这类路由,例如这一条:系统会根据费用上限检查你的策略,因为全部金额都可能被扣除,而账本会记录实际扣款。默认策略允许每笔付款最多 $0.05,因此需要将此笔付款的上限调高至 per_payment=0.10。

从 Base 或 Solana 为 Agent 充值

在 Arc 上付款需要使用 Circle Gateway 中的 USDC,而大多数 Agent 都将 USDC 存放在 Base 或 Solana 上。运行一条命令即可将其转入并存入:

cra-agent fund 5 --from base                                    # from this agent's own wallet on Base, same key and address
cra-agent fund 5 --from solana --solana-key-file ~/sol.json     # from a Solana wallet: our hex seed or solana-keygen's JSON
cra-agent fund 5 --from base --dry-run                          # everything checked, nothing signed

它会向 Eco 请求一条路线,并在签署任何内容前根据交易本身的 calldata 检查报价:向 Arc 域发送确切金额的 CCTP 销毁交易,铸造给该 Agent,费用低于上限(--max-fee,默认为 0.5% 或 $0.01),退款退回同一钱包。从 Base 转入时,USDC 必须存入 Eco 的 Portal 为该意图推导出的金库。之后它会等待 USDC 到达 Arc(通常只需几秒),再将其存入 Gateway,并在钱包中留出 $0.01 作为 Arc 的 Gas 费(使用 --keep 留存更多,或使用 --no-deposit 将所有资金留在钱包中)。从 Base 转入时,钱包需要少量 ETH 来支付两笔交易的费用,大约一美分;从 Solana 转入时则需要少量 SOL。模型没有可用于此操作的工具:在链之间转移资金是所有者要在终端中完成的操作。

在终端中执行相同操作

cra-agent find bitcoin price    # what is for sale on Arc; needs no key (in a browser: cra-agent.tech/bazaar)
cra-agent balance
cra-agent quote https://api.cra-agent.tech/v1/paid/rpc/health
cra-agent quote https://api.exa.ai/search --body '{"query":"x402 on Arc"}'           # the price of a POST, with its body
cra-agent fund 5 --from base   # USDC from Base to this agent on Arc, into Gateway
cra-agent deposit 1
cra-agent withdraw 1            # Gateway balance back to the wallet; how a seller collects
cra-agent pay   https://api.cra-agent.tech/v1/paid/rpc/health
cra-agent pay   https://api.exa.ai/search 0.007 --body '{"query":"x402 on Arc"}'   # a POST, refused above the listed price
cra-agent think "What is x402, in two sentences?" --budget 0.10              # an agent that pays for its own thinking
cra-agent proof
cra-agent verify receipt.json      # needs no key and no network
cra-agent pq-key ~/.cra-agent/pq.key           # a post-quantum key for receipts; prints only its public half
cra-agent verify receipt.json --require-pq --on-arc   # the second signature too, and Arc's own verdict on it

每张收据都会注明付款所遵循的限额,并使用 Agent 的密钥签名,因此不在场的人也能核验。签名证明这份声明由 Agent 发出且未被篡改;链上结算则提供独立的验证。

环境

变量含义
CRA_NETWORKarc(主网)或 arcTestnet。默认值为 arcTestnet。
CRA_KEY_FILE / CRA_PRIVATE_KEYAgent 的密钥。优先使用文件。
CRA_POLICYdaily=5,per_seller=0.5,per_payment=0.05,rate=120/60s,allow=a.com|b.com,deny=c.com
CRA_RPC_URL可选,可设置一个或多个,以逗号分隔,按优先级排列。会在尝试 Arc 公共端点之前先尝试这些 URL。
CRA_RPC_STRICT设为 1 时绝不回退到公共端点。
CRA_BASE_RPC_URL / SOLANA_RPC_URL可选,供 fund 使用:Base 和 Solana 端点。默认使用公共端点。
DATABASE_URL可选,用于账本的 Postgres。未设置时,账本保存在内存中。
CRA_PQ_KEY_FILE可选,由 cra-agent pq-key 生成的文件。设置后,每张收据都会再使用 SLH-DSA-SHA2-128s 签名一次,这是 Arc 在链上验证的后量子方案。它保护收据,而非支付,并会让每笔支付增加约一秒耗时。

有两点值得了解。只有卖家的处理程序执行成功后,支付才会结算,因此失败的端点不会产生费用:https://api.cra-agent.tech/v1/paid/selftest/fail 始终返回 500,供你测试。并且,identity=required 只向在 Arc 上拥有 ERC-8004 身份的卖家付款:收款地址必须在注册表中拥有一个 Agent,或者是某个 Agent 声明用于收款的钱包。这只能证明身份存在,不能证明卖家诚信;注册只需支付 Gas 费。

CRA AGENT 的一部分

面向 AI Agent 的 Arc 支付。Arc 是 Circle 的原生支持 USDC 的 L1。网站:cra-agent.tech · 源代码:github.com/giupy997/arcagentx402 · MIT

评论

支持 Markdown

第一次接触 MCP?

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

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