mcpField
B
base-gas-mcp

base-gas-mcp

本地服务
base-gas-x402.vercel.app金融数据02 周前更新

关于 base-gas-mcp

base-gas-mcp 是供 Agent 和客户端查询 Base 实时 Gas 价格、交易成本及时间趋势的 MCP 服务。它还比较四条链的费用,并通过 x402 按次以 USDC 支付数据调用。

主要功能

  1. 01Base 实时费用与美元成本
  2. 02四链交易费用比较
  3. 03Gas 历史与价格水平
  4. 04最便宜的交易时段
  5. 05通过 x402 支付 USDC

适用场景

  1. 01估算 Base 交易的美元成本
  2. 02比较支持链上的交易费用
  3. 03判断是否等待 Gas 降低
  4. 04寻找批量交易的低价时段

MCP 相关

向 MCP 客户端提供 Gas 数据和服务状态工具。数据调用通过 x402 以 USDC 结算;状态查询免费。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"memosr-base-gas": {
"command": "npx",
"args": [
"-y",
"base-gas-mcp"
],
"env": {
"BUYER_PRIVATE_KEY": "<BUYER_PRIVATE_KEY>",
"MAX_USD_PER_CALL": "<MAX_USD_PER_CALL>"
}
}
}
}
启动命令npx -y base-gas-mcp
需要配置的环境变量
BUYER_PRIVATE_KEY密钥Private key of a Base mainnet wallet holding a little USDC. Pays $0.002 to $0.02 per call. Use a separate wallet with small funds.
MAX_USD_PER_CALLRefuse any single payment above this many USD. Default 0.05.

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

安装包
npmbase-gas-mcp0.3.2

工具

5

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

参数类型必填说明
gasLimitinteger否用于估算费用的 Gas 单位。ETH 转账为 21000(默认值),ERC-20 转账约为 65000,NFT 铸造约为 85000,Uniswap 兑换约为 180000,合约部署约为 1500000。

详细介绍

base-gas-mcp

一个用于获取 Base 实时 Gas 数据的 MCP 服务,通过 x402 支付协议按次使用 USDC 付费。无需 API 密钥或账户:Agent 使用你控制的钱包支付一小部分美元。

它可以回答 RPC 调用无法回答的问题:一笔交易的美元成本是多少、当前哪条链最便宜、Gas 费是高还是低,以及哪些时段应当避开。

工具

工具价格返回内容
get_base_gas~$0.002Base 基础费、低/中/高优先费,以及一笔交易以 USD、ETH 和 gwei 计价的成本,还有可直接用于签名的 maxFeePerGas / maxPriorityFeePerGas(wei)。gasLimit 可选。
compare_gas_costs~$0.01在 Base、OP Mainnet、Arbitrum One 和 Ethereum 上执行同一笔交易的成本,以 USD 计价,按价格从低到高排列。gasLimit 可选。
get_gas_history~$0.01过去 hours 小时的 Base Gas 费(默认 24 小时):最低值/最高值/平均值/中位数,以及当前 Gas 费是便宜、正常、昂贵还是平稳。
get_cheapest_window~$0.02根据 7 天的历史数据,给出应当避开的时段、费用最低的时段(UTC),以及以百分比和 USD 计的节省金额。
get_service_status免费服务是否正常运行,以及已收集的历史数据量。无需钱包。

价格由端点设定,并发布在其 OpenAPI 文档中。 每个付费结果都包含结算交易哈希。

gasLimit 参考:ETH 转账为 21000(默认值),ERC-20 转账约 65000,NFT 铸造约 85000,Uniswap 兑换约 180000,合约部署约 1500000。

安全

  • 服务只会向一个源站付款,由你设置(BASE_GAS_ORIGIN,默认使用在线的 base-gas-x402 API)。没有任何工具会接受 URL,因此模型读取的文本无法将你的钱包重定向到其他付费端点。
  • 单笔支付限额。 任何超过 MAX_USD_PER_CALL(默认值为 0.05)的支付都会在签名前被拒绝。
  • 支付使用 EIP-3009 授权:钱包只需要 USDC,无需 ETH。
  • 使用一个单独的钱包,仅存入少量美元。密钥从环境变量中读取,用于签署支付,绝不会记录或返回。

付费数据源是配套项目: base-gas-x402。

安装

要求

  • Node.js 18 或更高版本(需要内置的 fetch)
  • 一个持有少量 USDC 的 Base 主网钱包(无需 ETH)
git clone https://github.com/memosr/base-gas-mcp.git
cd base-gas-mcp
npm install

通过 MCP 客户端的配置传入 BUYER_PRIVATE_KEY(见下文)。服务不会读取 .env 文件。

也可以直接通过 npx base-gas-mcp 运行已发布的软件包(见下方的配置代码块)。

获取买方密钥

BUYER_PRIVATE_KEY 是 Base 主网钱包的私钥。创建一个新钱包(例如使用 MetaMask、Coinbase Wallet 或 cast wallet new),导出其私钥,并在 Base 上为钱包充值几美元的 USDC。

警告: 这是一个能够控制真实资金的真实私钥。 请使用单独的临时钱包,只存放少量资金。切勿重复使用持有大量资金的钱包密钥、切勿将其提交到 git,也切勿将其粘贴到聊天中。服务只读取该密钥以签署支付,绝不会记录或返回。

环境变量
变量必填说明
BUYER_PRIVATE_KEY是已充值的 Base 主网钱包的 32 字节十六进制私钥(64 个十六进制字符,可选 0x 前缀)。
MAX_USD_PER_CALL否拒绝任何超过此 USD 金额的单笔支付。默认值为 0.05。
BASE_GAS_ORIGIN否服务唯一会付款的源站。默认为 https://base-gas-x402-production.up.railway.app。
BUILDER_CODE否附加到支付载荷中用于归因的 Base Builder Code。默认为 bc_lhfd8zad。

配置

Claude Desktop

添加到 claude_desktop_config.json(macOS:~/Library/Application Support/Claude/claude_desktop_config.json,Windows:%APPDATA%\Claude\claude_desktop_config.json),然后重启 Claude Desktop:

{
  "mcpServers": {
    "base-gas": {
      "command": "npx",
      "args": ["-y", "base-gas-mcp"],
      "env": {
        "BUYER_PRIVATE_KEY": "0xYOUR_FUNDED_BASE_MAINNET_PRIVATE_KEY"
      }
    }
  }
}

如需从本地克隆运行,请将 command 指向 Node,并使用服务的绝对路径:

{
  "mcpServers": {
    "base-gas": {
      "command": "node",
      "args": ["/absolute/path/to/base-gas-mcp/src/server.js"],
      "env": {
        "BUYER_PRIVATE_KEY": "0xYOUR_FUNDED_BASE_MAINNET_PRIVATE_KEY"
      }
    }
  }
}
Claude Code
claude mcp add base-gas \
  --env BUYER_PRIVATE_KEY=0xYOUR_FUNDED_BASE_MAINNET_PRIVATE_KEY \
  -- npx -y base-gas-mcp

或者从本地克隆运行:

claude mcp add base-gas \
  --env BUYER_PRIVATE_KEY=0xYOUR_FUNDED_BASE_MAINNET_PRIVATE_KEY \
  -- node /absolute/path/to/base-gas-mcp/src/server.js

服务只读取客户端传递的环境变量设置。它不会加载 .env 文件(自 0.3.1 起),因此客户端打开的任何文件夹中的 .env 都无法更改钱包付款的目标。

使用示例

配置完成后,向你的 Agent 提问:

  • “现在在 Base 上进行一次 Uniswap 兑换要花多少钱(美元)?”(使用 get_base_gas,gasLimit 为 180000)
  • “此刻代币转账在 Base 还是 Arbitrum 上更便宜?”(使用 compare_gas_costs)
  • “现在 Base 的 Gas 费高吗?还是我应该等一等?”(使用 get_gas_history)
  • “我应该什么时候安排一批 Base 交易?”(使用 get_cheapest_window)

以上每项操作都会产生一次付费调用。请先免费检查 get_service_status。

技术栈

  • Node.js(ESM),通过 stdio 传输提供服务
  • 使用 @modelcontextprotocol/sdk 构建 MCP 服务
  • 使用 @x402/fetch、@x402/evm 和 @x402/extensions 实现付款封装的 fetch、EIP-3009 精确付款方案和构建者代码归属
  • 使用 viem 处理账户和签名
  • 使用 zod 进行输入验证

许可证

MIT,版权所有 (c) 2026 memosr。

评论

支持 Markdown

第一次接触 MCP?

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

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