home / mcp / goldrush mcp server
Exposes Covalent's GoldRush APIs as MCP resources and tools with STDIO and HTTP transports.
Configuration
View docs{
"mcpServers": {
"covalenthq-goldrush-mcp-server": {
"url": "http://localhost:3000/mcp",
"headers": {
"GOLDRUSH_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}You are running an MCP server that exposes Covalent's GoldRush APIs as MCP resources and tools. This server lets you access chain data, balances, transactions, NFT data, and more through a flexible MCP interface over STDIO or HTTP, enabling seamless integration with LLM workflows and tooling.
Choose your transport method and connect your MCP client. You can run the server locally and interact with it either through STDIO (recommended for embedded clients) or via HTTP for web integrations.
Prerequisites: install a recent Node.js (v18 or higher) and a modern package manager (npm, yarn, or pnpm). You also need a valid GoldRush API key.
# 1) Clone the project
git clone https://github.com/covalenthq/goldrush-mcp-server.git
cd goldrush-mcp-server
# 2) Install dependencies
npm install
# 3) Build the project
npm run buildSet your API key in the environment before starting the server.
export GOLDRUSH_API_KEY=YOUR_API_KEY_HERE
# On Windows use: set GOLDRUSH_API_KEY=YOUR_API_KEY_HEREStart the server using STDIO transport (default) or HTTP transport if you want an HTTP endpoint.
You can configure clients to connect using either STDIO or HTTP. The STDIO flow starts a child process that communicates via stdin and stdout, while the HTTP flow exposes a REST endpoint at /mcp to receive JSON-RPC style requests.
{
"mcpServers": {
"goldrush": {
"command": "npx",
"args": ["-y", "@covalenthq/goldrush-mcp-server@latest"],
"env": {
"GOLDRUSH_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}# Start the HTTP server on port 3000
node dist/index.js --transport http --port 3000If you want to connect via STDIO, run the same package via a CLI tool as shown in the examples and let your MCP client manage the transport layer.
You can list available tools and call a specific tool using your MCP client. The server exposes Covalent GoldRush tools such as token balances, block data, NFT data, and more. Use your client to request a tool by name and pass the appropriate arguments for your use case.
If the server does not respond, ensure the GOLDRUSH_API_KEY is set correctly and that the server process started without errors. Check that the HTTP port is not blocked by a firewall and that your MCP client is pointed at the correct transport (STDIO or HTTP) and endpoint.
Protect your API key and restrict access to the HTTP endpoint to trusted clients. When using STDIO, ensure the host process that runs the MCP client is secure and that only authorized components can communicate with the server.
The server is implemented in TypeScript and supports modular services for balance, transactions, NFTs, pricing, and more. It includes both static and dynamic MCP resources, with dynamic resources fetching real-time data from Covalent on each request.
An LLM-based application starts and connects to the MCP server. It uses tools like transaction_summary or token_balances to gather data, which is then returned to the model to inform the conversation. The server handles the data fetch from Covalent and returns structured results suitable for context.
Prerequisites include Node.js v18+, npm/yarn/pnpm, and a valid API key. Build and run steps are provided to enable rapid experimentation during development.
Fetch balances for each active child address derived from a Bitcoin HD wallet, providing total, available balances, and transaction history.
Fetch Bitcoin balance for a non-HD address with optional price conversion and metadata.
Fetch transactions for a Bitcoin address with pagination and full details.
Fetch and render a single block for a block explorer, given chain and height.
Retrieve block heights within a date range with optional pagination.
Render token transfer events for an address or token, with optional price quotes and filters.
Get real-time gas estimates for different transaction speeds on a network.
Render daily portfolio value for an address across a timeframe.
Fetch historical token balances for an address at a specific block or date.
Get historical prices for a token over a date range.
Decode and return event logs for a contract address within a block range.
Decode logs for a specific topic hash across contracts on a chain.
Summarize wallet activity across supported blockchains.
Get token balances across multiple blockchains for a wallet.
Fetch transactions for multiple addresses across multiple blockchains.
Get the native token balance for a wallet on a specific chain.
Verify NFT ownership for a wallet within a collection.
List all NFTs owned by a wallet on a chain.
Get spot prices for a pool contract across Uniswap variants.
List token approvals for a wallet across contracts with risk data.
Fetch native and ERC20 token balances for a wallet.
Paginated list of current or historical holders for a token.
Fetch a single transaction with optional internal/state/input data details.
Fetch earliest/latest transactions and count for a wallet.
Fetch recent transactions involving a wallet.
Fetch all transactions in a block with optional logs.