加密货币数据API服务

CoinGecko API Server MCP是一个基于Node.js的解决方案,提供加密货币市场数据的无缝访问,支持RESTful API和MCP协议,适用于AI系统和应用程序。

  • by BlindVibeDev
  • JavaScript
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 BlindVibeDev/CoinGeckoMCP

使用说明

🚀 CoinGecko API服务器MCP

AI系统和应用程序的无缝加密货币数据访问

特性 • 快速开始 • 安装 • 配置 • api参考 • MCP集成 • 专业API • 故障排除 • 许可证

🌟 概述

CoinGecko API服务器MCP是一款功能强大、可供生产的Node.js解决方案,通过优雅的RESTful API和MCP(市场组件程序)界面提供对加密货币市场数据的无缝访问。它将Claude等人工智能系统与实时加密数据连接起来,同时处理API速率限制、回退和错误处理的所有复杂性。

✨ 主要特点

  • 🔄 双重API支持:与CoinGecko免费和专业API无缝集成
  • 🧠 人工智能集成:全面实施人工智能助理的MCP协议
  • 🛡️ 智能回退:自动在API之间切换以防止速率限制
  • ⚡ 优化性能:高效的请求处理和响应缓存
  • 📊 综合数据:访问所有基本的加密货币指标
  • 🔌 简单接口:直观的RESTful端点和JSON-RPC方法
  • 🚦 稳健的错误处理:清除带有适当状态代码的错误消息
  • 🧩 轻松部署:最低配置,指导设置过程
  • 📘 大量文档:清晰的使用说明和示例

🚀 快速开始

# 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

📦 安装

选项1:使用npx(推荐)

最快的入门方法:

npx coingecko-api-server

这将:

  1. 📥 下载并安装服务器
  2. 🧰 运行交互式安装向导
  3. 🔑 询问您的CoinGecko API密钥(可选)
  4. 🚀 自动启动服务器

选项2:手动安装

为了更好地控制安装过程:

# 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

⚙️ 配置

使用中的环境变量配置服务器 .env 文件:

变量 描述 默认值
PORT 服务器端口 3000
COINGECKO_API_KEY CoinGecko Pro API密钥(可选) -
CACHE_DURATION 缓存持续时间(秒) 60
LOG_LEVEL 日志记录级别(错误、警告、信息、调试) info

📚 api参考

RESTful端点

基本终点

  • GET /api/ping -检查API服务器状态

价格数据

  • GET /api/simple/price -获取指定硬币的价格数据
    • 查询参数: ids, vs_currencies, include_market_cap, include_24hr_vol, include_24hr_change, include_last_updated_at, precision

硬币数据

  • GET /api/coins/markets -获取硬币的市场数据
    • 查询参数: vs_currency, ids, category, order, per_page, page, sparkline, price_change_percentage

市场数据

  • GET /api/global -获取全球加密货币数据
  • GET /api/search/trending -获取热门硬币

例子

获取比特币美元价格:

curl "http://localhost:3000/api/simple/price?ids=bitcoin&vs_currencies=usd"

答复:

{
  "bitcoin": {
    "usd": 45678.12
  }
}

按市值排名前五的加密货币:

curl "http://localhost:3000/api/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=5&page=1"

🤖 人工智能集成(MCP)

该服务器实现了市场组件程序(MCP)协议,使克劳德等人工智能系统能够访问加密货币数据。

MCP集成点

  1. JSON-RPC端点: /rpc -处理来自AI客户端的方法调用
  2. 架构定义: /mcp/schema -定义可用的工具和参数

可用的MCP方法

  • ping -检查API状态
  • getPrice -获取指定加密货币的价格数据
  • getSupportedVsCurrencies -获取支持的货币列表
  • getCoinMarkets -获取硬币的市场数据
  • getGlobal -获取全球加密货币数据
  • getTrending -获取热门硬币

有关详细的集成说明,请参阅 MCP_INTEGRATION.md.

💎 专业API优势

此服务器同时支持CoinGecko Pro API和免费的API:

功能 免费API 专业API
速率限制 ~30个呼叫/分钟 ~500个呼叫/分
API节流 是 否
支持 社区 优先级
数据新鲜度 10-30分钟 1-2分钟
价格 免费 订阅

有关Pro API设置的更多详细信息,请参阅 USING_COINGECKO_PRO.md.

🔧 故障排除

问题 解决方案
速率限制错误 考虑升级到Pro API或调整您的请求频率
连接被拒绝 确保服务器正在指定端口上运行
身份验证错误 检查.env文件中的API密钥
缺少数据 验证请求中的参数

🧪 发展

# Run in development mode with hot reload
npm run dev

# Run tests
npm test

# Build for production
npm run build

🔄 运作原理

服务器充当应用程序和CoinGecko API之间的中间件:

  1. 请求路由:处理来自RESTful和JSON-RPC客户端的传入请求
  2. API选择:根据配置在免费和专业API之间进行选择
  3. 费率限制管理:实现智能请求限制
  4. 响应处理:以一致的结构格式化和返回数据
  5. 错误处理:为故障排除提供详细的错误信息

📱 用例

  • AI驱动的财务顾问:使人工智能系统能够访问实时加密数据
  • 投资仪表盘:构建具有可靠数据访问的加密货币仪表板
  • 投资组合跟踪器:创建应用程序来监控加密货币持有量
  • 市场分析工具:开发技术和基本面分析工具
  • 交易机器人:具有市场数据的电力自动交易系统

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🙏 致谢

  • CoinGecko 用于全面的加密货币数据API
  • Anthropic Claude AI和MCP项目
  • 开源社区的宝贵贡献

⬆ 返回页首