
CoinGecko
A powerful and flexible Node.js Express server that provides a comprehensive interface to the CoinGecko cryptocurrency data API. This server supports both the free public API and the Pro API with automatic fallback.
README
🚀 CoinGecko API Server MCP
<div align="center">
Seamless cryptocurrency data access for AI systems and applications
Features • Quick Start • Installation • Configuration • API Reference • MCP Integration • Pro API • Troubleshooting • License
</div>
🌟 Overview
The CoinGecko API Server MCP is a powerful, production-ready Node.js solution that provides seamless access to cryptocurrency market data through an elegant RESTful API and MCP (Marketplace Component Program) interface. It bridges AI systems like Claude with real-time crypto data while handling all the complexities of API rate limits, fallbacks, and error handling.
<div align="center"> <img src="https://www.coingecko.com/assets/coingecko-logo-white-ea42ded10e4d604886deac6b8449b2b2230a0df0d0c6edd2c3b4587da9038cff.png" alt="CoinGecko Logo" width="300"/> </div>
✨ Key Features
- 🔄 Dual API Support: Seamlessly integrates with both CoinGecko Free and Pro APIs
- 🧠 AI Integration: Full implementation of the MCP protocol for AI assistants
- 🛡️ Intelligent Fallback: Automatically switches between APIs to prevent rate limiting
- ⚡ Optimized Performance: Efficient request handling and response caching
- 📊 Comprehensive Data: Access to all essential cryptocurrency metrics
- 🔌 Simple Interface: Intuitive RESTful endpoints and JSON-RPC methods
- 🚦 Robust Error Handling: Clear error messages with appropriate status codes
- 🧩 Easy Deployment: Minimal configuration with guided setup process
- 📘 Extensive Documentation: Clear usage instructions and examples
🚀 Quick Start
# Option 1: Install and run with npx
npx coingecko-api-server
# Option 2: Clone and install manually
git clone https://github.com/yourusername/coingecko-api-server.git
cd coingecko-api-server
npm install
npm run setup
npm start
📦 Installation
Option 1: Using npx (Recommended)
The quickest way to get started:
npx coingecko-api-server
This will:
- 📥 Download and install the server
- 🧰 Run an interactive setup wizard
- 🔑 Ask for your CoinGecko API key (optional)
- 🚀 Start the server automatically
Option 2: Manual Installation
For more control over the installation process:
# Clone the repository
git clone https://github.com/yourusername/coingecko-api-server.git
cd coingecko-api-server
# Install dependencies
npm install
# Run the setup script
npm run setup
# Start the server
npm start
⚙️ Configuration
The server is configured using environment variables in the .env
file:
Variable | Description | Default |
---|---|---|
PORT |
Server port | 3000 |
COINGECKO_API_KEY |
CoinGecko Pro API key (optional) | - |
CACHE_DURATION |
Cache duration in seconds | 60 |
LOG_LEVEL |
Logging level (error, warn, info, debug) | info |
📚 API Reference
RESTful Endpoints
Basic Endpoints
GET /api/ping
- Check API server status
Price Data
GET /api/simple/price
- Get price data for specified coins- Query params:
ids
,vs_currencies
,include_market_cap
,include_24hr_vol
,include_24hr_change
,include_last_updated_at
,precision
- Query params:
Coin Data
GET /api/coins/markets
- Get market data for coins- Query params:
vs_currency
,ids
,category
,order
,per_page
,page
,sparkline
,price_change_percentage
- Query params:
Market Data
GET /api/global
- Get global cryptocurrency dataGET /api/search/trending
- Get trending coins
Examples
Get Bitcoin Price in USD:
curl "http://localhost:3000/api/simple/price?ids=bitcoin&vs_currencies=usd"
Response:
{
"bitcoin": {
"usd": 45678.12
}
}
Get Top 5 Cryptocurrencies by Market Cap:
curl "http://localhost:3000/api/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=5&page=1"
🤖 AI Integration (MCP)
This server implements the Marketplace Component Program (MCP) protocol, enabling AI systems like Claude to access cryptocurrency data.
MCP Integration Points
- JSON-RPC Endpoint:
/rpc
- Handles method calls from AI clients - Schema Definition:
/mcp/schema
- Defines available tools and parameters
Available MCP Methods
ping
- Check API statusgetPrice
- Get price data for specified cryptocurrenciesgetSupportedVsCurrencies
- Get list of supported currenciesgetCoinMarkets
- Get market data for coinsgetGlobal
- Get global cryptocurrency datagetTrending
- Get trending coins
For detailed integration instructions, see MCP_INTEGRATION.md.
💎 Pro API Benefits
This server supports both the CoinGecko Pro API and the free API:
Feature | Free API | Pro API |
---|---|---|
Rate Limit | ~30 calls/minute | ~500 calls/minute |
API Throttling | Yes | No |
Support | Community | Priority |
Data Freshness | 10-30 minutes | 1-2 minutes |
Price | Free | Subscription |
For more details about the Pro API setup, see USING_COINGECKO_PRO.md.
🔧 Troubleshooting
Issue | Solution |
---|---|
Rate limiting errors | Consider upgrading to Pro API or adjust your request frequency |
Connection refused | Ensure the server is running on the specified port |
Authentication errors | Check your API key in the .env file |
Missing data | Verify the parameters in your request |
🧪 Development
# Run in development mode with hot reload
npm run dev
# Run tests
npm test
# Build for production
npm run build
🔄 How It Works
The server acts as a middleware between your applications and the CoinGecko API:
- Request Routing: Handles incoming requests from RESTful and JSON-RPC clients
- API Selection: Chooses between Free and Pro APIs based on configuration
- Rate Limit Management: Implements intelligent request throttling
- Response Processing: Formats and returns data in a consistent structure
- Error Handling: Provides detailed error information for troubleshooting
📱 Use Cases
- AI-Powered Financial Advisors: Enable AI systems to access real-time crypto data
- Investment Dashboards: Build cryptocurrency dashboards with reliable data access
- Portfolio Trackers: Create applications to monitor crypto holdings
- Market Analysis Tools: Develop tools for technical and fundamental analysis
- Trading Bots: Power automated trading systems with market data
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- CoinGecko for the comprehensive cryptocurrency data API
- Anthropic for Claude AI and the MCP program
- The open-source community for their invaluable contributions
<div align="center">
Made with ❤️ by [Your Organization]
</div>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.