CoinGecko Server
An MCP server for accessing real-time cryptocurrency data from the CoinGecko Pro API.
Update: CoinGecko now has an official MCP server: https://docs.coingecko.com/reference/mcp-server
I recomend you use that one, as I probably won't update or keep this one current.
CoinGecko Server
A Model Context Protocol (MCP) server and OpenAI function calling service for interacting with the CoinGecko Pro API.
Features
- Paginated list of supported cryptocurrencies
- Coin ID lookup by name or symbol
- Historical price, market cap, and volume data
- OHLC (Open, High, Low, Close) candlestick data
- Local coin cache with refresh capability
Installation
npm install coingecko-server
Environment Setup
Create a .env file in your project root:
COINGECKO_API_KEY=your_api_key_here
Usage with Claude Desktop
Claude Desktop provides full support for MCP features. To use this server:
-
Install Claude Desktop
-
Add to your Claude Desktop configuration:
- On macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - On Windows:
%APPDATA%\Claude\claude_desktop_config.json
- On macOS:
{
"mcpServers": {
"coingecko": {
"command": "node",
"args": ["/path/to/coingecko-server/build/index.js"],
"env": {
"COINGECKO_API_KEY": "your-api-key-here"
}
}
}
}
- Restart Claude Desktop
The server provides the following tools:
get-coins: Get a paginated list of supported coinsfind-coin-ids: Look up CoinGecko IDs for coin names/symbolsget-historical-data: Get historical price, market cap, and volume dataget-ohlc-data: Get OHLC candlestick datarefresh-cache: Refresh the local coin list cache
Usage with OpenAI Function Calling
import { CoinGeckoService } from 'coingecko-server';
import OpenAI from 'openai';
const openai = new OpenAI();
const coinGeckoService = new CoinGeckoService(process.env.COINGECKO_API_KEY);
// Get function definitions
const functions = CoinGeckoService.getOpenAIFunctionDefinitions();
// Example: Get historical data
const response = await openai.chat.completions.create({
model: "gpt-4-turbo-preview",
messages: [{ role: "user", content: "Get Bitcoin's price history for the last week" }],
functions: [functions[2]], // get_historical_data function
function_call: "auto",
});
if (response.choices[0].message.function_call) {
const args = JSON.parse(response.choices[0].message.function_call.arguments);
const history = await coinGeckoService.getHistoricalData(
args.id,
args.vs_currency,
args.from,
args.to,
args.interval
);
}
Data Types
OHLCData
interface OHLCData {
timestamp: number;
open: number;
high: number;
low: number;
close: number;
}
HistoricalData
interface HistoricalData {
prices: [number, number][];
market_caps: [number, number][];
total_volumes: [number, number][];
}
CoinInfo
interface CoinInfo {
id: string;
symbol: string;
name: string;
platforms?: Record<string, string>;
}
Rate Limits
Please refer to the CoinGecko Pro API documentation for current rate limits and usage guidelines.
License
MIT
関連サーバー
Zen MCP Server
Access multiple AI models like Claude, Gemini, and OpenAI through a single server using your own API keys.
Ramp
Retrieve and analyze data or run tasks for Ramp using its Developer API.
GAM MCP Server
Administer Google Workspace using the GAM command-line tool.
Authless Remote MCP Server
A remote MCP server without authentication, deployable on Cloudflare Workers.
Buienradar MCP Server
Fetches precipitation forecast data for a specific location using the Buienradar service.
Auth0 MCP Server
Provides AI assistants with controlled access to the Auth0 Management API for tenant management, enforcing security and least-privilege access.
AverbePorto-MCP
Integrates with the AverbePorto platform for authentication and document submission using AI tools.
MCP-OpenStack-Ops
A comprehensive MCP (Model Context Protocol) server providing OpenStack cluster management and monitoring capabilities with built-in safety controls.
Whalebone MCP Server
Provides access to the Whalebone cybersecurity API.
Modal
Deploy Python scripts to Modal, a serverless platform for running code in the cloud.