THORChain MCP Server
Enables AI assistants to query THORChain blockchain data including transactions, address history, liquidity pool statistics, network metrics, and vault addresses through a standardized interface.
README
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)
npm install -g @missionsquad/mcp-thorchain
From Source
# Clone the repository
git clone https://github.com/MissionSquad/mcp-thorchain.git
cd mcp-thorchain
# Install dependencies
npm install
# Build the project
npm run build
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
{
"mcpServers": {
"thorchain": {
"command": "node",
"args": [
"/absolute/path/to/mcp-thorchain/dist/index.js"
]
}
}
}
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:
npx @modelcontextprotocol/inspector node dist/index.js
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:
{
"txid": "DC85CB537CB6082F61270D70C4058BB111475BCDC403E6E42AAF2106D067E1B4"
}
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:
{
"address": "thor1...",
"limit": 20,
"offset": 0
}
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:
{
"period": "24h"
}
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:
{
"asset": "BTC.BTC"
}
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
npm run build
Watch Mode
npm run watch
Project Structure
mcp-thorchain/
├── src/
│ ├── index.ts # MCP server and tool definitions
│ ├── api-client.ts # THORChain API client with provider rotation
│ └── types.ts # TypeScript type definitions
├── dist/ # Compiled JavaScript output
├── package.json
├── tsconfig.json
└── README.md
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 correct - Ensure the project is built (
npm run build) - Completely quit and restart Claude Desktop
- Check Claude's logs:
- macOS:
~/Library/Logs/Claude/mcp-server-thorchain.log - Windows:
%APPDATA%\Claude\logs
- macOS:
Build Errors
If you encounter build errors after updating dependencies:
# Clean and rebuild
rm -rf dist node_modules package-lock.json
npm install
npm run build
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
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases