# CoinGecko MCP Server
A Model Context Protocol (MCP) server that provides real-time cryptocurrency data from the CoinGecko API.
## Features
- **get_price**: Get current price for any cryptocurrency
- **get_market_data**: Get detailed market data including market cap, volume, etc.
- **get_historical_data**: Get historical price data with customizable time periods
- **search_coins**: Search for cryptocurrencies by name or symbol
## Installation
1. Clone the repository
2. Install dependencies:
npm install `` ```
Build
npm run build
Usage
Development
npm run dev
Production
npm start
Testing
npm test
Tools
get_price
Get the current price for a cryptocurrency.
Parameters:
coin_id(optional): CoinGecko coin ID (e.g., "bitcoin", "ethereum")symbol(optional): Cryptocurrency symbol (e.g., "BTC", "ETH")vs_currency(optional): Target currency (default: "usd")
Example:
{
"symbol": "TRX",
"vs_currency": "usd"
}
get_market_data
Get detailed market data for a cryptocurrency.
Parameters:
coin_id(optional): CoinGecko coin ID (e.g., "bitcoin", "ethereum")symbol(optional): Cryptocurrency symbol (e.g., "BTC", "ETH")vs_currency(optional): Target currency (default: "usd")
Example:
{
"symbol": "BTC"
}
get_historical_data
Get historical price data.
Parameters:
coin_id(optional): CoinGecko coin ID (e.g., "bitcoin", "ethereum")symbol(optional): Cryptocurrency symbol (e.g., "BTC", "ETH")vs_currency(optional): Target currency (default: "usd")days(optional): Number of days (1-365, default: 1)interval(optional): Data interval (daily/hourly)
Example:
{
"symbol": "ETH",
"days": 7,
"interval": "daily"
}
search_coins
Search for cryptocurrencies by name or symbol.
Parameters:
query(required): Search query
Example:
{
"query": "tron"
}
Integration
With Claude Desktop
Add to your MCP settings:
{
"mcpServers": {
"coingecko": {
"command": "node",
"args": ["/path/to/coingecko-mcp-server/build/index.js"]
}
}
}
Rate Limits
CoinGecko's free API has rate limits:
- 10-30 calls per minute
- Please be respectful of their service
License
MIT
## Key Changes from OKX to CoinGecko
1. **API Base URL**: Changed to `https://api.coingecko.com/api/v3`
2. **Endpoints**: Using CoinGecko's endpoints:
- `/simple/price` for basic price data
- `/coins/markets` for detailed market data
- `/coins/{id}/market_chart` for historical data
- `/search` for coin search
3. **Parameters**: Adapted to CoinGecko's parameter structure
4. **Data Format**: Updated types to match CoinGecko's response format
5. **Coin Identification**: Added support for both coin_id and symbol lookup
6. **Error Handling**: Added rate limit detection (HTTP 429)
## Setup Instructions
1. **Create the project directory:**
mkdir coingecko-mcp-server cd coingecko-mcp-server ````
- Create all the files above in their respective locations
- Install dependencies:
npm install
- Build the project:
npm run build
- Test the server:
npm test
This CoinGecko-based server should be much more reliable than the OKX version, as CoinGecko has excellent uptime and a well-designed API.






