io.github.andresdefi/zerodust
NPM · @ZERODUST/MCP-SERVER · 2 COMPONENTS · SCANNED AUG 3
Recover stranded native gas: empty a chain's balance to exactly zero on 25 EVM chains.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security87
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (111 of 115), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (111 of 115), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 8 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability74
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1242 tokens (~124/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · @zerodust/mcp-server
claude mcp add andresdefi-zerodust -- npx -y @zerodust/mcp-server
codex mcp add andresdefi-zerodust -- npx -y @zerodust/mcp-server
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"andresdefi-zerodust": {
"type": "local",
"command": [
"npx",
"-y",
"@zerodust/mcp-server"
],
"enabled": true
}
}
} openclaw mcp add andresdefi-zerodust --command npx --arg -y --arg @zerodust/mcp-server
mcp_servers:
andresdefi-zerodust:
command: "npx"
args: ["-y", "@zerodust/mcp-server"] {
"mcpServers": {
"andresdefi-zerodust": {
"command": "npx",
"args": [
"-y",
"@zerodust/mcp-server"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 −3
No change was recorded against any check on this day. Supply Chain Security went from 98 to 87. Other categories moved too: Stability & Change Management rose 4.
- 2 Aug 26 +67
- Provenance: unverified → fail ▼ security
- Known CVEs: unverified → partial ▲ security
- Install scripts: unverified → pass ▲ security
- Malware scan: unverified → pass ▲ security
- License: unverified → pass ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Schema quality: unverified → excellent ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Dependency health: unverified → partial ▲ functional
- Maintenance: unverified → pass ▲ functional
- Stability: unverified → 0.23 ▲ functional
- Licence: MIT functional
- 1 Aug 26 −15
- Tool coverage: 100 → unverified ▼ functional
- 31 Jul 26 +14
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 28 Jul 26 −21
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- 27 Jul 26 27
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/@zerodust/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Dependencies 111 packages
111 packages in the resolved dependency tree · 109 deprecated · 29 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
zerodust_get_agent_address ~94
Show which wallet this ZeroDust server signs with, where its key comes from, and which destinations it is allowed to sweep to. Call this before any sweep to confirm the right wallet is about to be emptied. Requires ZERODUST_ALLOW_EXECUTE=true plus a signing key; without them this tool returns an error and moves no funds. Pass dryRun=true to rehearse the whole flow without moving anything.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
zerodust_get_balances ~144
Find leftover native gas token (ETH, BNB, POL, ...) stranded across every supported EVM chain for one address, and report which of it can be recovered. Normally these balances are unrecoverable: you cannot transfer 100% of a gas token, because paying for the transfer consumes the thing you are transferring, so a remainder is always left behind. This reports what is stuck and what could be moved out. Useful when a wallet has small amounts scattered over many chains, when someone cannot send their full balance, or before closing out, winding down or decommissioning a wallet.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Ethereum wallet address (0x...) |
No output schema declared.
No examples provided.
zerodust_get_chains ~54
List the EVM chains a native gas balance can be emptied to exactly zero on. Returns chain IDs, names, and native tokens. Call this to check whether a specific chain is supported before quoting or sweeping.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
zerodust_get_quote ~131
Price out emptying a chain's native gas balance to exactly zero: how much actually arrives, the full fee breakdown, and whether the balance is even large enough to be worth recovering. Call this before sweeping so the user sees the numbers first. Returns a quote ID; quotes expire after about 60 seconds.
| Name | Type | Req | Description |
|---|---|---|---|
| destination | string | yes | Destination address to receive swept funds |
| fromChainId | integer | yes | Source chain ID to sweep from |
| toChainId | integer | yes | Destination chain ID to receive funds |
| userAddress | string | yes | User's wallet address to sweep from |
No output schema declared.
No examples provided.
zerodust_get_sweep_status ~72
Check how a previously submitted sweep is progressing. Returns the current status (pending, simulating, executing, bridging, completed, failed), the transaction hash once there is one, and the error message if it failed.
| Name | Type | Req | Description |
|---|---|---|---|
| sweepId | string | yes | The sweep ID returned from submitting a sweep |
No output schema declared.
No examples provided.
zerodust_info ~62
Explain how a native gas balance can be emptied to exactly zero, what it costs, and how to set this server up to do it. Call this when asked how ZeroDust works, why a full balance normally cannot be sent, or what sweeping will cost.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
zerodust_list_sweeps ~69
List past sweeps for a wallet address, with status and amounts. Useful for confirming a chain was already emptied before trying again.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Wallet address to list sweeps for |
| limit | integer | — | Maximum number of results (default: 10) |
No output schema declared.
No examples provided.
zerodust_register_api_key ~152
Issue this agent its own ZeroDust API key for higher rate limits, with no human signup step. The read-only tools work without a key, so only call this when rate limits are actually being hit, or when setting up an unattended agent that will run repeatedly. The key is returned once and is not stored by this server - report it to the operator so they can set ZERODUST_API_KEY.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | — | Stable unique identifier for this agent, if it has one |
| contactEmail | string | — | Contact email for support and abuse notices |
| name | string | yes | Human-readable name for this agent, e.g. 'arbitrage-bot-prod' |
No output schema declared.
No examples provided.
zerodust_sweep ~258
Empty one chain completely: move 100% of the native gas token off it and leave the balance at exactly zero. This is the operation an ordinary transfer cannot do, because sending the gas token requires keeping some gas token back to pay for the send. Use when the goal is to close out, wind down, decommission or fully exit a chain, or to recover a leftover or stranded balance that is too small to move normally. Moves real funds. Call zerodust_get_quote first to show the user what they will receive. Requires ZERODUST_ALLOW_EXECUTE=true plus a signing key; without them this tool returns an error and moves no funds. Pass dryRun=true to rehearse the whole flow without moving anything.
| Name | Type | Req | Description |
|---|---|---|---|
| destination | string | — | Destination address (defaults to the agent's own address) |
| dryRun | boolean | — | Rehearse without moving funds (default false). Fetches a real quote and produces the real signatures, then stops before submitting. Use this to prove the setup works before sweeping a real balance. |
| fromChainId | integer | yes | Chain to empty |
| toChainId | integer | yes | Chain to receive funds on (same as fromChainId for a same-chain sweep) |
No output schema declared.
No examples provided.
zerodust_sweep_all ~206
Empty every chain that still holds a native gas balance, consolidating all of it onto one destination chain and leaving each source at exactly zero. Use when the goal is to clean up a wallet across chains, collect scattered leftover gas, or retire a wallet entirely. Moves real funds across multiple chains. Call zerodust_get_balances first to show the user what will be swept. Requires ZERODUST_ALLOW_EXECUTE=true plus a signing key; without them this tool returns an error and moves no funds. Pass dryRun=true to rehearse the whole flow without moving anything.
| Name | Type | Req | Description |
|---|---|---|---|
| destination | string | — | Destination address (defaults to the agent's own address) |
| dryRun | boolean | — | Rehearse without moving funds (default false). Fetches a real quote and produces the real signatures, then stops before submitting. Use this to prove the setup works before sweeping a real balance. |
| toChainId | integer | yes | Chain to consolidate all funds onto |
No output schema declared.
No examples provided.