코인게코 서버
CoinGecko Pro API와 상호 작용하기 위한 MCP(Model Context Protocol) 서버와 OpenAI 함수 호출 서비스입니다.
특징
지원되는 암호화폐의 페이지별 목록
이름이나 기호로 동전 ID 조회
과거 가격, 시가총액 및 거래량 데이터
OHLC(시가, 고가, 저가, 종가) 캔들스틱 데이터
새로 고침 기능이 있는 로컬 코인 캐시
Related MCP server: CoinMarketCap MCP
설치
지엑스피1
환경 설정
프로젝트 루트에 .env 파일을 만듭니다.
COINGECKO_API_KEY=your_api_key_hereClaude Desktop과 함께 사용
Claude Desktop은 MCP 기능을 완벽하게 지원합니다. 이 서버를 사용하려면 다음 단계를 따르세요.
Claude Desktop 구성에 다음을 추가합니다.
macOS의 경우:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows의 경우:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"coingecko": {
"command": "node",
"args": ["/path/to/coingecko-server/build/index.js"],
"env": {
"COINGECKO_API_KEY": "your-api-key-here"
}
}
}
}Claude Desktop을 다시 시작하세요
서버는 다음과 같은 도구를 제공합니다.
get-coins: 지원되는 코인의 페이지별 목록을 가져옵니다.find-coin-ids: 코인 이름/심볼에 대한 CoinGecko ID를 조회합니다.get-historical-data: 과거 가격, 시가총액, 거래량 데이터를 가져옵니다.get-ohlc-data: OHLC 캔들스틱 데이터 가져오기refresh-cache: 로컬 코인 목록 캐시를 새로 고칩니다.
OpenAI 함수 호출 사용
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
);
}데이터 유형
OHLC데이터
interface OHLCData {
timestamp: number;
open: number;
high: number;
low: number;
close: number;
}역사 데이터
interface HistoricalData {
prices: [number, number][];
market_caps: [number, number][];
total_volumes: [number, number][];
}코인인포
interface CoinInfo {
id: string;
symbol: string;
name: string;
platforms?: Record<string, string>;
}요금 제한
현재 요금 제한 및 사용 지침은 CoinGecko Pro API 문서를 참조하세요.
특허
MIT