CoinGecko サーバー
CoinGecko Pro API と対話するためのモデル コンテキスト プロトコル (MCP) サーバーおよび OpenAI 関数呼び出しサービス。
特徴
サポートされている暗号通貨のページ別リスト
名前またはシンボルによるコインIDの検索
過去の価格、時価総額、取引量データ
OHLC(始値、高値、安値、終値)ローソク足データ
リフレッシュ機能を備えたローカルコインキャッシュ
Related MCP server: CoinMarketCap MCP
インストール
npm install coingecko-server環境設定
プロジェクト ルートに.envファイルを作成します。
COINGECKO_API_KEY=your_api_key_hereClaude Desktopでの使用
Claude DesktopはMCP機能を完全にサポートしています。このサーバーを使用するには、以下の手順に従ってください。
Claude Desktopをインストールする
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デスクトップを再起動します
サーバーは次のツールを提供します。
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 ドキュメントを参照してください。
ライセンス
マサチューセッツ工科大学