mcpField
T
Tabularium

Tabularium

本地服务
github.com记忆与知识0今天更新

关于 Tabularium

Tabularium 是面向 AI Agent 的持久化记忆与支出账本 MCP 服务。它以 EVM 钱包通过 x402 支付调用费用,并提供哈希链记录、离线验证及链上对账能力。

主要功能

  1. 01按键写入与读取持久化记忆
  2. 02导出并离线验证签名历史
  3. 03通过 x402 支付并记录收据
  4. 04汇总支出并核对链上付款
  5. 05按钱包查看签名账本头部

适用场景

  1. 01跨会话保存和加载 Agent 记忆
  2. 02追踪 Agent 购买 API 的用途与金额
  3. 03核验账本收据及链上结算
  4. 04导出可离线验证的完整记录

MCP 相关

作为 MCP 服务,它向客户端提供记忆读写、支付、账本、验证和对账工具,并附带记忆加载与支出报告提示词。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"sqlazy-tabularium": {
"command": "npx",
"args": [
"-y",
"tabularium-mcp"
],
"env": {
"TABULARIUM_PRIVATE_KEY": "<TABULARIUM_PRIVATE_KEY>",
"TABULARIUM_MAX_SPEND_USD": "<TABULARIUM_MAX_SPEND_USD>",
"TABULARIUM_URL": "<TABULARIUM_URL>",
"TABULARIUM_PAY_MAX_USD": "<TABULARIUM_PAY_MAX_USD>",
"TABULARIUM_PAY_NETWORKS": "<TABULARIUM_PAY_NETWORKS>",
"TABULARIUM_PUBKEY": "<TABULARIUM_PUBKEY>"
}
}
}
}
启动命令npx -y tabularium-mcp
需要配置的环境变量
TABULARIUM_PRIVATE_KEY密钥0x-prefixed EVM private key of the wallet that pays (use a dedicated wallet with a small USDC balance)
TABULARIUM_MAX_SPEND_USDSpend cap for this server process, in USD
TABULARIUM_URLService base URL (defaults to the public deployment)
TABULARIUM_PAY_MAX_USDtabularium_pay: most one purchase may cost, in USD (ceiling 0.50)
TABULARIUM_PAY_NETWORKStabularium_pay: comma-separated networks it may pay on; default is the service's own network. eip155:8453 is mainnet (real money).
TABULARIUM_PUBKEY密钥Optional pinned Ed25519 signing key (hex) that exports must verify against

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

安装包
npmtabularium-mcp0.5.3

工具

9

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

此工具无需参数。

详细介绍

tabularium-mcp

Tabularium 的 MCP 服务:一个面向 AI Agent 的付费、持久化、哈希链式工作区。 Agent 的 EVM 钱包通过 x402 使用 USDC 支付每次调用的费用,该钱包就是账户。无需注册,也无需 API 密钥。

工具

工具费用说明
tabularium_menu免费价格、政策、网络和公开签名密钥。
tabularium_write$0.003追加 {key, value}。重试会复用同一个幂等键,因此重试不会重复写入。
tabularium_read$0.002读取某个键的最新值及其链条记录。
tabularium_renew$0.25将工作区有效期延长 30 天。
tabularium_export$0.01导出完整签名历史,并在返回前进行离线验证。save_to 会将其写入文件。
tabularium_head免费任意钱包的已签名头信息(seq + hash,不含值);默认使用你的钱包。
tabularium_verify免费,本地执行在不信任服务端的情况下,重新验证已保存的导出文件。
tabularium_pay端点价格 + 一次写入使用 USDC 向任意 x402 v2 端点付款,并将已签名收据(原因、完整接受条款、金额、收款方、网络、交易、响应哈希,以及钱包付款前签署的意图)写入 ledger/<date>/...。purchase_id 可确保重试安全:同一 ID 不会重复付款。
tabularium_ledger一次导出验证工作区并汇总收据:按服务和日期统计支出、显示最新收据;检查每个付款方签名的意图是否与收据一致。
tabularium_reconcile一次导出将收据与钱包实际在链上结算的 USDC 付款进行比对(最近 1-30 天):找出没有收据的购买、没有结算的收据,以及与链上记录不一致的收据。

失败的调用(4xx/5xx)绝不会收费。

更多 Tabularium 服务

Tabularium 是一个平台:同一个钱包可为其提供的所有服务付款,而记忆是第一项服务。服务端启动时会读取实时菜单,并将其他每项服务的每个付费调用转换为独立工具,命名为 tabularium_<service>_<call>,并采用菜单列出的输入字段和价格。因此,下次启动 MCP 客户端时就会看到新服务,无需更新此软件包。此类工具遵循与记忆工具相同的规则:收款方必须是菜单列出的收款方,价格不得高于菜单价格(且不得超过 $0.50),会话支出上限仍然适用,并且不会跟随重定向。调用执行后才完成结算的情况下,若付款失败则不会重试,因为调用可能已经执行。任何不符合这些规则的菜单条目都会被跳过,不会自行推测处理。

提示词

MCP 客户端会列出这些现成的起点(在 Claude Code 中输入 / 即可查看):

提示词说明
load_memory根据之前存储的内容开始会话:读取索引键(默认为 index),然后读取其中列出的条目。
spending_report我的 Agent 花了多少?按服务和日期汇总,并列出金额最大的购买及其原因。

服务端还会在模型连接时告知哪些工具免费、哪些需要付费,并提供简单的记忆模式:保留 index 键,在会话开始时读取它,并在做出决定时将决定写入其中。

支出账本

tabularium_pay 回答每位运营者都会问的问题:我的 Agent 买了什么、向谁购买、花了多少钱,原因是什么? 每笔已结算的购买都会成为 Agent 哈希链式、服务器签名工作区中的一条记录,因此可离线导出和验证,并附带链上交易哈希。安全规则:仅通过 EIP-3009 使用 USDC、仅限允许的网络、设置单笔购买上限,并在签署任何内容之前,按实际价格加上收据检查会话支出上限。收据的幂等键是其支付 nonce,因此重试不会重复记录;如果购买结算后收据写入失败,工具仍会返回购买信息和收据,以便重新记录。 付费请求绝不跟随重定向(付款和收据会留在所请求的 URL 上),无论卖家要求的有效期多长,签名授权最多有效 10 分钟。

自 0.5 版起(根据 Moltbook 的 m/agentfinance 上的评审):

  • 原因是一项承诺,而不是备注。 在支付签名前,钱包会对一项意图签名(EIP-191):请求、接受的确切条款、支付 nonce 和原因。收据会保存这些内容,因此付款方之后无法修改原因,服务器也无法凭空编造原因。这仍然只是一项声明,收据也会注明这一点 (reasonStatus)。可使用任意 EIP-191 验证器检查单条记录,或让 tabularium_ledger 检查所有记录。
  • 承诺已写入记录。 收据会保存付款方接受的完整 accepts[] 条目及其哈希,并与支付(交易)和交付(响应哈希)一同记录。
  • 重试不会重复付款。 使用 purchase_id 时,签名授权会一直保存在(TABULARIUM_STATE_DIR)中,直到确认购买已结算。再次调用时会发送相同的授权,而该授权最多只能结算一次;如果某笔购买已结算但响应丢失,系统会在链上找到它并只记录一次。
  • 完整性可验证。 哈希链能证明记录行未被修改,但不能证明没有遗漏。 tabularium_reconcile 会将钱包的链上结算数量与其收据进行核对。

配置

环境变量必填含义
TABULARIUM_PRIVATE_KEY付费工具必填用于付款的 0x 前缀 EVM 私钥。请使用余额较少的专用钱包。
TABULARIUM_URL否服务 URL。默认值:公共部署(Base 主网)。
TABULARIUM_PUBKEY否固定服务器的 Ed25519 密钥(十六进制)。导出内容会根据此密钥进行验证;如果与已发布的密钥不匹配,则会报告。
TABULARIUM_MAX_SPEND_USD否此服务器进程在所有工具上的支出上限。默认值为 1。
TABULARIUM_PAY_MAX_USD否tabularium_pay:单次购买的最高金额。默认值为 0.10,上限为 0.50。
TABULARIUM_TEST否将此进程向服务发出的请求标记为测试流量,不计入服务的公开需求统计。供服务自身运行测试时使用。
TABULARIUM_RPC_URL否服务所在网络的 JSON-RPC,供 tabularium_reconcile 使用,并用于检查尚未确认的付款是否已结算。默认值:公共 Base 节点。
TABULARIUM_STATE_DIR否存储 purchase_id 记录的位置。默认值为 ~/.tabularium-mcp。
TABULARIUM_PAY_NETWORKS否tabularium_pay:允许付款的网络(以逗号分隔的 CAIP-2)。默认值:服务自身所在的网络;对于公共服务,该网络为 Base 主网(eip155:8453):购买会使用真实 USDC,且受 TABULARIUM_PAY_MAX_USD 和支出上限限制。设置为 eip155:84532 可让购买仅在测试网上进行。

公共服务运行在 Base 主网:付款钱包需要持有 Base 上的真实 USDC。无需 ETH,因为交易费用由协调方支付。请使用只存有少量资金的专用钱包。

Claude Code:

claude mcp add tabularium --env TABULARIUM_PRIVATE_KEY=0x... -- npx -y tabularium-mcp

Claude Desktop / 其他客户端(mcpServers JSON):

{
  "tabularium": {
    "command": "npx",
    "args": ["-y", "tabularium-mcp"],
    "env": { "TABULARIUM_PRIVATE_KEY": "0x...", "TABULARIUM_MAX_SPEND_USD": "0.50" }
  }
}

支持 x402 v2。依赖项有三个(MCP SDK、viem、zod)。付款在本地签名(EIP-3009 USDC 授权);服务器拒绝签署任何非 USDC、收款方不符或价格不在服务自身菜单列表中的付款。 0.2.0 之前的版本使用 x402 v1,现已无法连接此服务。

开发

npm install
cp ../verifier/verify.mjs verify.mjs   # 也会在 prepack 时运行;如果副本发生偏差,根目录测试会失败
npm test                               # 离线测试:付款限制(拒绝错误资产/收款方/价格/网络)、服务工具
node smoke.mjs                         # 通过 stdio 对在线服务进行 30 项检查(PAYER_FILE 用于选择钱包)
node smoke.mjs --npx tabularium-mcp@X  # 对已发布的版本执行相同检查

评论

支持 Markdown

第一次接触 MCP?

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

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