Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Recover stranded native gas: empty a chain's balance to exactly zero on 25 EVM chains.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
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_DESTINATIONSLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Funciona en Claude para web, escritorio y móvil:
https://api.zerodust.xyz/mcpAbre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"zerodust": {
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "your-value",
"ZERODUST_API_KEY": "your-value",
"ZERODUST_ALLOW_EXECUTE": "your-value",
"ZERODUST_SIGNER_MODULE": "your-value",
"ZERODUST_KEYSTORE_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD": "your-value",
"ZERODUST_PRIVATE_KEY_FILE": "your-value",
"ZERODUST_PRIVATE_KEY": "your-value",
"ZERODUST_ALLOWED_DESTINATIONS": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add --transport http zerodust https://api.zerodust.xyz/mcpclaude mcp add zerodust --env ZERODUST_API_URL=your-value --env ZERODUST_API_KEY=your-value --env ZERODUST_ALLOW_EXECUTE=your-value --env ZERODUST_SIGNER_MODULE=your-value --env ZERODUST_KEYSTORE_FILE=your-value --env ZERODUST_KEYSTORE_PASSWORD_FILE=your-value --env ZERODUST_KEYSTORE_PASSWORD=your-value --env ZERODUST_PRIVATE_KEY_FILE=your-value --env ZERODUST_PRIVATE_KEY=your-value --env ZERODUST_ALLOWED_DESTINATIONS=your-value -- npx -y @zerodust/mcp-serverCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"zerodust": {
"url": "https://api.zerodust.xyz/mcp"
}
}
}Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"zerodust": {
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "your-value",
"ZERODUST_API_KEY": "your-value",
"ZERODUST_ALLOW_EXECUTE": "your-value",
"ZERODUST_SIGNER_MODULE": "your-value",
"ZERODUST_KEYSTORE_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD": "your-value",
"ZERODUST_PRIVATE_KEY_FILE": "your-value",
"ZERODUST_PRIVATE_KEY": "your-value",
"ZERODUST_ALLOWED_DESTINATIONS": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"zerodust": {
"type": "http",
"url": "https://api.zerodust.xyz/mcp"
}
}
}Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"zerodust": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
],
"env": {
"ZERODUST_API_URL": "your-value",
"ZERODUST_API_KEY": "your-value",
"ZERODUST_ALLOW_EXECUTE": "your-value",
"ZERODUST_SIGNER_MODULE": "your-value",
"ZERODUST_KEYSTORE_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD_FILE": "your-value",
"ZERODUST_KEYSTORE_PASSWORD": "your-value",
"ZERODUST_PRIVATE_KEY_FILE": "your-value",
"ZERODUST_PRIVATE_KEY": "your-value",
"ZERODUST_ALLOWED_DESTINATIONS": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
ChatGPT solo se conecta a servidores en internet:
https://api.zerodust.xyz/mcpLos nombres de los menús pueden variar un poco según el plan y con el tiempo.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
ZERODUST_API_URL envZERODUST_ALLOW_EXECUTE envZERODUST_SIGNER_MODULE envZERODUST_KEYSTORE_FILE envZERODUST_KEYSTORE_PASSWORD_FILE envZERODUST_PRIVATE_KEY_FILE envZERODUST_ALLOWED_DESTINATIONS envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Todavía no hemos leído la lista de herramientas de este servidor; revisamos los endpoints por turnos.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub andresdefi, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Aún sin revisar; revisamos los endpoints por turnos
Aún sin revisar; revisamos los endpoints por turnos
Aún sin revisar; leemos la lista de herramientas cuando revisamos el endpoint
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: ZERODUST_API_KEY, ZERODUST_KEYSTORE_PASSWORD, ZERODUST_PRIVATE_KEY
Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.
El repo de GitHub cambió por última vez –, y la última versión (0.5.1) llegó al registro hace 36 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funcionan las apps que aceptan servidores MCP remotos, como ChatGPT en modo desarrollador.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, AvaHR
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
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.
Read hiring data and create inactive assessment and questionnaire drafts for human review.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
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.