Recover stranded native gas: empty a chain's balance to exactly zero on 25 EVM chains.
What it says
The record the registry holds
Where it answers
https://api.zerodust.xyz/mcp · streamable-http
How you get it
It also ships as a package you run yourself.
@zerodust/mcp-server · npm · 0.3.1
the recordCopied from the official MCP registry, exactly as it holds it.
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.andresdefi/zerodust",
"description": "Recover stranded native gas: empty a chain's balance to exactly zero on 25 EVM chains.",
"repository": {
"url": "https://github.com/andresdefi/zerodust",
"source": "github"
},
"version": "0.3.1",
"packages": [
{
"registryType": "npm",
"identifier": "@zerodust/mcp-server",
"version": "0.3.1",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Custom API URL (defaults to https://api.zerodust.xyz)",
"format": "string",
"name": "ZERODUST_API_URL"
},
{
"description": "API key for higher rate limits. An agent can issue itself one with the zerodust_register_api_key tool, with no human signup step.",
"format": "string",
"isSecret": true,
"name": "ZERODUST_API_KEY"
},
{
"description": "Set to \"true\" to enable the sweep tools. Sweeping moves real funds, so it is off by default and also requires one of the four signing-key variables below.",
"format": "string",
"name": "ZERODUST_ALLOW_EXECUTE"
},
{
"description": "Path or specifier of a module whose default export returns a viem LocalAccount. This is how Turnkey, Privy, AWS KMS or any other custody service is used, without a raw key ever reaching this server. Preferred over ZERODUST_PRIVATE_KEY.",
"format": "string",
"name": "ZERODUST_SIGNER_MODULE"
},
{
"description": "Path to an encrypted V3 keystore (as produced by `cast wallet import` or geth). Requires ZERODUST_KEYSTORE_PASSWORD_FILE or ZERODUST_KEYSTORE_PASSWORD.",
"format": "string",
"name": "ZERODUST_KEYSTORE_FILE"
},
{
"description": "Path to a file containing the keystore password, so the password never enters the MCP config.",
"format": "string",
"name": "ZERODUST_KEYSTORE_PASSWORD_FILE"
},
{
"description": "Keystore password inline. Prefer ZERODUST_KEYSTORE_PASSWORD_FILE.",
"format": "string",
"isSecret": true,
"name": "ZERODUST_KEYSTORE_PASSWORD"
},
{
"description": "Path to a file containing a hex private key, so the key stays out of the MCP config.",
"format": "string",
"name": "ZERODUST_PRIVATE_KEY_FILE"
},
{
"description": "Private key for the agent's own wallet, inline. Used locally to sign the EIP-7702 authorization and EIP-712 sweep intent; never transmitted, only the resulting signatures are sent. The signer-module, keystore and key-file options above keep it out of your config entirely.",
"format": "string",
"isSecret": true,
"name": "ZERODUST_PRIVATE_KEY"
},
{
"description": "Comma-separated allowlist of sweep destinations. When unset, funds can only be swept to the agent's own address.",
"format": "string",
"name": "ZERODUST_ALLOWED_DESTINATIONS"
}
]
}
],
"remotes": [
{
"type": "streamable-http",
"url": "https://api.zerodust.xyz/mcp"
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"statusChangedAt": "2026-07-25T12:48:47.567913Z",
"publishedAt": "2026-07-25T12:48:47.567913Z",
"updatedAt": "2026-07-25T12:48:47.567913Z",
"isLatest": true
}
}
}
Make it installable
Draft an Agent Plugin from this
An MCP server is raw capability: some tools, wired to something. An Agent Plugin is the packaging that says what job it does, what it leaves behind and where it stops. The prompt below carries this record and asks for the packaging; your own assistant writes it, and nothing here is sent anywhere.
What this is
MCP server
application/mcp-server-record+jsonhosted · an address you calllocal · you run it yourselfversion 0.3.1last seen 2026-08-23
These are the publisher's own words, filed by them with the official MCP registry and mirrored here. This catalog did not read them from the publisher and has not run, called or installed anything.