RefundYourSOL
Provides tools for Solana wallet management and cleanup, including scanning for reclaimable SOL, closing empty token accounts, burning dust tokens, and trading tokens across 12+ decentralized exchanges (DEXes).
refundyoursol
MCP (Model Context Protocol) server for RefundYourSOL — the most widely used Solana wallet cleanup tool with 500K+ wallets processed.
Provides AI agents with tools for Solana wallet cleanup, token trading on 12+ DEXes, and token metadata/pricing.
Tools
Always Available (no private key needed)
Tool | Description |
| Scan a wallet for reclaimable SOL locked in empty token accounts (~0.002 SOL each) |
| Detect which DEX a token trades on + price, market cap, liquidity |
| Get metadata and pricing for one or more tokens |
| Get current SOL/USD price |
Require Private Key
Tool | Description |
| Close empty token accounts and reclaim rent SOL |
| Burn dust tokens and close accounts in one step |
| Buy or sell tokens on 12+ DEXes (PumpSwap, Raydium, Meteora, Orca, etc.) |
Related MCP server: trade-router-mcp
Quick Start
Claude Desktop / Cursor / Windsurf
Add to your MCP config (claude_desktop_config.json or equivalent):
{
"mcpServers": {
"refundyoursol": {
"command": "npx",
"args": ["-y", "refundyoursol"],
"env": {
"SOLANA_PRIVATE_KEY": "your-base58-private-key",
"SOLANA_RPC_URL": "https://your-rpc-endpoint.com"
}
}
}
}Claude Code CLI
claude mcp add refundyoursol \
-e SOLANA_PRIVATE_KEY=your-base58-key \
-e SOLANA_RPC_URL=https://your-rpc.com \
-- npx -y @refundyoursol/mcpScan-Only Mode (no private key)
Omit SOLANA_PRIVATE_KEY to run in scan-only mode with 4 read-only tools:
{
"mcpServers": {
"refundyoursol": {
"command": "npx",
"args": ["-y", "refundyoursol"]
}
}
}Configuration
Variable | Default | Description |
| — | Base58 private key for signing (optional — scan-only mode if omitted) |
|
| Solana RPC endpoint |
|
| RefundYourSOL backend |
| — | API key for token metadata/pricing endpoints |
|
| Priority fee in microLamports |
Usage Examples
Once connected, ask your AI assistant:
"Scan my wallet for reclaimable SOL"
"Close all empty token accounts in my wallet"
"What DEX does this token trade on? [mint address]"
"Buy 0.1 SOL of [token] on Solana"
"Sell 100% of [token] with Jito MEV protection"
"What's the current SOL price?"
Safety
Dry-run first:
close_accountsandburn_and_closeuse a two-step pattern — first call shows a preview, second call with the execution token confirmsSafety Burns: Accidental burns can be reverted (unique to RefundYourSOL)
Non-custodial: Keys are used locally for signing only, never sent to any server
Execution tokens expire: 60-second TTL prevents stale operations
Features vs Competitors
Feature | RefundYourSOL MCP | UnclaimedSOL MCP |
Wallet scan | Yes | Yes |
Close accounts | Yes | Yes |
Burn & close | Yes | Yes |
Safety burns (revertible) | Yes | No |
Token trading (12+ DEXes) | Yes | No |
DEX detection | Yes | No |
Token metadata/pricing | Yes | No |
Fee matching (down to 2%) | Yes | No (fixed 5%) |
Fee Payer mode (0 SOL) | Yes | No |
Links
Website: refundyoursol.com
API Docs: refundyoursol.com/docs
Blog: refundyoursol.com/blog
Twitter/X: @refundyoursol
Telegram: t.me/refundyoursol
License
MIT
Available Tools
4 toolsdetect_dexA
Detect which DEX/AMM a Solana token trades on. Returns DEX name, pool address, token name/symbol, price, market cap, and liquidity. Supports PumpSwap, Raydium, Meteora, Orca, and more.
| Name | Required | Description | Default |
|---|---|---|---|
| mint | Yes | Token mint address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses the return data (DEX name, pool address, token details, price, market cap, liquidity) and supported DEXs, which is useful behavioral context. However, it doesn't mention error handling, rate limits, authentication needs, or whether the operation is read-only/destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste: first states purpose and return values, second lists supported DEXs. Every element adds value, and it's front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 1 parameter with full schema coverage, no annotations, and no output schema, the description is reasonably complete: it explains what the tool does, what it returns, and supported DEXs. However, for a tool returning financial data, it could better address accuracy, freshness, or limitations (e.g., 'and more' is vague).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the mint parameter fully. The description adds no additional parameter semantics beyond what the schema provides (e.g., no examples or constraints on mint format beyond base58). Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('detect which DEX/AMM a Solana token trades on') and resource ('Solana token'), distinguishing it from siblings like get_sol_price (price only), get_token_info (general token data), and scan_wallet (wallet analysis). It explicitly lists supported DEXs, making the scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (identifying trading venues for Solana tokens) but doesn't explicitly state when to use this tool versus alternatives like get_token_info. It mentions supported DEXs, which helps scope applicability, but lacks explicit exclusions or comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sol_priceA
Get the current SOL/USD price.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the tool's behavior as fetching a current price, implying it's a read-only operation with no destructive effects. However, it lacks details on data sources, rate limits, error handling, or response format, leaving gaps in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function with no unnecessary words. It is front-loaded and wastes no space, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is adequate but minimal. It covers the basic purpose but lacks context on usage, behavioral traits like reliability or latency, and output details, which could be helpful for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately adds no parameter details, focusing only on the tool's purpose. This meets the baseline for tools with no parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Get') and resource ('current SOL/USD price'), with no ambiguity. It distinguishes itself from siblings like 'detect_dex', 'get_token_info', and 'scan_wallet' by focusing solely on price retrieval for a specific cryptocurrency pair.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios where it's appropriate (e.g., real-time price checks) or when other tools might be better (e.g., using 'get_token_info' for broader token data).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_infoA
Get metadata and pricing for one or more Solana tokens. Returns name, symbol, image, USD price, DEX, market cap, and liquidity. Pass a single mint or array of up to 10.
| Name | Required | Description | Default |
|---|---|---|---|
| mints | Yes | Token mint address(es) — single string or array of up to 10 mints |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the return format (name, symbol, image, USD price, DEX, market cap, liquidity) and the array limit (up to 10 mints), which are useful behavioral traits. However, it doesn't mention rate limits, authentication needs, error handling, or whether this is a read-only operation (though implied by 'Get').
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. The first sentence states purpose and return values, the second specifies parameter handling. Every word contributes directly to tool understanding, and information is front-loaded appropriately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no annotations and no output schema, the description provides good coverage: it explains what the tool does, what it returns, and parameter constraints. The main gap is lack of explicit behavioral context (e.g., rate limits, errors), but given the tool's apparent simplicity, this is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the 'mints' parameter thoroughly. The description adds marginal value by restating the array limit ('up to 10') and clarifying it can accept 'a single mint or array', but doesn't provide additional semantic context beyond what's in the schema. Baseline is 3, but the slight reinforcement earns a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get metadata and pricing'), the resource ('Solana tokens'), and the scope ('one or more'). It distinguishes from sibling tools like 'get_sol_price' (specific to SOL) and 'detect_dex' (different functionality). The verb+resource combination is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by specifying what it returns (metadata and pricing for Solana tokens), but doesn't explicitly state when to use it versus alternatives like 'get_sol_price' or 'detect_dex'. No guidance on prerequisites, error conditions, or when-not-to-use scenarios is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scan_walletA
Scan a Solana wallet for reclaimable SOL locked in empty token accounts. Returns count of closeable accounts and estimated SOL recoverable. Free, read-only — no private key needed.
| Name | Required | Description | Default |
|---|---|---|---|
| wallet | Yes | Solana wallet address (base58) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively communicates key behavioral traits: the operation is free, read-only, doesn't require private keys, and returns specific metrics (count and estimated SOL). It doesn't mention rate limits, error conditions, or performance characteristics, but provides sufficient core information for a tool with one parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise and front-loaded. The first sentence establishes the core purpose, the second specifies the return values, and the third provides important usage context. Every sentence earns its place with zero wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single parameter, no output schema, no annotations), the description provides good completeness. It explains what the tool does, what it returns, and key behavioral constraints. The main gap is the lack of output schema, but the description adequately describes the return values (count and estimated SOL).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'wallet' already documented as 'Solana wallet address (base58)' with length constraints. The description doesn't add any additional parameter semantics beyond what the schema provides, so it meets the baseline score of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Scan a Solana wallet'), target resource ('reclaimable SOL locked in empty token accounts'), and output ('Returns count of closeable accounts and estimated SOL recoverable'). It distinguishes itself from sibling tools by focusing on wallet scanning for reclaimable SOL rather than DEX detection, price checking, or token information retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool: to find reclaimable SOL in empty token accounts. It explicitly states 'Free, read-only — no private key needed,' which helps determine appropriate usage scenarios. However, it doesn't explicitly mention when NOT to use it or name specific alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.0.0- First observed
detect_dex - First observed
get_sol_price - First observed
get_token_info - First observed
scan_wallet
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: detect_dex identifies trading platforms for tokens, get_sol_price provides SOL/USD pricing, get_token_info retrieves metadata for specific tokens, and scan_wallet finds reclaimable SOL in wallets. There is no overlap or ambiguity in their functions.
Three tools follow a consistent verb_noun pattern (detect_dex, get_sol_price, get_token_info), while scan_wallet uses a verb_noun format but deviates slightly with 'scan' instead of 'get' or 'detect'. This minor inconsistency does not hinder readability.
With 4 tools, the server is well-scoped for its purpose of Solana token and wallet utilities. Each tool earns its place by covering distinct aspects like DEX detection, pricing, token metadata, and wallet scanning, without being overly sparse or bloated.
The tools cover key operations for Solana token analysis and wallet management, including detection, pricing, metadata retrieval, and recovery. A minor gap exists in lacking direct transaction or refund execution tools, but the provided set supports core workflows effectively.
Maintenance
Related MCP Connectors
Non-custodial DeFi tools for AI agents on Solana: swaps, perps, lending, staking, equities.
Solana onchain intelligence for AI agents: wallet risk, due-diligence, perps funding, smart money.
Solana address risk grades and token scans for AI agents. Pay-per-call via x402 (USDC on Base).
Non-custodial Solana toolkit: rug-checks, swaps, portfolios, token minting, multisig, Arweave.
Related MCP Servers
- AlicenseCqualityDmaintenanceEnables AI agents to interact with cryptocurrency ecosystems through wallet management, trading operations (swaps, DCA, limit orders), staking, and multi-chain support starting with Solana.37GPL 3.0

trade-router-mcpofficial
AlicenseBqualityDmaintenanceNon-custodial Solana swap & limit order engine for AI agents. 21 tools - swap, limit, trailing, TWAP, DCA, combo orders - across Raydium, PumpSwap, Orca, Meteora. Jito MEV-protected execution. Ed25519-verified server messages. Private key never leaves the process.2192 npm3MIT- AlicenseAqualityDmaintenanceEnables AI agents to read chain data, execute transactions, swap tokens, and manage wallets on Solana through 38 tools across 7 modules. Supports write operations with a private key and includes built-in prompts for common workflows.381MIT
- AlicenseBqualityCmaintenanceEnables AI agents to interact with the Solana blockchain for DeFi, NFTs, and Web3 tasks through 38 tools, 10 prompts, and 7 modules.38MIT