区块链支付服务

tempo-mcp是一个连接AI助手与Tempo区块链的MCP服务器,支持自主稳定币支付,适用于薪资自动化、发票结算等场景。

  • by arome3
  • TypeScript
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 arome3/tempo-mcp

使用说明

节奏mcp

用于Tempo区块链稳定币支付的MCP服务器 --使AI代理能够自主执行现实世界的支付。

仅限测试网 --该MCP目前在Tempo测试网上运行。没有使用真正的资金。非常适合实验和开发!


太长,读不下去了

添加到Claude桌面配置(~/.config/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": { "TEMPO_PRIVATE_KEY": "0xYOUR_PRIVATE_KEY" }
    }
  }
}

然后问克劳德: “我的AlphaUSD余额是多少?”

需要测试网令牌吗? 获取免费AlphaUSD docs.tempo.xyz/水龙头


我能问什么?

你说 发生了什么
“我的余额是多少?” 检查您的AlphaUSD余额
“向0x发送100个AlphaUSD…” 发送单笔付款
“支付发票INV-001 500美元至0x…” 带对账备忘录的付款
“处理员工的工资单.csv” 批量向多个收件人付款
“向50个供应商发送并发付款” 并行付款(比顺序付款快10-100倍)
“将1000 AlphaUSD兑换为BetaUSD” 在Tempo DEX上兑换稳定币
“计划明天上午9点支付200美元至0x…” 未来日期付款
“谁在AlphaUSD上拥有ISSUER_ROLE?” 查询令牌角色成员
“将PAUSE_ROLE授予0x…” 为地址分配角色(需要管理员)
“暂停AlphaUSD代币” 紧急暂停所有转账
“创建白名单政策” 创建新的TIP-403合规政策
“0x…是否在策略1中列入白名单?” 检查地址合规性状态
“将0x…添加到白名单” 白名单地址(需要策略所有者)
“0x…可以传输到0x…吗?” 预验证传输合规性
“用赞助的天然气向0x发送100 AlphaUSD” 无天然气付款(由赞助商支付的费用)
“赞助商的余额是多少?” 检查费用赞助商代币余额
“获取0x的访问密钥信息…” 查询会话密钥详细信息和状态
“检查访问密钥0x的剩余限制…” 查看剩余支出限额
“吊销访问密钥0x…” 永久禁用会话密钥
“我的AlphaUSD奖励状态如何?” 查看选择加入状态和待定奖励
“选择加入AlphaUSD奖励” 开始按比例获得代币奖励
“分发1000个AlphaUSD奖励” 向已选择的持有者分发奖励
“领取我的待定奖励” 将累积奖励存入您的钱包
“AlphaUSD的AMM池费用信息是什么?” 检查池储备和LP供应
“在费用AMM中增加1000 AlphaUSD流动性” 提供流动性以赚取转换费
“我在费用AMM中的LP头寸是多少?” 查看您的股票和基础代币价值
“显示AlphaUSD订单簿” 查看DEX上的买卖水平
“在-10点时以100 AlphaUSD进行限价买入” 创建0.9999美元的休息订单
“下翻转订单:在-10时买入,在10时翻转卖出” 自动反转做市商订单
“我的未结订单是什么?” 列出您的活跃DEX订单
“取消订单12345” 取消未结订单并获得退款

什么是节拍mcp?

节奏mcp是一个 模型上下文协议(MCP) 连接人工智能助手和 Tempo区块链,为代理商务实现自主稳定币支付。

为什么这很重要

人工智能代理正在从助手演变为可以采取现实世界行动的自主行动者。然而,他们目前缺乏安全处理金融交易的能力。tempo-mcp通过提供以下功能来解决这个问题:

  • 自主支付:AI代理可以在没有人为干预的情况下发送稳定币支付
  • 内置安全:支出限制、地址分配和利率限制可防止失控交易
  • 审计跟踪:记录每笔交易以进行合规和对账
  • 备忘录支持:32字节备忘录支持发票匹配和付款对账

用例

  • 工资自动化:处理CSV文件中的批量付款
  • 发票结算:使用备注字段将付款与发票匹配
  • 资金管理:自动重新平衡多代币投资组合
  • 小额付费:启用按使用付费的人工智能服务
  • 合规管理:自动化KYC/AML白名单维护和转账验证
  • 委托代理人签名:使用具有支出限制的AI代理的访问密钥(会话密钥)
  • 费用流动性准备金:通过向天然气转换费AMM提供流动性来赚取收益
  • 自动化做市:下达在买入/卖出之间波动的翻转订单,以进行稳定币套利

特性

支付操作

  • 单笔付款 --使用可选备忘录发送TIP-20稳定币转账
  • 批量付款 --原子多收件人传输(最多100个收件人)
  • 并发付款 --使用nonceKeys并行执行(大批量执行速度快10-100倍)
  • 计划付款 --具有执行窗口的协议级未来支付
  • 赞助付款 --赞助商支付费用的无气交易(本地密钥或中继服务)

查询操作

  • 余额查询 --检查单个或多个令牌余额
  • 交易查询 --获取交易详情和历史记录
  • 天然气估算 --估算交易成本

令牌操作

  • 代币创建 --通过工厂合约部署新的TIP-20代币
  • 薄荷/烧伤 --代币供应管理(需要ISSUER_ROLE)
  • 交换 --在Tempo的原生DEX上交换稳定币
  • 角色管理 --授予、撤销和查询TIP-20角色(管理员、颁发者、暂停、取消使用)
  • 暂停控制 --紧急暂停/取消暂停令牌传输(需要pause_ROLE/unpause_ROLE)
  • 政策合规 --TIP-403白名单/黑名单管理和转移前验证
  • 奖励管理 --TIP-20选择加入奖励:选择加入/退出、领取奖励、设置收件人、查看状态
  • AMM流动性费用 --为天然气费用转换池提供流动性,并从稳定币掉期中获利
  • DEX高级订单 --限价订单、翻转订单(自动反转)、订单簿查询和订单管理

安全

  • 支出限额 --每个代币和每日美元限额
  • 地址允许列表 --白名单或黑名单收件人地址
  • 速率限制 --每种操作类型的可配置限制
  • 审计日志 --带请求跟踪的结构化JSON日志
  • 访问密钥(会话密钥) --具有每个令牌支出限制和到期的委托签名

钱包支持

  • 私钥 --开发/测试的直接密钥
  • 密钥库 --用于生产的加密JSON密钥库
  • 外部签名者 --企业交钥匙/防火墙集成

快速开始

先决条件

  • Node.js 20.0.0或更高版本
  • npm、pnpm或yarn
  • 带有AlphaUSD代币的Tempo测试网钱包

第一次? 在以下网址获取钱包和免费测试网代币 docs.tempo.xyz/水龙头

安装

通过npm(全局安装):

npm install -g tempo-mcp

通过npx(无需安装):

npx tempo-mcp

来源:

git clone https://github.com/arome3/tempo-mcp
cd tempo-mcp
npm install
npm run build

配置

  1. 创建 .env 文件:
cp .env.example .env
  1. 添加您的钱包私钥:
# Required
TEMPO_PRIVATE_KEY=0x...  # Your wallet private key

# Network (defaults to testnet)
TEMPO_RPC_URL=https://rpc.testnet.tempo.xyz
TEMPO_CHAIN_ID=42429
  1. 运行服务器:
npm start
# or
npx tempo-mcp

使用IDE进行安装

请在下面选择您的MCP客户端,以获取详细的设置说明。

注: 如果您使用的是此处未列出的客户端,您仍然可以通过手动将服务器配置添加到客户端的mcp设置中来使用tempo-mcp。


克劳德桌面版

下载并安装 克劳德桌面版 如果你还没有。

手动设置:

  1. 打开克劳德桌面
  2. 首选 设置 (齿轮图标)→ 开发者
  3. 点击 编辑配置 打开配置文件
    • macOS/Linux: ~/.config/Claude/claude_desktop_config.json
    • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  4. 添加以下配置:
{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": {
        "TEMPO_PRIVATE_KEY": "0x...",
        "TEMPO_RPC_URL": "https://rpc.testnet.tempo.xyz"
      }
    }
  }
}
  1. 保存文件并重新启动Claude Desktop

克劳德代码(CLI)

安装 克劳德代码 如果你还没有。

1-单击设置:

claude mcp add tempo-mcp -e TEMPO_PRIVATE_KEY=0x... -- npx tempo-mcp

手动设置:

  1. 打开终端
  2. 跑 claude mcp add tempo-mcp 添加服务器
  3. 或者直接编辑配置文件:
    • macOS: ~/.claude/settings.json
    • Linux: ~/.claude/settings.json
    • 窗户: %USERPROFILE%\.claude\settings.json
  4. 添加配置:
{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": {
        "TEMPO_PRIVATE_KEY": "0x..."
      }
    }
  }
}
  1. 验证 /mcp Claude Code中的命令

光标

下载并安装 光标 如果你还没有。

手动设置:

  1. 在Cursor中打开项目并导航到 光标设置 (macOS上的⌘+Shift+J)
  2. 在设置菜单中,转到 主控程序 章节
  3. 点击 新建MCP服务器。这将打开您的 mcp.json 配置文件
    • 全球的: ~/.cursor/mcp.json
    • 项目级别: .cursor/mcp.json (以项目根为单位)
  4. 添加以下配置:
{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": {
        "TEMPO_PRIVATE_KEY": "0x..."
      }
    }
  }
}
  1. 保存并重新启动游标

提示: 项目级配置(.cursor/mcp.json)覆盖全局配置。


帆板运动

下载并安装 帆板运动 如果你还没有。

手动设置:

  1. 打开Windsurf,前往 设置 (⌘+,在macOS上)
  2. 导航到 级联 → 插件
  3. 点击 查看原始配置 打开MCP配置文件
    • macOS: ~/.codeium/windsurf/mcp_config.json
    • Linux: ~/.config/.codeium/windsurf/mcp_config.json
    • 窗户: %USERPROFILE%\.codeium\windsurf\mcp_config.json
  4. 添加以下配置:
{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": {
        "TEMPO_PRIVATE_KEY": "0x..."
      }
    }
  }
}
  1. 保存并重新启动Windsurf

VS代码+继续

安装 继续扩展 在VS代码中。

手动设置:

  1. 打开VS Code并单击侧栏中的Continue图标
  2. 点击齿轮图标→ 打开config.yaml
    • macOS: ~/.continue/config.yaml
    • Linux: ~/.continue/config.yaml
    • 窗户: %USERPROFILE%\.continue\config.yaml
  3. 添加以下配置(YAML格式):
mcpServers:
  - name: tempo
    command: npx
    args:
      - tempo-mcp
    env:
      TEMPO_PRIVATE_KEY: "0x..."
  1. 保存并重新加载VS代码

注: MCP工具仅在Continue中可用 代理模式.


克莱恩

安装 临床扩展 在VS代码中。

手动设置:

  1. 打开VS Code并单击侧栏中的Cline图标
  2. 点击 MCP服务器 顶部导航栏中的图标
  3. 选择 配置 选项卡,然后单击 高级MCP设置
  4. 这将在以下位置打开配置文件:
    • macOS: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
    • 窗户: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
    • Linux: ~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  5. 添加以下配置:
{
  "mcpServers": {
    "tempo": {
      "command": "npx",
      "args": ["tempo-mcp"],
      "env": {
        "TEMPO_PRIVATE_KEY": "0x..."
      },
      "alwaysAllow": [],
      "disabled": false
    }
  }
}
  1. 保存后,服务器将立即可用

通用MCP客户端

对于自定义MCP客户端或编程使用:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "npx",
  args: ["tempo-mcp"],
  env: {
    TEMPO_PRIVATE_KEY: process.env.TEMPO_PRIVATE_KEY,
  },
});

const client = new Client({ name: "my-agent", version: "1.0.0" }, {});
await client.connect(transport);

// Now you can call tools
const result = await client.callTool({
  name: "get_balance",
  arguments: { token: "AlphaUSD" },
});

MCP工具参考

支付工具(高风险)

工具 说明 关键参数
send_payment 发送一次TIP-20代币转账 token, to, amount, memo?
batch_payments 原子多接收者传输 token, payments[] (最多100)
schedule_payment 创建计划的未来付款 token, to, amount, executeAt
cancel_scheduled_payment 取消待定的计划付款 transactionHash
send_sponsored_payment 无气支付(赞助商支付费用) token, to, amount, useRelay?
estimate_sponsored_gas 估算赞助交易的天然气 token, to, amount, feeToken?
get_sponsor_balance 检查赞助商的代币余额 sponsor?, token?
send_concurrent_payments 使用非eKeys的并行支付(速度快10-100倍) payments[], startNonceKey?
get_nonce_for_key 获取特定nonceKey的nonce nonceKey, address?
list_active_nonce_keys 列出所有nonce大于0的nonceKeys address?

查询工具(低风险)

工具 说明 关键参数
get_balance 获取地址的令牌余额 token, address?
get_balances 获取多个代币余额 tokens[], address?
get_account_info 获取账户详细信息(类型、交易计数) address
get_transaction 按哈希值获取交易 hash
get_gas_estimate 估算交易的天然气 to, amount, token

代币工具(高风险)

工具 说明 关键参数
create_token 部署新的TIP-20代币 name, symbol, decimals, initialSupply
get_token_info 获取令牌元数据 token
mint_tokens 薄荷代币(需要角色) token, to, amount
burn_tokens 销毁令牌(需要角色) token, amount
grant_role 为地址授予角色 token, role, account
revoke_role 从地址中撤销角色 token, role, account
renounce_role 放弃自己的角色 token, role
has_role 检查地址是否具有角色 token, role, account
get_role_members 列出角色的所有成员 token, role
pause_token 暂停所有代币转移 token, reason?
unpause_token 恢复令牌转移 token, reason?

政策工具(TIP-403合规性)

工具 说明 关键参数
create_policy 制定新的合规政策 policyType, admin?, initialAccounts?
check_transfer_compliance 预验证是否允许转移 token, from, to
get_policy_info 获取政策详细信息 policyId
is_whitelisted 检查地址是否已列入白名单 policyId, account
is_blacklisted 检查地址是否被列入黑名单 policyId, account
add_to_whitelist 将地址添加到白名单 policyId, account
remove_from_whitelist 从白名单中删除 policyId, account
add_to_blacklist 阻止地址 policyId, account
remove_from_blacklist 解锁地址 policyId, account
burn_blocked_tokens 从被阻止的地址销毁令牌 token, blockedAddress, amount

策略类型: whitelist (只有批准的地址才能进行交易)或 blacklist (块特定地址)。内置策略:0(始终拒绝),1(始终允许)。自定义策略从ID 2开始。

访问密钥工具(会话密钥)

工具 说明 关键参数
get_access_key_info 获取访问密钥详细信息(类型、到期、限制) accountAddress, keyId
get_remaining_limit 检查剩余支出限额 accountAddress, keyId, token
revoke_access_key 永久禁用访问密钥 keyId
update_spending_limit 修改密钥的令牌支出限制 keyId, token, newLimit

奖励工具(TIP-20奖励)

工具 说明 关键参数
opt_in_rewards 选择加入代币奖励计划 token
opt_out_rewards 选择退出奖励(可选索赔待定) token, claimPending?
claim_rewards 申请待决奖励 token
distribute_rewards 向选择加入的持有人(发行人)分配奖励 token, amount, duration?
get_pending_rewards 查看待定奖励金额 token, address?
set_reward_recipient 设置奖励的自动转发地址 token, recipient
get_reward_status 获取完整的奖励状态和代币统计信息 token, address?

持续时间:设置 duration=0 用于即时分发。计划为未来的协议更新提供基于时间的流媒体奖励(持续时间>0)。

Exchange工具

工具 说明 关键参数
get_swap_quote 获取DEX掉期报价 fromToken, toToken, amount
swap_stablecoins 执行稳定币交换 fromToken, toToken, amount, slippage?

费用AMM工具(流动性管理)

工具 说明 关键参数
get_fee_pool_info 获取池储备、LP供应和掉期利率 userToken, validatorToken?
get_lp_position 检查LP余额和基础代币价值 userToken, validatorToken?, address?
estimate_fee_swap 费用代币转换的报价输出 fromToken, toToken, amount
add_fee_liquidity 增加流动性以赚取转换费 userToken, amountUser, amountValidator
remove_fee_liquidity 提取流动性和LP代币 userToken, lpAmount

DEX高级工具(订单交易)

工具 说明 关键参数
place_limit_order 在订单簿上下达休息限价订单 token, amount, side, tick
place_flip_order 下达自动反转订单进行做市 token, amount, side, tick, flipTick
cancel_order 取消未结订单并退还代币 orderId
get_orderbook 查看买卖水平和价差 baseToken, quoteToken?, depth?
get_my_orders 列出您的未完成/已完成/已取消订单 token?, status?
get_order_status 获取订单详细信息并填写百分比 orderId

Tick定价:价格=1+分/100000。勾0=1.0000美元,勾-10=0.9999美元,勾10=1.0001美元


MCP资源参考

资源通过URI模式提供对区块链数据的只读访问:

URI模式 描述
tempo://network 网络配置和当前块
tempo://account/{address} 账户信息和代币余额
tempo://token/{address} TIP-20代币元数据
tempo://token/{address}/roles 令牌角色分配和暂停状态
tempo://token/{address}/rewards 代币奖励状态(选择加入、待定、统计数据)
tempo://tx/{hash} 交易详情
tempo://block/{number|"latest"} 块信息
tempo://policy/{id} TIP-403政策详细信息(类型、所有者、代币计数)
tempo://policy/{id}/whitelist/{address} 检查地址是否已列入白名单
tempo://policy/{id}/blacklist/{address} 检查地址是否被列入黑名单
tempo://access-key/{account}/{keyId} 访问密钥信息(类型、到期、已撤销状态)
tempo://access-key/{account}/{keyId}/limit/{token} 代币剩余消费限额
tempo://fee-amm/{userToken}/{validatorToken} 费用AMM池信息(储备、LP供应、掉期利率)
tempo://dex/orderbook/{baseToken} 带有买卖水平的DEX订单簿
tempo://dex/order/{orderId} 订单详细信息和填写状态

示例用法:

Read tempo://account/0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbb

MCP提示参考

提示提供可重用的对话模板:

提示 说明 参数
payment-receipt 生成格式化的付款收据 transactionHash
reconciliation-report 将交易记录与发票匹配 startDate, endDate, memoPrefix?
payroll-summary 汇总批量付款结果 batchTransactionHash
spending-report 按收件人分析支出 period, groupBy?
role-audit 审核令牌角色分配 token
compliance-report 生成TIP-403合规状态报告 addresses, policyId?, token?
rewards-summary 总结奖励状态和未决索赔 token, address?
fee-amm-summary 总结费用AMM池状态和LP头寸 userToken, address?

配置

环境变量

变量 描述 默认值
网络
TEMPO_RPC_URL RPC端点URL https://rpc.testnet.tempo.xyz
TEMPO_CHAIN_ID 链ID 42429
TEMPO_EXPLORER_URL 阻止浏览器URL https://explore.tempo.xyz
钱包
TEMPO_PRIVATE_KEY 钱包私钥(前缀0x) --
TEMPO_KEYSTORE_PATH 加密密钥库的路径 --
TEMPO_KEYSTORE_PASSWORD 密钥库解密密码 --
安全
TEMPO_MAX_SINGLE_PAYMENT 最大单笔付款金额 1000
TEMPO_DAILY_LIMIT 每日消费限额 10000
TEMPO_ALLOWLIST_ENABLED 启用地址限制 false
TEMPO_RATE_LIMIT 每分钟最多工具调用次数 60
日志记录
TEMPO_LOG_LEVEL 日志级别(调试/信息/警告/错误) info
TEMPO_AUDIT_LOG_ENABLED 启用审核日志记录 true
TEMPO_AUDIT_LOG_PATH 审核日志文件路径 ./logs/audit.jsonl
费用赞助
TEMPO_FEE_SPONSORSHIP_ENABLED 启用无气体事务 false
TEMPO_FEE_PAYER_TYPE 赞助商模式(local 或 relay) local
TEMPO_FEE_PAYER_ADDRESS 缴费人钱包地址 --
TEMPO_FEE_PAYER_KEY 缴费者私钥(本地模式) --
TEMPO_FEE_RELAY_URL 中继服务URL https://sponsor.testnet.tempo.xyz
代币
TEMPO_DEFAULT_TOKEN 默认支付令牌 AlphaUSD

配置文件

创建 tempo-mcp.config.yaml 对于高级配置:

network:
  rpcUrl: https://rpc.testnet.tempo.xyz
  chainId: 42429
  explorerUrl: https://explore.tempo.xyz

wallet:
  type: privateKey  # or 'keystore', 'external'

security:
  spendingLimits:
    maxSinglePayment:
      "*": "1000"           # Default for all tokens
      AlphaUSD: "5000"      # Override for specific token
    dailyLimit:
      "*": "10000"
    dailyTotalUSD: "50000"
    maxBatchSize: 50
    maxBatchTotalUSD: "25000"

  addressAllowlist:
    enabled: true
    mode: allowlist         # or 'blocklist'
    addresses:
      - "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbb"
    labels:
      "0x742d35Cc...": "Payroll Account"

  rateLimits:
    toolCalls:
      windowMs: 60000
      maxCalls: 60
    highRiskOps:
      windowMs: 3600000
      maxCalls: 100

logging:
  level: info
  auditLog:
    enabled: true
    path: ./logs/audit.jsonl
    rotationDays: 30

feeSponsorship:
  enabled: true
  feePayer:
    type: local              # or 'relay' for testnet relay service
    address: "0x..."         # Fee payer wallet address
    privateKey: "0x..."      # Fee payer private key (local mode only)
    relayUrl: "https://sponsor.testnet.tempo.xyz"  # Relay endpoint
  maxSponsoredPerDay: "1000" # Daily sponsorship limit

配置优先

  1. 环境变量 (最高优先级)
  2. 配置文件 (速度mcp.config.yaml/yml/json)
  3. 默认值 (最低优先级)

安全

tempo-mcp包括多个安全层,以防止未经授权的交易:

支出限额

防止大额或超额付款:

security:
  spendingLimits:
    maxSinglePayment:
      "*": "1000"           # Max $1000 per transaction
    dailyLimit:
      "*": "10000"          # Max $10,000 per day per token
    dailyTotalUSD: "50000"  # Max $50,000 per day total

地址允许列表

限制哪些地址可以接收付款:

security:
  addressAllowlist:
    enabled: true
    mode: allowlist         # Only allow listed addresses
    addresses:
      - "0x..."             # Approved recipient
    labels:
      "0x...": "Vendor A"   # Human-readable label

速率限制

防止滥用和失控的代理人:

security:
  rateLimits:
    toolCalls:
      windowMs: 60000       # 1 minute window
      maxCalls: 60          # Max 60 calls per minute
    highRiskOps:
      windowMs: 3600000     # 1 hour window
      maxCalls: 100         # Max 100 high-risk ops per hour

审计日志

所有操作均已记录以确保合规性:

{"timestamp":"2024-12-17T10:30:00Z","requestId":"abc123","tool":"send_payment","status":"success","tx":"0x...","amount":"100","to":"0x..."}

例子

基本付款

User: "Send 50 AlphaUSD to 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbb"

→ Claude calls send_payment({
    token: "AlphaUSD",
    to: "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbb",
    amount: "50"
  })

→ Returns: {
    success: true,
    transactionHash: "0xabc123...",
    explorerUrl: "https://explore.tempo.xyz/tx/0xabc123..."
  }

凭备忘录付款(发票对账)

User: "Pay invoice #INV-2024-001 for 1500 AlphaUSD to 0x..."

→ Claude calls send_payment({
    token: "AlphaUSD",
    to: "0x...",
    amount: "1500",
    memo: "INV-2024-001"
  })

批量工资单

User: "Process this month's payroll from employees.csv"

→ Claude calls batch_payments({
    token: "AlphaUSD",
    payments: [
      { to: "0x...", amount: "5000", label: "Alice" },
      { to: "0x...", amount: "4500", label: "Bob" },
      { to: "0x...", amount: "6000", label: "Carol" }
    ]
  })

赞助(无气)付款

User: "Send 100 AlphaUSD to 0x... using sponsored gas"

→ Claude calls send_sponsored_payment({
    token: "AlphaUSD",
    to: "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEbb",
    amount: "100",
    useRelay: false  // Use local fee payer
  })

→ Returns: {
    success: true,
    transactionHash: "0xdef456...",
    feePayer: "0xabc...",
    feeAmount: "0.000073"
  }

代理示例

在中探索完整的代理实现 /examples 目录:

示例 说明
基本用法 简单的余额检查和付款
工资代理 基于CSV的批量工资处理
发票代理 AP自动化与备忘录对账
国库代理人 多代币投资组合管理
合规代理 TIP-403白名单/黑名单管理
做市商代理 DEX订单簿交易与翻转订单

发展

设置

git clone https://github.com/arome3/tempo-mcp
cd tempo-mcp
npm install

可用脚本

脚本 描述
npm run dev 从热重新加载开始(tsx手表)
npm run build 构建TypeScript以进行dist/
npm start 运行已编译的服务器
npm test 在监视模式下运行测试
npm run test:run 运行一次测试(CI模式)
npm run lint 运行ESLint
npm run format 带Prettier的格式
npm run typecheck TypeScript类型检查

测试

# Run all tests
npm test

# Run with coverage
npm run test:run -- --coverage

# Run specific test file
npm test -- src/security/spending-limits.test.ts

网络信息

Tempo测试网(安坦蒂诺)

财产 价值
链ID 42429
RPC URL https://rpc.testnet.tempo.xyz
探索者 https://explore.tempo.xyz
阻塞时间 ~0.6秒
水龙头 docs.tempo.xyz/quickstart/水龙头

默认令牌

令牌 地址
AlphaUSD 0x20c0000000000000000000000000000000000001

文档


技术栈

类别 技术
语言 TypeScript 5.7
运行时 Node.js 20+
协议 MCP SDK 1.0
区块链 视频2.21,模板0.10
验证 Zod 3.25
日志记录 引脚8.21
构建 tsup,tsx
测试 Vitest
Linting ESLint,更漂亮

故障排除

“连接被拒绝”错误

  • 确保已安装Node.js 20+: node --version
  • 检查一下 TEMPO_PRIVATE_KEY 已在配置中设置

“余额不足”错误

  • 从获取测试网令牌 水龙头
  • 核实您的余额:问克劳德 “我的余额是多少?”

“超出支出限制”

  • 增加 TEMPO_MAX_SINGLE_PAYMENT 在您的环境或配置文件中
  • 检查 TEMPO_DAILY_LIMIT 如果你今天做了很多交易

“找不到令牌”错误

  • 使用令牌符号(AlphaUSD)或完整地址(0x20c0...0001)
  • 检查中支持的令牌 网络信息 章节

服务器未响应

  • 配置更改后重新启动Claude Desktop
  • 检查日志: tail -f ~/.config/Claude/logs/mcp*.log

许可证

MIT许可证——见 许可证 了解详情。


致谢


连接

建造于 亚伯拉罕 奥诺亚

有问题、反馈或想合作?伸出手来!


Built for the age of agentic commerce