sui-mcp-server

功能最全面的 Sui 区块链 MCP 服务。 提供 53 个工具,支持 GraphQL + JSON-RPC 双传输方式,涵盖钱包、DeFi(Cetus、DeepBook)、SuiNS、质押、验证者、Move 内省以及完整的 Sui RPC 功能。
竞品通常只提供 10–15 个工具来处理基础操作。本服务通过单个软件包覆盖整个 Sui 生态系统。
安装
npx sui-mcp-server
也可以全局安装:
npm install -g sui-mcp-server
sui-mcp-server
配置
添加到 MCP 配置中(claude_desktop_config.json 或 ~/.mcp.json):
{
"mcpServers": {
"sui": {
"command": "npx",
"args": ["-y", "sui-mcp-server"]
}
}
}
无需 API 密钥,可直接连接到 Sui 公共 RPC 节点。
工具(53 个)
钱包管理(4 个)
| 工具 | 描述 | 关键参数 |
|---|
create_wallet | 创建新的 Ed25519 密钥对(仅保存在内存中,不会持久化) | -- |
import_wallet | 从 Bech32 编码的私钥(suiprivkey...)导入 | privateKey |
list_wallets | 列出当前会话中的所有钱包 | -- |
get_balance | 获取任意地址的 SUI 余额 | address |
Coin 操作(4 个)
| 工具 | 描述 | 关键参数 |
|---|
get_all_balances | 获取地址的所有 Coin 余额(SUI + 其他 Coin 类型) | address |
get_coins | 获取地址拥有的指定类型 Coin 对象 | address、coinType |
get_coin_metadata | 获取 Coin 类型的元数据(名称、符号、小数位数) | coinType |
get_total_supply | 获取某种 Coin 类型的总流通供应量 | coinType |
转账(4 个)
| 工具 | 描述 | 关键参数 |
|---|
transfer_sui | 在地址之间转移 SUI(金额单位为 SUI,而非 MIST) | from、to、amount |
transfer_objects | 向接收方转移一个或多个对象 | from、objectIds、to |
merge_coins | 将多个 Coin 合并为一个(处理 Gas 冲突) | walletName、coinType |
split_coins | 将一个 Coin 拆分为多个 Coin | walletName、coinId、amounts |
对象查询(5 个)
| 工具 | 描述 | 关键参数 |
|---|
get_object | 根据 ID 获取任意链上对象的完整详情 | objectId |
get_owned_objects | 获取地址拥有的对象,可选按类型筛选 | address、type |
get_dynamic_fields | 获取对象的动态字段(表、集合) | parentId |
multi_get_objects | 单次调用批量获取最多 50 个对象 | objectIds |
get_object_history | 追踪触及指定对象的所有交易 | objectId |
交易(4 个)
| 工具 | 描述 | 关键参数 |
|---|
get_transaction | 根据摘要获取完整交易详情 | digest |
dry_run_transaction | 执行模拟运行,在不实际执行的情况下预览效果 | txBytes |
query_transactions | 按发送方、接收方、对象或 Move 函数搜索 | filter |
get_total_transactions | 获取网络上的交易总数 | -- |
Move 智能合约(7)
| 工具 | 描述 | 关键参数 |
|---|
move_call | 执行 Move 函数调用 | walletName、target、arguments |
dev_inspect | 模拟 Move 调用,但不执行(无需钱包) | sender、target、arguments |
get_normalized_module | 完整的 Move 模块定义(函数、结构体) | package、module |
get_move_function | Move 函数详情(参数、返回类型、可见性) | package、module、function |
get_move_struct | Move 结构体定义(字段、能力) | package、module、struct |
get_package_modules | 列出 Move 包中的所有模块 | package |
get_move_call_metrics | 全网 Move 调用指标 | -- |
质押(4)
| 工具 | 描述 | 关键参数 |
|---|
get_stakes | 某个地址的所有质押头寸 | address |
request_add_stake | 使用验证者质押 SUI | walletName、amount、validator |
request_withdraw_stake | 提取已质押的 SUI | walletName、stakedSuiId |
get_validators | 完整的验证者集合,包含 APY、佣金和质押金额 | -- |
事件(1)
| 工具 | 描述 | 关键参数 |
|---|
query_events | 按类型、发送方、包或摘要查询链上事件 | filter |
网络与分析(9)
| 工具 | 描述 | 关键参数 |
|---|
switch_network | 在主网、测试网、开发网和本地网之间切换 | network |
get_network_info | 链 ID、周期、Gas 价格、最新检查点 | -- |
get_latest_checkpoint | 最新检查点序列号 | -- |
get_reference_gas_price | 当前以 MIST 为单位的参考 Gas 价格 | -- |
get_checkpoint | 按序列号获取详细检查点数据 | sequenceNumber |
get_epoch_info | 历史周期数据(时间、质押、Gas 摘要) | epoch |
get_protocol_config | Sui 协议配置(限制、功能) | -- |
get_system_state | 完整系统状态:周期、验证者、存储基金 | -- |
get_committee_info | 任意周期的验证者委员会信息 | epoch |
SuiNS 域名服务(4)
| 工具 | 描述 | 关键参数 |
|---|
resolve_name | 将 example.sui 解析为 Sui 地址 | name |
resolve_address | 将地址反向解析为 SuiNS 名称 | address |
suins_get_name_record | 完整域名记录——NFT ID、目标、到期时间、元数据 | name |
suins_get_price | 根据名称长度获取注册和续费价格 | length |
DeFi:Cetus DEX(2)
| 工具 | 描述 | 关键参数 |
|---|
cetus_get_pools | 按代币类型查询 Cetus CLMM 流动性池 | coinTypeA、coinTypeB |
cetus_get_pool | 特定 Cetus 流动性池的详细数据 | poolId |
DeFi:DeepBook(1)
| 工具 | 描述 | 关键参数 |
|---|
deepbook_get_pool | DeepBook v3 订单簿数据——流动性池状态和动态字段 | poolId |
DeFi:代币工具(3)
| 工具 | 描述 | 关键参数 |
|---|
get_token_price | 通过查询 DeFi 流动性池储备获取代币价格 | token |
swap_quote | 通过模拟流动性池交易获取兑换报价 | tokenIn、tokenOut、amount |
list_common_tokens | 常见 Sui 代币及其完整币种类型地址 | -- |
水龙头(1)
| 工具 | 描述 | 关键参数 |
|---|
request_faucet | 从水龙头申请 SUI(仅限开发网和测试网) | address |
为什么选择它?
- 53 个工具,而非 10–15 个。 0xdwong/sui-mcp 等竞品仅涵盖基本操作。此服务还包括 DeFi(Cetus、DeepBook)、SuiNS、Move 内省、质押、验证者和完整分析功能。
- GraphQL + JSON-RPC 双传输方式。 基于官方
@mysten/sui v2.11 SDK 构建,并使用 @mysten/suins 提供名称服务——为 GraphQL 迁移做好了准备。
- 经过端到端测试。 在 devnet、testnet 和 mainnet 上共有 59 项测试通过。钱包创建、转账、质押、DeFi 查询、SuiNS 解析和 Move 检查均已验证。
代币快捷方式
使用符号快捷方式,无需输入完整的代币类型地址:
| 快捷方式 | 完整代币类型 |
|---|
SUI | 0x2::sui::SUI |
USDC | 0xdba34672e...::usdc::USDC |
USDT | 0xc060006111...::coin::COIN |
WETH | 0xaf8cd5edc1...::coin::COIN |
DEEP | 0xdeeb7a4662...::deep::DEEP |
网络
默认从 devnet 启动。可随时使用 switch_network 切换:
| 网络 | RPC 端点 |
|---|
mainnet | https://fullnode.mainnet.sui.io:443 |
testnet | https://fullnode.testnet.sui.io:443 |
devnet | https://fullnode.devnet.sui.io:443 |
localnet | http://127.0.0.1:9000 |
安全
- 密钥仅保存在内存中——绝不写入磁盘,也绝不记录到日志
- 所有错误消息中的私钥均会脱敏
- 速率限制:每分钟 120 次调用(滑动窗口)
- 所有输入均使用 Zod 严格架构进行验证
开发
git clone https://github.com/ExpertVagabond/sui-mcp-server.git
cd sui-mcp-server
npm install
npm run build
npm start
许可证
MIT——Matthew Karsten / Purple Squirrel Media