mcp-server-helius
Language:
TypeScript
Stars:
5
Forks:
1
MCP Helius
This repository contains a Model Context Protocol (MCP) server that provides Claude with access to Solana blockchain data via the Helius API. The server enables Claude to perform operations like checking wallet balances, getting blockchain information, and interacting with tokens and NFTs on the Solana blockchain.
Overview
The MCP server exposes the following tools to Claude:
Basic Blockchain Operations
helius_get_balance
: Get the balance of a Solana wallet addresshelius_get_block_height
: Get the current block height of the Solana blockchainhelius_get_slot
: Get the current slot of the Solana blockchainhelius_get_latest_blockhash
: Get the latest blockhash from the Solana blockchainhelius_get_transaction
: Get a transaction by its signaturehelius_get_account_info
: Get account information for a Solana addresshelius_get_signatures_for_address
: Get transaction signatures for a Solana addresshelius_get_multiple_accounts
: Get information about multiple Solana accountshelius_get_program_accounts
: Get all accounts owned by a program
Token Operations
helius_get_token_accounts_by_owner
: Get token accounts owned by a Solana addresshelius_get_token_supply
: Get the supply of a tokenhelius_get_token_account_balance
: Get the balance of a token accounthelius_get_token_accounts
: Get token accounts by mint or owner
NFT and Digital Assets
-
helius_get_asset
: Get details of a digital asset by its ID -
helius_get_rwa_asset
: Get details of a real-world asset by its ID -
helius_get_asset_batch
: Get details of multiple assets by their IDs -
helius_get_asset_proof
: Get proof for a digital asset -
helius_get_assets_by_group
: Get assets by group key and value -
helius_get_assets_by_owner
: Get assets owned by a specific address -
helius_get_assets_by_creator
: Get assets created by a specific address -
helius_get_assets_by_authority
: Get assets by authority address- `helius_search_assets`: Search for assets using various filters (ownerAddress, creatorAddress, compressed, etc.)
-
helius_get_signatures_for_asset
: Get signatures associated with an asset -
helius_get_nft_editions
: Get NFT editions for a master edition
Blockchain System Information
helius_get_minimum_balance_for_rent_exemption
: Get the minimum balance required for rent exemptionhelius_get_inflation_reward
: Get inflation rewards for a list of addresseshelius_get_epoch_info
: Get information about the current epochhelius_get_epoch_schedule
: Get the epoch schedulehelius_get_leader_schedule
: Get the leader schedule for an epochhelius_get_recent_performance_samples
: Get recent performance sampleshelius_get_version
: Get the version of the Solana node
Transaction and Fee Methods
helius_get_priority_fee_estimate
: Get priority fee estimate for a transactionhelius_poll_transaction_confirmation
: Poll for transaction confirmation statushelius_send_jito_bundle
: Send a bundle of transactions to Jitohelius_get_bundle_statuses
: Get statuses of Jito bundleshelius_get_fee_for_message
: Get the fee for a serialized messagehelius_execute_jupiter_swap
: Execute a token swap using Jupiter
Prerequisites
- Node.js (v16 or higher)
- A Helius API key (get one at https://dev.helius.xyz/)
- Claude Desktop application
Installation
-
Clone this repository:
git clone https://github.com/dcSpark/mcp-server-helius.git cd mcp-server-helius
-
Install dependencies:
npm ci
-
Build the project:
npm run build
Configuration
Configure Claude Desktop
To configure Claude Desktop to use this MCP server:
-
Open Claude Desktop
-
Navigate to the Claude Desktop configuration file:
-
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
-
Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux: `~/.config/Claude/claude_desktop_config.json`
-
-
Add the MCP server configuration:
{
"mcpServers": {
"mcp-server-helius": {
"command": "node",
"args": [
"/path/to/your/mcp-server-helius/build/index.js"
],
"env": {
"HELIUS_API_KEY": "your-helius-api-key"
}
}
}
}
Running Locally
HELIUS_API_KEY=your-helius-api-key node build/index.js
Usage
Once configured, restart Claude Desktop. Claude will now have access to the Solana blockchain tools. You can ask Claude to:
-
Check a wallet balance:
What's the balance of the Solana wallet address 5YNmS1R9nNSCDzb5a7mMJ1dwK9uHeAAF4CmPEwKgVWr8?
-
Get the current block height:
What's the current block height on Solana?
-
Get information about NFTs:
What NFTs does the wallet address 5YNmS1R9nNSCDzb5a7mMJ1dwK9uHeAAF4CmPEwKgVWr8 own?
Claude will use the MCP server to fetch this information directly from the Solana blockchain via Helius.
Development
Adding New Tools
To add new tools to the MCP server:
- Define the tool in
src/tools.ts
- Create a handler function in the appropriate handler file
- Add the handler to the
handlers
object insrc/tools.ts
Building
npm run build
License
MIT