MCP CoinGecko
Access free CoinGecko market data — prices, trending coins, and token metadata — without an API key.
- Endpoint:
https://mcp.api.coingecko.com/mcp - Provider: CoinGecko
Overview
The CoinGecko MCP server wraps CoinGecko's free public API, giving your agent access to cryptocurrency prices, market capitalizations, trending coins, and token metadata. No API key is required, making it the quickest way to add crypto market awareness to any agent.
This server connects to CoinGecko's hosted MCP endpoint — no local installation or npm package needed.
Getting Started
No installation required. Connect directly to the CoinGecko hosted endpoint:
import { McpCoinGecko } from "@iqai/adk";
const toolset = McpCoinGecko();
const tools = await toolset.getTools();import { McpToolset } from "@iqai/adk";
const toolset = new McpToolset({
name: "CoinGecko MCP Client",
description: "Client for CoinGecko free public market data",
transport: {
mode: "stdio",
command: "npx",
args: ["-y", "mcp-remote@latest", "https://mcp.api.coingecko.com/mcp"],
},
});
const tools = await toolset.getTools();{
"mcpServers": {
"coingecko-mcp-server": {
"command": "npx",
"args": ["-y", "mcp-remote@latest", "https://mcp.api.coingecko.com/mcp"]
}
}
}Environment Variables
No environment variables are required. CoinGecko's public API is used directly.
Available Tools
get_asset_platformsfilter:stringjq_filter:string
get_asset_platformsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_id_coinsid:stringcommunity_data:booleandeveloper_data:booleandex_pair_format:stringinclude_categories_details:booleanlocalization:booleanmarket_data:booleansparkline:booleantickers:boolean
get_id_coinsDescription
This endpoint allows you to query all the metadata (image, websites, socials, description, contract address, etc.) and market data (price, ATH, exchange tickers, etc.) of a coin from the CoinGecko coin page based on a particular coin ID
get_list_coins_categoriesjq_filter:string
get_list_coins_categoriesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_new_coins_listjq_filter:string
get_new_coins_listDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_coins_marketsvs_currency:stringcategory:stringids:stringinclude_tokens:stringlocale:stringnames:stringorder:stringpage:numberper_page:numberprecision:stringprice_change_percentage:stringsparkline:booleansymbols:stringjq_filter:string
get_coins_marketsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_coins_top_gainers_losersvs_currency:stringduration:stringprice_change_percentage:stringtop_coins:stringjq_filter:string
get_coins_top_gainers_losersDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_coins_contractid:stringcontract_address:string
get_coins_contractDescription
This endpoint allows you to query all the metadata (image, websites, socials, description, contract address, etc.) and market data (price, ATH, exchange tickers, etc.) of a coin from the CoinGecko coin page based on an asset platform and a particular token contract address
get_range_contract_coins_market_chartid:stringcontract_address:stringfrom:stringto:stringvs_currency:stringinterval:stringprecision:stringjq_filter:string
get_range_contract_coins_market_chartDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_coins_historyid:stringdate:stringlocalization:booleanjq_filter:string
get_coins_historyDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_range_coins_market_chartid:stringfrom:stringto:stringvs_currency:stringinterval:stringprecision:stringjq_filter:string
get_range_coins_market_chartDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_range_coins_ohlcid:stringfrom:stringinterval:stringto:stringvs_currency:stringjq_filter:string
get_range_coins_ohlcDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_id_exchangesid:stringdex_pair_format:stringjq_filter:string
get_id_exchangesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_list_exchangesstatus:stringjq_filter:string
get_list_exchangesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_exchanges_tickersid:stringcoin_ids:stringdepth:booleandex_pair_format:stringinclude_exchange_logo:booleanorder:stringpage:numberjq_filter:string
get_exchanges_tickersDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_range_exchanges_volume_chartid:stringfrom:numberto:numberjq_filter:string
get_range_exchanges_volume_chartDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_globaljq_filter:string
get_globalDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_id_nftsid:stringjq_filter:string
get_id_nftsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_list_nftsorder:stringpage:numberper_page:numberjq_filter:string
get_list_nftsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_markets_nftsasset_platform_id:stringorder:stringpage:numberper_page:numberjq_filter:string
get_markets_nftsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_nfts_market_chartid:stringdays:stringjq_filter:string
get_nfts_market_chartDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_onchain_categoriespage:integersort:stringjq_filter:string
get_onchain_categoriesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_pools_onchain_categoriescategory_id:stringinclude:stringpage:integersort:stringjq_filter:string
get_pools_onchain_categoriesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_onchain_networkspage:integerjq_filter:string
get_onchain_networksDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_networks_onchain_new_poolsinclude:stringinclude_gt_community_data:booleanpage:integerjq_filter:string
get_networks_onchain_new_poolsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_network_networks_onchain_new_poolsnetwork:stringinclude:stringinclude_gt_community_data:booleanpage:integer
get_network_networks_onchain_new_poolsDescription
This endpoint allows you to query all the latest pools based on provided network
get_networks_onchain_dexesnetwork:stringpage:integerjq_filter:string
get_networks_onchain_dexesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_addresses_pools_networks_onchain_multinetwork:stringaddresses:stringinclude:stringinclude_composition:booleaninclude_volume_breakdown:boolean
get_addresses_pools_networks_onchain_multiDescription
This endpoint allows you to query multiple pools based on the provided network and pool address
get_pools_networks_onchain_infonetwork:stringpool_address:stringinclude:stringjq_filter:string
get_pools_networks_onchain_infoDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_timeframe_pools_networks_onchain_ohlcvnetwork:stringpool_address:stringtimeframe:stringtoken:stringaggregate:stringbefore_timestamp:integercurrency:stringinclude_empty_intervals:booleanlimit:integerjq_filter:string
get_timeframe_pools_networks_onchain_ohlcvDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_pools_networks_onchain_tradesnetwork:stringpool_address:stringtoken:stringtrade_volume_in_usd_greater_than:numberjq_filter:string
get_pools_networks_onchain_tradesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_addresses_tokens_networks_onchain_multinetwork:stringaddresses:stringinclude:stringinclude_composition:booleaninclude_inactive_source:boolean
get_addresses_tokens_networks_onchain_multiDescription
This endpoint allows you to query multiple tokens data based on the provided token contract addresses on a network
get_tokens_networks_onchain_infonetwork:stringaddress:stringjq_filter:string
get_tokens_networks_onchain_infoDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_tokens_networks_onchain_top_holdersnetwork:stringaddress:stringholders:stringjq_filter:string
get_tokens_networks_onchain_top_holdersDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_tokens_networks_onchain_holders_chartnetwork:stringtoken_address:stringdays:stringjq_filter:string
get_tokens_networks_onchain_holders_chartDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_timeframe_tokens_networks_onchain_ohlcvnetwork:stringtoken_address:stringtimeframe:stringaggregate:stringbefore_timestamp:integercurrency:stringinclude_empty_intervals:booleaninclude_inactive_source:booleanlimit:integerjq_filter:string
get_timeframe_tokens_networks_onchain_ohlcvDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_tokens_networks_onchain_poolsnetwork:stringtoken_address:stringinclude:stringinclude_inactive_source:booleanpage:integersort:string
get_tokens_networks_onchain_poolsDescription
This endpoint allows you to query top pools based on the provided token contract address on a network
get_tokens_networks_onchain_tradesnetwork:stringtoken_address:stringtrade_volume_in_usd_greater_than:numberjq_filter:string
get_tokens_networks_onchain_tradesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_tokens_networks_onchain_top_tradersnetwork_id:stringtoken_address:stringinclude_address_label:booleansort:stringtraders:stringjq_filter:string
get_tokens_networks_onchain_top_tradersDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_pools_onchain_megafilterbuy_tax_percentage_max:numberbuy_tax_percentage_min:numberbuys_duration:stringbuys_max:integerbuys_min:integerchecks:stringdexes:stringfdv_usd_max:numberfdv_usd_min:numberh24_volume_usd_max:numberh24_volume_usd_min:numberinclude:stringinclude_unknown_honeypot_tokens:booleannetworks:stringpage:integerpool_created_hour_max:numberpool_created_hour_min:numberreserve_in_usd_max:numberreserve_in_usd_min:numbersell_tax_percentage_max:numbersell_tax_percentage_min:numbersells_duration:stringsells_max:integersells_min:integersort:stringtx_count_duration:stringtx_count_max:integertx_count_min:integer
get_pools_onchain_megafilterDescription
This endpoint allows you to query pools based on various filters across all networks on GeckoTerminal
get_pools_onchain_trending_searchinclude:stringpools:integerjq_filter:string
get_pools_onchain_trending_searchDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_search_onchain_poolsinclude:stringnetwork:stringpage:integerquery:stringjq_filter:string
get_search_onchain_poolsDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_addresses_networks_simple_onchain_token_pricenetwork:stringaddresses:stringinclude_24hr_price_change:booleaninclude_24hr_vol:booleaninclude_inactive_source:booleaninclude_market_cap:booleaninclude_total_reserve_in_usd:booleanmcap_fdv_fallback:booleanjq_filter:string
get_addresses_networks_simple_onchain_token_priceDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_holding_chart_public_treasuryentity_id:stringcoin_id:stringdays:stringinclude_empty_intervals:booleanjq_filter:string
get_holding_chart_public_treasuryDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_transaction_history_public_treasuryentity_id:stringcoin_ids:stringorder:stringpage:numberper_page:numberjq_filter:string
get_transaction_history_public_treasuryDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_searchquery:stringjq_filter:string
get_searchDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_search_trendingshow_max:stringjq_filter:string
get_search_trendingDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_simple_pricevs_currencies:stringids:stringinclude_24hr_change:booleaninclude_24hr_vol:booleaninclude_last_updated_at:booleaninclude_market_cap:booleaninclude_tokens:stringnames:stringprecision:stringsymbols:stringjq_filter:string
get_simple_priceDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_simple_supported_vs_currenciesjq_filter:string
get_simple_supported_vs_currenciesDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
get_id_simple_token_priceid:stringcontract_addresses:stringvs_currencies:stringinclude_24hr_change:booleaninclude_24hr_vol:booleaninclude_last_updated_at:booleaninclude_market_cap:booleanprecision:stringjq_filter:string
get_id_simple_token_priceDescription
When using this tool, always use the jq_filter parameter to reduce the response size and improve performance.
search_docsquery:stringlanguage:stringdetail:string
search_docsDescription
Search for documentation for how to use the client to interact with the API.
Integration Example
import { AgentBuilder, McpCoinGecko } from "@iqai/adk";
async function main() {
// Initialize McpCoinGecko toolset
const toolset = McpCoinGecko();
// Get available McpCoinGecko tools
const coinGeckoTools = await toolset.getTools();
// Create agent with McpCoinGecko tools
const { runner } = await AgentBuilder.create("coingecko_agent")
.withModel("gemini-2.5-flash")
.withDescription("A crypto market research agent powered by CoinGecko data")
.withTools(...coinGeckoTools)
.build();
const response = await runner.ask(
"What are the top 10 cryptocurrencies by market cap right now?",
);
console.log(response);
}
main().catch(console.error);