Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Recover stranded native gas: empty a chain's balance to exactly zero on 25 EVM chains.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ZERODUST_API_URL, ZERODUST_API_KEY, ZERODUST_ALLOW_EXECUTE, ZERODUST_SIGNER_MODULE, ZERODUST_KEYSTORE_FILE, ZERODUST_KEYSTORE_PASSWORD_FILE, ZERODUST_KEYSTORE_PASSWORD, ZERODUST_PRIVATE_KEY_FILE, ZERODUST_PRIVATE_KEY, ZERODUST_ALLOWED_DESTINATIONSค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://api.zerodust.xyz/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"zerodust": {
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "ใส่ค่าของคุณ",
"ZERODUST_API_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOW_EXECUTE": "ใส่ค่าของคุณ",
"ZERODUST_SIGNER_MODULE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY_FILE": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOWED_DESTINATIONS": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http zerodust https://api.zerodust.xyz/mcpclaude mcp add zerodust --env ZERODUST_API_URL='ใส่ค่าของคุณ' --env ZERODUST_API_KEY='ใส่ค่าของคุณ' --env ZERODUST_ALLOW_EXECUTE='ใส่ค่าของคุณ' --env ZERODUST_SIGNER_MODULE='ใส่ค่าของคุณ' --env ZERODUST_KEYSTORE_FILE='ใส่ค่าของคุณ' --env ZERODUST_KEYSTORE_PASSWORD_FILE='ใส่ค่าของคุณ' --env ZERODUST_KEYSTORE_PASSWORD='ใส่ค่าของคุณ' --env ZERODUST_PRIVATE_KEY_FILE='ใส่ค่าของคุณ' --env ZERODUST_PRIVATE_KEY='ใส่ค่าของคุณ' --env ZERODUST_ALLOWED_DESTINATIONS='ใส่ค่าของคุณ' -- npx -y @zerodust/mcp-serverเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"zerodust": {
"url": "https://api.zerodust.xyz/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"zerodust": {
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "ใส่ค่าของคุณ",
"ZERODUST_API_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOW_EXECUTE": "ใส่ค่าของคุณ",
"ZERODUST_SIGNER_MODULE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY_FILE": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOWED_DESTINATIONS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"zerodust": {
"type": "http",
"url": "https://api.zerodust.xyz/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"zerodust": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "ใส่ค่าของคุณ",
"ZERODUST_API_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOW_EXECUTE": "ใส่ค่าของคุณ",
"ZERODUST_SIGNER_MODULE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "ใส่ค่าของคุณ",
"ZERODUST_KEYSTORE_PASSWORD": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY_FILE": "ใส่ค่าของคุณ",
"ZERODUST_PRIVATE_KEY": "ใส่ค่าของคุณ",
"ZERODUST_ALLOWED_DESTINATIONS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://api.zerodust.xyz/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ZERODUST_API_URL envZERODUST_ALLOW_EXECUTE envZERODUST_SIGNER_MODULE envZERODUST_KEYSTORE_FILE envZERODUST_KEYSTORE_PASSWORD_FILE envZERODUST_PRIVATE_KEY_FILE envZERODUST_ALLOWED_DESTINATIONS envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub andresdefi ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: ZERODUST_API_KEY, ZERODUST_KEYSTORE_PASSWORD, ZERODUST_PRIVATE_KEY
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.5.1) เข้า registry 36 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, EmbeddedCI BenchPod
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drive a BenchPod hardware-in-the-loop bench: power, flash, UART, I2C, CAN, analog and logic.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Empty a wallet's native gas balance on an EVM chain to exactly 0.
A normal transfer cannot send a whole native balance, because paying for the transfer uses the token being sent. ZeroDust sends all of it, to any address on the same chain or bridged to another chain, and the wallet ends at exactly 0 wei. Live at zerodust.xyz, with an API at https://api.zerodust.xyz and developer docs at zerodust.xyz/docs.
This repository holds the contracts, the TypeScript SDK and the agent packages.
SweepIntent and two EIP-7702 authorizations (one delegating to the ZeroDust contract, one removing it afterwards). A ZeroDust sponsor executes the sweep and pays the gas, reimbursed from the swept balance. The contract runs as the wallet and reverts unless the balance ends at exactly 0.ZeroDustPermissionRouter a one-time allowance per chain; one EIP-712 signature covers every chain. The router redeems it, requires exactly 0, and settles like the contract. 16 chains.ZeroDustGuard; on ZK-stack chains a ZeroDust paymaster pays the gas.The agent packages (@zerodust/mcp-server, @zerodust/ai-sdk, @zerodust/langchain) are paused and deprecated on npm, and the hosted MCP endpoint and agent key signup are switched off. The local MCP server and the SDK still sweep through the public API with your own key; keys issued before keep their rate limits. To sweep, use zerodust.xyz.
| Package | Use |
|---|---|
@zerodust/sdk | TypeScript client and agent (createAgentFromPrivateKey); the website uses it |
@zerodust/mcp-server | MCP server, run locally (paused) |
@zerodust/langchain | LangChain tools (paused) |
@zerodust/ai-sdk | Vercel AI SDK tools (paused) |
| Contract | Address (same on every chain, CREATE2) | Where |
|---|---|---|
ZeroDustSweep (contracts/src/ZeroDustSweepMainnet.sol) | 0x3732398281d0606aCB7EC1D490dFB0591BE4c4f2 | the 55 sponsored chains below |
ZeroDustPermissionRouter v2 (contracts/src/ZeroDustPermissionRouter.sol) | 0x369A97dd256F7eb37fF7116C4EcBd50318eBb286 | 16 chains with MetaMask Advanced Permissions |
ZeroDustGuard (contracts/src/ZeroDustGuard.yul) | 0x2f95e6ED90a7dD67fc3Fae5c5628647E6A83e48e | Blast, Boba |
ZeroDustPaymaster (contracts-zk/) | 0x986e4Bb55AEEE6a8c80c28Ca787b13E216fD25B8 | zkSync Era, Abstract, Lens |
All are immutable: no admin functions, no upgrades, no pause (the paymaster's owner can only change its approver and withdraw its float). The sweep contract's sponsor address is fixed in its bytecode.
55 sponsored chains, generated from the live API (GET https://api.zerodust.xyz/chains):
| Chain | ID | Token | Chain | ID | Token |
|---|---|---|---|---|---|
| Ethereum | 1 | ETH | Arc | 5042 | USDC |
| Optimism | 10 | ETH | Kaia | 8217 | KAIA |
| BNB Chain | 56 | BNB | Base | 8453 | ETH |
| Gnosis | 100 | xDAI | Plasma | 9745 | XPL |
| Unichain | 130 | ETH | 0G | 16661 | 0G |
| Polygon | 137 | POL | Apechain | 33139 | APE |
| Sonic | 146 | S | Mode | 34443 | ETH |
| Manta Pacific | 169 | ETH | Mythos | 42018 | ETH |
| X Layer | 196 | OKB | Arbitrum | 42161 | ETH |
| Fraxtal | 252 | FRAX | Arbitrum Nova | 42170 | ETH |
| Shape | 360 | ETH | Celo | 42220 | CELO |
| World Chain | 480 | ETH | Hemi | 43111 | ETH |
| Endurance | 648 | ACE | Zircuit | 48900 | ETH |
| Stable | 988 | gUSDT | Ink | 57073 | ETH |
| Intuition | 1155 | TRUST | Linea | 59144 | ETH |
| Sei | 1329 | SEI | BOB | 60808 | ETH |
| DATA Network | 1514 | DATA | Berachain | 80094 | BERA |
| Pharos | 1672 | PROS | Codex | 81224 | ETH |
| Reya | 1729 | ETH | Doma | 97477 | ETH |
| Metal L2 | 1750 | ETH | Plume | 98866 | PLUME |
| Soneium | 1868 | ETH | Mitosis | 124816 | MITO |
| Ronin | 2020 | RON | Taiko | 167000 | ETH |
| Morph | 2818 | ETH | HPP | 190415 | ETH |
| RISE | 4153 | ETH | Scroll | 534352 | ETH |
| MegaETH | 4326 | ETH | Gensyn | 685689 | ETH |
| Robinhood Chain | 4663 | ETH | Katana | 747474 | ETH |
| Mantle | 5000 | MNT | Zora | 7777777 | ETH |
| Somnia | 5031 | SOMI |
Regenerate or check this table with node scripts/generate-chain-docs.mjs (--check runs in CI); do not hand-edit it. The 19 direct chains are listed by GET https://api.zerodust.xyz/direct/chains: Flare, Cronos, Rootstock, Telos, XDC, Fuse, Monad, opBNB, Lens, Boba, zkSync Era, Flow EVM, HyperEVM, Metis, Vana, Abstract, Immutable zkEVM, Etherlink and Avalanche. Destinations are any EVM chain a bridge delivers native gas to (GET /destinations?fromChainId=), over 100 from Base.
1% of the swept value, at least $0.05 and at most $0.50; balances under $1 pay 5%, with no minimum. On top: the sweep's gas (and the L1 data fee on rollups) and, cross-chain, the bridge's fee. The signed maxTotalFeeWei caps what can be taken, so a gas spike cannot exceed what you agreed to.
routeHash (keccak256(callData)) binds the signature to that exact call.contracts/ Foundry: ZeroDustSweepMainnet.sol, ZeroDustPermissionRouter.sol, ZeroDustGuard.yul,
tests, deploy scripts and broadcasts (README, SPECIFICATION, DEPLOYMENT, SECURITY) contracts-zk/ ZeroDustPaymaster for ZK-stack chains (Hardhat + zksolc) sdk/ @zerodust/sdk packages/ @zerodust/mcp-server, @zerodust/ai-sdk, @zerodust/langchain skills/ an agent skill for ZeroDust scripts/ generate-chain-docs.mjs
MIT, see LICENSE.