CoinGecko 服务器
用于与 CoinGecko Pro API 交互的模型上下文协议 (MCP) 服务器和 OpenAI 函数调用服务。
特征
- 支持的加密货币的分页列表
- 通过名称或符号查找硬币ID
- 历史价格、市值和交易量数据
- OHLC(开盘价、最高价、最低价、收盘价)烛台数据
- 具有刷新功能的本地硬币缓存
安装
npm install coingecko-server
环境设置
在项目根目录中创建一个.env
文件:
COINGECKO_API_KEY=your_api_key_here
与 Claude Desktop 一起使用
Claude Desktop 全面支持 MCP 功能。使用方法如下:
- 安装Claude Desktop
- 添加到您的 Claude Desktop 配置:
- 在 macOS 上:
~/Library/Application Support/Claude/claude_desktop_config.json
- 在 Windows 上:
%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][];
}
CoinInfo
interface CoinInfo {
id: string;
symbol: string;
name: string;
platforms?: Record<string, string>;
}
速率限制
请参阅CoinGecko Pro API 文档,了解当前的速率限制和使用指南。
执照
麻省理工学院