UNPKG

@covalenthq/goldrush-mcp-server

Version:

GoldRush MCP Server for interacting with Covalent GoldRush API

219 lines 19.5 kB
export const TOOL_DESCRIPTIONS = { gas_prices: "Get real-time gas estimates for different transaction speeds on a specific network, enabling users to optimize transaction costs and confirmation times.", block: "Commonly used to fetch and render a single block for a block explorer.", block_heights: "Commonly used to get all the block heights within a particular date range. Useful for rendering a display where you sort blocks by day.", log_events_by_address: "Commonly used to get all the event logs emitted from a particular contract address. Useful for building dashboards that examine on-chain interactions.", log_events_by_topic: "Commonly used to get all event logs of the same topic hash across all contracts within a particular chain. Useful for cross-sectional analysis of event logs that are emitted on-chain.", resolve_address: "Commonly used to resolve ENS, RNS and Unstoppable Domains addresses. Only supports the resolution of a registered domain to an address.", token_balances: "Commonly used to fetch the native and fungible (ERC20) tokens held by an address. Response includes spot prices and other metadata.", historical_token_balances: "Commonly used to fetch the historical native and fungible (ERC20) tokens held by an address at a given block height or date. Response includes daily prices and other metadata.", historical_portfolio_value: "Commonly used to render a daily portfolio balance for an address broken down by the token. The timeframe is user-configurable, defaults to 30 days.", erc20_token_transfers: "Commonly used to render the transfer-in and transfer-out of a token along with historical prices from an address.", token_holders: "Used to get a paginated list of current or historical token holders for a specified ERC20 or ERC721 token. ", native_token_balance: "Lightweight endpoint to just get the native token balance for an EVM address. ", transaction: "Used to fetch and render a single transaction including its decoded event logs. For foundational chains, can also retrieve internal transactions, state changes and method ID where available. ", transaction_summary: "Used to fetch the earliest and latest transactions, and the transaction count for a wallet. Also enriched with gas expenditure details and total ERC20 token transfers count.", transactions_for_address: "Commonly used to fetch the transactions involving an address including the decoded log events in a paginated fashion.", transactions_for_block: "Commonly used to fetch all transactions including their decoded log events in a block and further flag interesting wallets or transactions.", multichain_transactions: "Fetch paginated transactions for up to 10 EVM addresses and 10 EVM chains with one API call. Useful for building Activity Feeds. ", multichain_balances: "Fetch paginated spot & historical native and token balances for a single address on up to 10 EVM chains with one API call.", multichain_address_activity: "Commonly used to locate chains which an address is active on with a single API call.", nft_for_address: "Commonly used to render the NFTs (including ERC721 and ERC1155) held by an address.", nft_check_ownership: "Commonly used to verify ownership of NFTs (including ERC-721 and ERC-1155) within a collection.", nft_check_ownership_token_id: "Commonly used to verify ownership of a specific token (ERC-721 or ERC-1155) within a collection.", bitcoin_hd_wallet_balances: "Fetch balances for each active child address derived from a Bitcoin HD wallet. ", bitcoin_transactions: "Used to fetch the full transaction history of a Bitcoin non-HD wallet address. ", bitcoin_non_hd_wallet_balances: "Fetch Bitcoin balance for a non-HD address. Response includes spot prices and other metadata.", historical_token_prices: "Get the historical prices of one (or many) large cap ERC20 tokens between specified date ranges. Also supports native tokens.", pool_spot_prices: "Get the spot token pair prices for a specified pool contract address. Supports pools on Uniswap V2, V3 and their forks. ", token_approvals: "Commonly used to get a list of approvals across all token contracts categorized by spenders for a wallet’s assets.", }; export const PARAM_DESCRIPTIONS = { gas_prices: { chainName: "The chain name eg: `eth-mainnet`.", eventType: "The desired event type to retrieve gas prices for. Supports `erc20` transfer events, `uniswapv3` swap events and `nativetokens` transfers.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", }, block: { chainName: "The chain name eg: `eth-mainnet`.", blockHeight: "The block height or `latest` for the latest block available.", }, block_heights: { chainName: "The chain name eg: `eth-mainnet`.", startDate: "The start date in YYYY-MM-DD format.", endDate: "The end date in YYYY-MM-DD format or `latest` for the latest block available.", pageSize: "Number of items per page. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, log_events_by_address: { chainName: "The chain name eg: `eth-mainnet`.", contractAddress: "The requested contract address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", startingBlock: "The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.", endingBlock: "The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.", pageSize: "Number of items per page. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, log_events_by_topic: { chainName: "The chain name eg: `eth-mainnet`.", topicHash: "The endpoint will return event logs that contain this topic hash.", startingBlock: "The first block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.", endingBlock: "The last block to retrieve log events with. Accepts decimals, hexadecimals, or the strings `earliest` and `latest`.", secondaryTopics: "Additional topic hash(es) to filter on - padded & unpadded address fields are supported. Separate multiple topics with a comma.", pageSize: "Number of items per page. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, resolve_address: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", }, token_balances: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", noSpam: "If `true`, the suspected spam tokens are removed. Supported on all Foundational Chains.", }, historical_token_balances: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", noSpam: "If `true`, the suspected spam tokens are removed. Supported on all Foundational Chains.", blockHeight: "Ending block to define a block range. Omitting this parameter defaults to the latest block height.", date: "Ending date to define a block range (YYYY-MM-DD). Omitting this parameter defaults to the current date.", }, historical_portfolio_value: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", days: "The number of days to return data for. Defaults to 30 days.", }, erc20_token_transfers: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", contractAddress: "The requested contract address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", startingBlock: "The block height to start from, defaults to `0`.", endingBlock: "The block height to end at, defaults to current block height.", pageSize: "Number of items per page. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, token_holders: { chainName: "The chain name eg: `eth-mainnet`.", tokenAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", noSnapshot: "Defaults to `false`. Set to `true` to bypass last snapshot and get the latest token holders list.", blockHeight: "Ending block to define a block range. Omitting this parameter defaults to the latest block height.", date: "Ending date to define a block range (YYYY-MM-DD). Omitting this parameter defaults to the current date.", pageSize: "Number of items per page. Note: Currently, only values of `100` and `1000` are supported. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, native_token_balance: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", blockHeight: "Ending block to define a block range. Omitting this parameter defaults to the latest block height.", }, transaction: { chainName: "The chain name eg: `eth-mainnet`.", txHash: "The transaction hash.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", noLogs: "Omit log events.", withInternal: "Whether to include internal transfers/transactions.", withState: "Whether to include all transaction state changes with before and after values.", withInputData: "Whether to include the transaction's input data such as the Method ID.", }, transaction_summary: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", withGas: "Include gas summary details. Response times may be impacted for wallets with large number of transactions.", withTransferCount: "Represents the total count of ERC-20 token movement events, including `Transfer`, `Deposit` and `Withdraw`. Response times may be impacted for wallets with large number of transactions.", }, transactions_for_address: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", page: "The requested page, 0-indexed.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", noLogs: "Omit log events.", blockSignedAtAsc: "Sort the transactions in ascending chronological order. By default, it's set to `false` and returns transactions in descending chronological order.", }, transactions_for_block: { chainName: "The chain name eg: `eth-mainnet`.", blockHeight: "The requested block height.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", noLogs: "Omit log events.", }, multichain_transactions: { chains: "Comma separated list of chain names or IDs to retrieve transactions from. Defaults to all foundational chains.", addresses: "Comma separated list of addresses for which transactions are fetched.", limit: "Number of transactions to return per page, up to the default max of 100 items.", before: "Pagination cursor pointing to fetch transactions before a certain point.", after: "Pagination cursor pointing to fetch transactions after a certain point.", withLogs: "Whether to include raw logs in the response.", withDecodedLogs: "Whether to include decoded logs in the response.", withInternal: "Whether to include internal transfers/transactions.", withState: "Whether to include all transaction state changes with before and after values.", withInputData: "Whether to include the transaction's input data such as the Method ID.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, `GBP`, `BTC` and `ETH`.", }, multichain_balances: { walletAddress: "The requested address. Domain names (e.g. `demo.eth`) NOT supported.", chains: "Comma separated list of chain names or IDs to retrieve token balances from. Defaults to all foundational chains.", limit: "Number of token balances to return per page, up to the default max of 100 items.", before: "Pagination cursor pointing to fetch token balances before a certain point.", cutoffTimestamp: "UNIX timestamp to retrieve the balance snapshot from the nearest block before the specified cutoff time.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, `GBP`, `BTC` and `ETH`.", }, multichain_address_activity: { walletAddress: "The requested wallet address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", testnets: "Set to true to include testnets with activity in the response. By default, it's set to `false` and only returns mainnet activity.", }, nft_for_address: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", noSpam: "If `true`, the suspected spam tokens are removed. Supported on all Foundational Chains.", noNftAssetMetadata: "If `true`, the response shape is limited to a list of collections and token ids, omitting metadata and asset information. Helpful for faster response times and wallets holding a large number of NFTs.", }, nft_check_ownership: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", collectionContract: "The requested collection address.", traitsFilter: 'Filters NFTs based on a specific trait. If this filter is used, the API will return all NFTs with the specified trait. Must be used with "values-filter", is case-sensitive, and requires proper URL encoding.', valuesFilter: 'Filters NFTs based on a specific trait value. If this filter is used, the API will return all NFTs with the specified trait value. Must be used with "traits-filter", is case-sensitive, and requires proper URL encoding.', }, nft_check_ownership_token_id: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", collectionContract: "The requested collection address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", tokenId: "The requested token ID.", }, bitcoin_hd_wallet_balances: { walletAddress: "The extended public key (xPub/yPub/zPub) of the HD wallet.", quoteCurrency: "The currency to convert the balance to. Supports `USD`, `CAD`, `EUR`, etc.", }, bitcoin_transactions: { address: "The bitcoin address to query.", pageSize: "Number of items per page. Omitting this parameter defaults to 100.", pageNumber: "0-indexed page number to begin pagination.", }, bitcoin_non_hd_wallet_balances: { walletAddress: "The requested bitcoin non-HD address.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", }, historical_token_prices: { chainName: "The chain name eg: `eth-mainnet`.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", contractAddress: "Contract address for the token. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically. Supports multiple contract addresses separated by commas.", from: "The start day of the historical price range (YYYY-MM-DD).", to: "The end day of the historical price range (YYYY-MM-DD).", pricesAtAsc: "Sort the prices in chronological ascending order. By default, it's set to `false` and returns prices in chronological descending order.", }, pool_spot_prices: { chainName: "The chain name eg: `eth-mainnet`.", contractAddress: "The pool contract address.", quoteCurrency: "The currency to convert. Supports `USD`, `CAD`, `EUR`, `SGD`, `INR`, `JPY`, `VND`, `CNY`, `KRW`, `RUB`, `TRY`, `NGN`, `ARS`, `AUD`, `CHF`, and `GBP`.", }, token_approvals: { chainName: "The chain name eg: `eth-mainnet`.", walletAddress: "The requested address. Passing in an `ENS`, `RNS`, `Lens Handle`, or an `Unstoppable Domain` resolves automatically.", }, }; //# sourceMappingURL=generated-descriptions.js.map