GoldRush

Exposes Covalent's GoldRush APIs as MCP resources and tools with STDIO and HTTP transports.
  • typescript

11

GitHub Stars

typescript

Language

3 months ago

First Indexed

3 weeks ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs

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.

How to use

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.

How to install

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 build

Set 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_HERE

Start the server using STDIO transport (default) or HTTP transport if you want an HTTP endpoint.

Additional configuration and usage notes

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.

Configuration examples

{
  "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 3000

If 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.

Example client interactions

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.

Troubleshooting

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.

Security considerations

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.

Project structure overview

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.

Example LLM flow

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.

Development

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.

Available tools

bitcoin_hd_wallet_balances

Fetch balances for each active child address derived from a Bitcoin HD wallet, providing total, available balances, and transaction history.

bitcoin_non_hd_wallet_balances

Fetch Bitcoin balance for a non-HD address with optional price conversion and metadata.

bitcoin_transactions

Fetch transactions for a Bitcoin address with pagination and full details.

block

Fetch and render a single block for a block explorer, given chain and height.

block_heights

Retrieve block heights within a date range with optional pagination.

erc20_token_transfers

Render token transfer events for an address or token, with optional price quotes and filters.

gas_prices

Get real-time gas estimates for different transaction speeds on a network.

historical_portfolio_value

Render daily portfolio value for an address across a timeframe.

historical_token_balances

Fetch historical token balances for an address at a specific block or date.

historical_token_prices

Get historical prices for a token over a date range.

log_events_by_address

Decode and return event logs for a contract address within a block range.

log_events_by_topic

Decode logs for a specific topic hash across contracts on a chain.

multichain_address_activity

Summarize wallet activity across supported blockchains.

multichain_balances

Get token balances across multiple blockchains for a wallet.

multichain_transactions

Fetch transactions for multiple addresses across multiple blockchains.

native_token_balance

Get the native token balance for a wallet on a specific chain.

nft_check_ownership

Verify NFT ownership for a wallet within a collection.

nft_for_address

List all NFTs owned by a wallet on a chain.

pool_spot_prices

Get spot prices for a pool contract across Uniswap variants.

token_approvals

List token approvals for a wallet across contracts with risk data.

token_balances

Fetch native and ERC20 token balances for a wallet.

token_holders

Paginated list of current or historical holders for a token.

transaction

Fetch a single transaction with optional internal/state/input data details.

transaction_summary

Fetch earliest/latest transactions and count for a wallet.

transactions_for_address

Fetch recent transactions involving a wallet.

transactions_for_block

Fetch all transactions in a block with optional logs.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational