使用说明
MCP加密市场数据服务器
该项目是一个基于Python的MCP服务器,提供实时和历史加密货币市场数据。服务器是使用FastAPI构建的,它通过CCXT从主要交易所获取数据。这个项目的目标是了解MCP服务器是如何工作的,如何与加密API交互,以及如何构建一个干净、模块化的Python后端。
*我为什么建造它
该任务需要一个具有以下功能的小型MCP服务器:
用于获取数据的端点
支持实时更新
历史查询
缓存
结构化代码
测试覆盖率
我保持了代码的简单性,这样任何人都可以轻松阅读,同时保持结构的整洁。
*已实现的功能
实时价格查询
历史OHLCV(1小时蜡烛,过去24小时)
轻量级缓存
错误处理
使用pytest进行测试
清理文件夹结构
**项目结构
mcp服务器/ ├─ app/ │ ├─ main.py │ ├─ services/ccxt_client.py │ ├─ cache.py │ ├─ models.py │ └─ 例外情况.py ├─ tests/test_api.py ├─ 需求.txt └─ README.md
***使用的技术
快速API
仓储管理系统
Pytest
Uvicorn
python
**端点
-
根 得到/ 答复: {“消息”:“加密MCP服务器正在运行”}
-
最新价格 GET/价格/{符号} 示例:/价格/BTC
-
历史OHLCV GET/历史/{符号} 示例:/历史/ETH
***如何跑步
-
安装依赖项 pip安装-r要求.txt
-
启动服务器 uvicorn app.main:应用程序--reload
-
测试API http://127.0.0.1:8000/price/BTC http://127.0.0.1:8000/history/ETH
-
运行测试 pytest
***假设
Binance是默认交易所。
假设对USDT交易的符号。
缓存过期时间:10秒。
历史时间:1小时。
***可能的改进
支持多个交换
WebSocket流媒体
Redis缓存
更详细的测试
环境变量
结论
该项目通过清晰的Python代码、实时加密数据、历史查询、缓存、结构化布局和测试覆盖率满足MCP分配要求。