mcpField
S
SwapChan

SwapChan

远程服务
swapchan.com金融数据0今天更新

关于 SwapChan

SwapChan 是面向 AI Agent 的 MCP 服务,可提供 EVM 同链与跨链兑换报价及未签名交易。它还提供路线比较、代币和链信息及交易状态查询,不会签名或广播交易。

主要功能

  1. 01列出支持的链和代币
  2. 02获取最优路线兑换报价
  3. 03比较同链与跨链路线
  4. 04构建未签名兑换交易
  5. 05查询路线状态

适用场景

  1. 01在 EVM 代币兑换前比较路线
  2. 02准备交易以供另行审核和签名
  3. 03查看路线进度及目标链交易哈希

MCP 相关

SwapChan 通过 Streamable HTTP 或 stdio 向 MCP 客户端提供六种兑换与路线工具。远程 HTTP 支持 API 密钥认证和速率限制;服务不会签名或广播交易。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.swapchan.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@swapchan/mcp — SwapChan MCP 服务

面向 AI Agent 的 Swap-chan:通过 Model Context Protocol 获取同链和跨链 EVM 兑换的最优价格报价、路由比较结果和未签名的兑换交易。

  • 官方 MCP TypeScript SDK v2(@modelcontextprotocol/server 2.3.1,规范版本为 2026-07-28;无状态,也支持 2025 年的客户端)。
  • 传输方式:位于 /mcp 的 Streamable HTTP(远程服务,通过 API 密钥进行身份验证,并针对每个密钥实施速率限制)和 stdio(--stdio,本地)。
  • 通过 HTTP 调用 apps/api,使用 packages/shared/README.md 中冻结的契约。始终不使用链密钥、不签名、不广播。

工具

工具功能
get_supported_chains链及其 chain-chan 吉祥物
get_supported_tokens代币列表,可选 chainId / search
get_quote单条最优路由(扣除 Gas 和费用后的净 USD)
compare_routes所有路由按排名排列;alsoToChainIds 可比较同链与跨链目的地
build_swap_tx最优或指定路由的未签名交易 + 需要时的精确金额 ERC-20 授权交易 + eth_call 模拟(设置 RPC_URL_<chainId> 时)
get_route_statuspending / done / failed / not_found + 目的地交易哈希

金额:将 amount 作为十进制字符串(例如 "1.5",会按代币精度转换)或 amountBaseUnits(wei)传入。滑点以 bps 为单位,默认值为 50,且受 MCP_MAX_SLIPPAGE_BPS 限制(默认值为 300)。所有失败都会以带有易读原因的 isError 工具结果返回。

permit2 目前始终为 null:API 契约 v1 尚不支持 Permit2 类型化数据。待 apps/api 添加后,数据将透传。

运行

pnpm --filter @swapchan/mcp build
SWAPCHAN_API_URL=http://localhost:8787 MCP_API_KEYS=key1,key2 pnpm --filter @swapchan/mcp start   # http://127.0.0.1:8788/mcp
SWAPCHAN_API_URL=http://localhost:8787 node apps/mcp/dist/index.js --stdio                         # stdio
node apps/mcp/dist/mockApi.js                                                                      # fake API on :8787 for local play
环境默认值
SWAPCHAN_API_URLhttp://localhost:8787apps/api 基础 URL(回退至 NEXT_PUBLIC_API_URL)
SWAPCHAN_API_KEY–如果已设置,则作为 x-api-key 发送至上游
MCP_HOST / MCP_PORT127.0.0.1 / 8788在生产环境中使用 TLS 代理时,设置 MCP_HOST=0.0.0.0
MCP_API_KEYS–以逗号分隔的密钥;客户端发送 x-api-key: <key> 或 Authorization: Bearer <key>
MCP_ALLOW_ANONYMOUS关闭允许无密钥 HTTP 请求(按 IP 限速)
MCP_RATE_LIMIT_PER_MIN60每个密钥的令牌桶;429 + Retry-After
MCP_MAX_SLIPPAGE_BPS / MCP_DEFAULT_SLIPPAGE_BPS300 / 50
RPC_URL_<chainId>–启用 build_swap_tx 中的授权额度检查和模拟

客户端配置

Claude Code

claude mcp add --transport http swapchan https://mcp.swapchan.com/mcp --header "x-api-key: YOUR_KEY"

Claude Desktop(claude_desktop_config.json,本地 stdio)

{
  "mcpServers": {
    "swapchan": {
      "command": "node",
      "args": ["/path/to/SwapChan/apps/mcp/dist/index.js", "--stdio"],
      "env": { "SWAPCHAN_API_URL": "https://api.swapchan.com" }
    }
  }
}

Cursor(~/.cursor/mcp.json 或 .cursor/mcp.json)

{
  "mcpServers": {
    "swapchan": { "url": "https://mcp.swapchan.com/mcp", "headers": { "x-api-key": "YOUR_KEY" } }
  }
}

MCP Inspector

npx @modelcontextprotocol/inspector --cli http://127.0.0.1:8788/mcp --transport http --header "x-api-key: key1" --method tools/list

注册表

server.json(schema 2025-12-11,已验证)通过 mcp-publisher publish 将远程服务发布为 io.github.TSavo/swapchan。 托管于 https://mcp.swapchan.com/mcp。

测试

pnpm --filter @swapchan/mcp test 会启动 API 合约的模拟实现(src/mockApi.ts),并通过 SDK Client 使用 Streamable HTTP 驱动真实 HTTP 服务:列出工具、测试每个工具、验证身份验证 401、429 限速、滑点上限、输入验证和上游错误。

评论

支持 Markdown

第一次接触 MCP?

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

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