IOTA Agent MCP
MCP 伺服器,用於將 AI 編碼代理連接到 IOTA 區塊鏈。提供 18 種工具,涵蓋錢包操作、Move 智能合約開發和鏈上數據查詢 — 全部透過 stdio 傳輸,且 MCP 進程中不含任何秘密資訊。
工作流程
- 在代理設定中配置 MCP 伺服器 (Claude Code、Cursor、VS Code Copilot)
- 查詢鏈上資料 — 取得物件、交易、代幣、紀元資訊或反編譯模組
- 開發 Move 合約 — 建置、測試(含覆蓋率)、產生未簽署的發布交易
- 簽署並發布 — 產生未簽署交易,透過
iota_wallet_sign_execute提交,檢查iota_wallet_pending確認審批狀態,並使用iota_transaction驗證鏈上結果
簽署流程(人在迴圈)
所有修改狀態的錢包操作都需要人工審批:
- 呼叫
iota_wallet_sign_execute並傳入 base64 編碼的交易位元組 — 建立一個待審請求 - 呼叫
iota_wallet_pending確認請求已排入佇列 - 人工透過代理人錢包伺服器批准 (
iota_wallet_approve) 或拒絕 (iota_wallet_reject) - 批准後,驗證交易是否成功上鏈:使用傳回的摘要呼叫
iota_transaction - 若被拒絕,通知使用者,且未經明確指示不要重試
工具
錢包(8 項工具)
iota_wallet_address— 取得使用中錢包地址iota_wallet_balance— 檢查使用中錢包的 IOTA 餘額iota_wallet_accounts— 列出所有衍生的錢包帳戶iota_wallet_sign_execute— 簽署並執行交易(需要透過代理人錢包伺服器進行人工審批)iota_wallet_pending— 列出等待審批的待簽署請求iota_wallet_approve— 根據 ID 批准一個待審的簽署請求iota_wallet_reject— 根據 ID 拒絕一個待審的簽署請求iota_wallet_switch_network— 在主網、測試網和開發網之間切換
Move CLI(4 項工具)
iota_cli— 執行任何 IOTA CLI 命令(例如client gas、move new my_project)iota_move_build— 編譯 Move 套件並回報建置結果iota_move_test_coverage— 執行 Move 測試並進行覆蓋率分析與彙總iota_move_publish_unsigned— 為代理人錢包簽署產生未簽署的發布交易
鏈上查詢(6 項工具)
iota_object— 根據物件 ID 取得物件資料(擁有者、類型、版本、內容)iota_objects_by_owner— 列出某個地址擁有的所有物件iota_transaction— 根據摘要取得交易詳細資訊(輸入、效應、事件)iota_coins— 取得用於 Gas 估算和代幣查詢的代幣物件iota_epoch_info— 透過 GraphQL 取得當前紀元、檢查點和網路統計資料iota_decompile— 取得並反編譯已部署 Move 模組的 ABI
範例
建置並測試 Move 套件:
iota_move_build(path: "./my_move_project")
→ "BUILDING my_move_project ... Build Successful"
iota_move_test_coverage(path: "./my_move_project")
→ "## Test Results\nRunning Move unit tests ... 5 tests passed\n\n## Coverage Summary\n85.7% coverage"
查詢鏈上物件:
iota_object(object_id: "0xabc123...")
→ { "owner": "0xdef456...", "type": "0x2::coin::Coin<0x2::iota::IOTA>", "version": 42, "content": {...} }
使用錢包簽署發布 Move 套件:
iota_move_publish_unsigned(path: "./my_move_project", gas_budget: "500000000")
→ "AAACAQBk..." (base64 交易位元組)
iota_wallet_sign_execute(tx_bytes: "AAACAQBk...")
→ "Request queued (id: req-1). Awaiting human approval."
配置
設定環境變數以覆蓋預設值:
IOTA_WALLET_SERVER— 代理人錢包伺服器 URL(預設:http://localhost:3847)IOTA_RPC_URL— IOTA JSON-RPC 端點(預設:主網)IOTA_GRAPHQL_URL— IOTA GraphQL 索引器(預設:主網)
設定
npm install -g iota-agent-mcp
// Claude Code: ~/.claude/settings.json
{
"mcpServers": {
"iota": { "command": "iota-agent-mcp" }
}
}
// Cursor / VS Code: .cursor/mcp.json or .vscode/mcp.json
{
"servers": {
"iota": { "command": "npx", "args": ["iota-agent-mcp"] }
}
}