mcp-thorchain
A Model Context Protocol (MCP) server providing access to THORChain blockchain data. This server enables AI assistants like Claude to query THORChain transactions, pools, network statistics, and vault addresses through a standardized interface.
Features
Transaction Lookup: Get detailed information about specific THORChain transactions
Address History: Query transaction history for any blockchain address
Pool Statistics: Access liquidity pool data including prices, APY, and trading volume
Pool Details: Get in-depth information for specific liquidity pools
Network Stats: Retrieve network-wide statistics including swap volumes and active users
Vault Addresses: Get current inbound addresses for depositing funds to THORChain
Requirements
Node.js >= 20.0.0
npm or compatible package manager
Installation
From npm (Recommended)
From Source
Configuration
Claude Desktop
To use this MCP server with Claude Desktop, add the following configuration to your Claude Desktop config file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Replace /absolute/path/to/mcp-thorchain with the actual path to your installation directory.
After adding the configuration:
Completely quit Claude Desktop (Cmd+Q on macOS, or via System Tray on Windows)
Reopen Claude Desktop
The THORChain tools should now be available
Testing with MCP Inspector
You can test the server without Claude Desktop using the MCP Inspector:
This will open a web interface (usually at http://localhost:5173) where you can:
View all available tools
Test tool execution with custom parameters
See request/response data
Debug server behavior
Available Tools
1. get-transaction
Get detailed information about a specific THORChain transaction.
Parameters:
txid(string, required): Transaction hash (64-character hexadecimal string)
Example:
2. get-address-history
Retrieve transaction history for a blockchain address.
Parameters:
address(string, required): Blockchain address to querylimit(number, optional): Maximum transactions to return (default: 10, max: 50)offset(number, optional): Pagination offset (default: 0)
Example:
3. get-pools
Get statistics for all THORChain liquidity pools.
Parameters:
period(enum, optional): Time period - "1h" | "24h" | "7d" | "30d" | "90d" | "365d" | "all" (default: "24h")
Example:
4. get-pool-detail
Get detailed information for a specific liquidity pool.
Parameters:
asset(string, required): Pool asset identifier (e.g., "BTC.BTC", "ETH.ETH")
Example:
5. get-network-stats
Get overall THORChain network statistics.
Parameters: None
6. get-vault-addresses
Get current THORChain vault addresses for depositing funds.
Parameters: None
API Providers
The server automatically rotates between multiple API providers for redundancy:
Primary: Nine Realms (https://midgard.ninerealms.com, https://thornode.ninerealms.com)
Fallback: Liquify (https://midgard.thorchain.liquify.com, https://thornode.thorchain.liquify.com)
If the primary provider fails or times out, the server automatically tries the fallback provider.
Development
Build
Watch Mode
Project Structure
Technical Details
Dependencies
@modelcontextprotocol/sdk@1.22.0: MCP server SDKzod@3.23.8: Schema validation
Type Safety
The project uses TypeScript with strict mode enabled. Due to a known incompatibility between Zod v3.23.8 (bundled with the MCP SDK) and TypeScript's type inference, the main server file uses @ts-nocheck. Runtime validation and type safety are maintained through Zod schemas.
Error Handling
All API requests include 5-second timeouts
Automatic provider failover on connection errors
Comprehensive error messages with context
Custom
THORChainAPIErrorclass for API-specific errors
Troubleshooting
Tools Not Appearing in Claude
Verify the path in
claude_desktop_config.jsonis absolute and correctEnsure the project is built (
npm run build)Completely quit and restart Claude Desktop
Check Claude's logs:
macOS:
~/Library/Logs/Claude/mcp-server-thorchain.logWindows:
%APPDATA%\Claude\logs
Build Errors
If you encounter build errors after updating dependencies:
Connection Timeouts
The server has a 5-second timeout for each API request. If you're experiencing frequent timeouts:
Check your internet connection
Verify the API providers are operational
The server will automatically try the fallback provider
API Reference
For detailed THORChain API documentation, see the THORChain API Handbook.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Links
This server cannot be installed