Solana Blockchain Skill: Query Wallets, Tokens, Txs, and NFTs in USD
Query Solana wallets, tokens, txs, and NFTs in USD.
Written by Neura Market from the official Hermes Agent documentation for Solana. Commands, paths, and version numbers are reproduced from the source unchanged.
Read the official documentationThe Solana Blockchain Skill for Hermes Agent turns plain English questions about Solana into structured on-chain answers. You ask for a wallet balance, a token's price, or a transaction's outcome, and the skill returns data enriched with USD values from CoinGecko. It is a good fit when you need quick, dependency-free lookups without standing up your own indexer or paying for a data API. The entire helper script runs on Python's standard library, so it works almost anywhere Python does.
What it does
This skill exposes eight commands through a single Python script. You can pull a wallet's full portfolio with SOL and SPL token balances priced in USD, inspect a specific transaction by signature, get token metadata and top holders, list recent activity, detect large SOL transfers, check network health, and look up prices by mint or symbol. Every command talks to the Solana RPC endpoint, and most enrich the response with live prices from CoinGecko's free API. No API key is required for either service.
The script lives at ~/.hermes/skills/blockchain/solana/scripts/solana_client.py and is invoked from the command line. The default RPC endpoint is https://api.mainnet-beta.solana.com, which you can override by setting the SOLANA_RPC_URL environment variable.
Before you start
The only prerequisite is Python. The helper script uses urllib, json, and argparse, all part of the standard library, so there are no external packages to install. You will need network access to the Solana RPC endpoint and to CoinGecko's API for price data.
CoinGecko's free tier is rate-limited to roughly 10 to 30 requests per minute. Each token price lookup consumes one request, so a wallet with many tokens may not get prices for all of them. If speed matters more than USD values, pass the --no-prices flag to skip CoinGecko entirely and rely on RPC data alone.
The public Solana RPC also has rate limits. For production use, the source recommends setting SOLANA_RPC_URL to a private endpoint from a provider like Helius, QuickNode, or Triton.
Quick reference
The full command surface, as documented in the source:
python solana_client.py wallet <address> [--limit N] [--all] [--no-prices]
python solana_client.py tx <signature>
python solana_client.py token <mint_address>
python solana_client.py activity <address> [--limit N]
python solana_client.py nft <address>
python solana_client.py whales [--min-sol N]
python solana_client.py stats
python solana_client.py price <mint_or_symbol>
Setup check
Before relying on the skill, verify that Python is available, optionally set a private RPC for better rate limits, and confirm connectivity with the stats command.
python --version
# Optional: set a private RPC for better rate limits
export SOLANA_RPC_URL="https://api.mainnet-beta.solana.com"
# Confirm connectivity
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py stats
The stats command should return current network information. If it errors, check your network connection and the RPC endpoint.
Wallet portfolio
The wallet command returns the SOL balance, SPL token holdings with USD values, NFT count, and a portfolio total. Tokens are sorted by value, dust is filtered out, and well-known tokens are labeled by name (BONK, JUP, USDC, and others).
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
wallet 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM
Flags:
--limit N, show top N tokens (default: 20)--all, show all tokens, no dust filter, no limit--no-prices, skip CoinGecko price lookups (faster, RPC-only)
Output includes: SOL balance plus USD value, a token list with prices sorted by value, dust count, an NFT summary, and the total portfolio value in USD.
Transaction details
The tx command inspects a full transaction by its base58 signature and shows balance changes in both SOL and USD.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
tx 5j7s8K...your_signature_here
Output: slot, timestamp, fee, status, balance changes (SOL + USD), and program invocations.
Token info
The token command returns SPL token metadata, current price, market cap, supply, decimals, mint and freeze authorities, and the top 5 holders.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
token DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263
Output: name, symbol, decimals, supply, price, market cap, and top 5 holders with percentages.
Recent activity
The activity command lists recent transactions for an address. The default is the last 10, with a maximum of 25.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
activity 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM --limit 25
NFT portfolio
The nft command lists NFTs owned by a wallet using a heuristic: SPL tokens with amount equal to 1 and decimals equal to 0.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
nft 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM
Note: Compressed NFTs (cNFTs) are not detected by this heuristic.
Whale detector
The whales command scans the most recent block for large SOL transfers and reports them with USD values.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py \
whales --min-sol 500
Note: this scans the latest block only, so it is a point-in-time snapshot, not a historical search.
Network stats
The stats command gives live Solana network health: current slot, epoch, TPS, supply, validator version, SOL price, and market cap.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py stats
Price lookup
The price command is a quick price check for any token by mint address or known symbol.
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py price BONK
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py price JUP
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py price SOL
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py price DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263
Known symbols: SOL, USDC, USDT, BONK, JUP, WETH, JTO, mSOL, stSOL, PYTH, HNT, RNDR, WEN, W, TNSR, DRIFT, bSOL, JLP, WIF, MEW, BOME, PENGU.
When not to use it
The source does not list explicit alternatives, but the limitations below suggest when this skill is not the right tool. If you need historical transaction data beyond a couple of days, or if you require reliable detection of compressed NFTs, you will need a different approach, such as a dedicated indexer or a specialized NFT API.
Limits and gotchas
The source lists several pitfalls worth knowing before you rely on this skill in production.
- CoinGecko rate-limits, the free tier allows roughly 10 to 30 requests per minute. Price lookups use one request per token. Wallets with many tokens may not get prices for all of them. Use
--no-pricesfor speed. - Public RPC rate-limits, Solana mainnet public RPC limits requests. For production use, set
SOLANA_RPC_URLto a private endpoint (Helius, QuickNode, Triton). - NFT detection is heuristic, amount=1 plus decimals=0. Compressed NFTs (cNFTs) and Token-2022 NFTs will not appear.
- Whale detector scans latest block only, not historical. Results vary by the moment you query.
- Transaction history, public RPC keeps about 2 days. Older transactions may not be available.
- Token names, about 25 well-known tokens are labeled by name. Others show abbreviated mint addresses. Use the
tokencommand for full info. - Retry on 429, both RPC and CoinGecko calls retry up to 2 times with exponential backoff on rate-limit errors.
Verification
Run the stats command to confirm the skill is working. It should print the current Solana slot, TPS, and SOL price.
# Should print current Solana slot, TPS, and SOL price
python ~/.hermes/skills/blockchain/solana/scripts/solana_client.py stats
What pairs with this
The source does not list related skills, but this skill fits naturally into a broader blockchain toolkit. If you are already using Hermes Agent for other on-chain tasks, this skill complements any workflow that needs Solana data without external dependencies. For deeper analysis, you might combine it with other skills that handle Ethereum or general Web3 queries, though the source does not specify them.