Aster Finance MCP 服务器

这个项目是一个MCP(模型上下文协议)服务器,提供了一套全面的工具来与(相关系统或服务)进行交互 Aster金融期货API它允许人工智能代理和其他MCP兼容客户端访问Aster交易所的市场数据、管理交易以及查询账户信息。
特点/功能
- 全面的REST API覆盖实现了Aster Futures API文档中的所有RESTful端点(不包括WebSocket流)。
- 市场数据访问实时和历史市场数据,包括订单簿、交易记录、K线图和行情信息。
- 账户与交易完整的交易功能,包括下单/撤单、管理仓位以及查询账户余额。
- 安全的使用作为环境变量安全存储的API密钥,绝不在代码中硬编码。
- Stdio Transport(可译为“标准I/O传输”或根据具体上下文简化为“标准传输”,但“Stdio”并非标准术语,通常“I/O”指输入输出,所以更准确的翻译可能是“标准I/O传输机制”或“标准输入输出传输”,具体取决于上下文)作为一个标准的I/O进程运行,便于与MCP主机集成。
安装与配置
此服务器设计为在MCP主机环境中运行。
- 安装依赖项并构建:
你可以使用任意一个 npm 或者 pnpm 安装项目依赖项并构建服务器。
*使用 npm:*
npm install
npm run build*或者使用 pnpm:*
pnpm install
pnpm run build- 配置MCP主机:
将以下配置添加到您的MCP设置文件中(例如。, cline_mcp_settings.json)。 这告诉主机如何启动服务器,并提供必要的API凭据。
{
"mcpServers": {
"aster": {
"command": "node",
"args": [
"/path/to/your/aster-mcp-server/build/index.js"
],
"env": {
"ASTER_API_KEY": "YOUR_ASTER_API_KEY",
"ASTER_API_SECRET": "YOUR_ASTER_SECRET_KEY"
},
"disabled": false,
"autoApprove": []
}
}
}替换 /path/to/your/aster-mcp-server 使用此项目目录的绝对路径,并填写您的实际 ASTER_API_KEY 并且 ASTER_API_SECRET.
可用工具
服务器提供了以下按功能分类的工具:
市场数据端点
| 工具名称 | 描述 |
|---|---|
ping 测试与REST API的连接性。 | |
time 获取当前服务器时间。 | |
exchangeInfo | 获取当前交易所的交易规则和符号信息。 |
depth 获取某个符号的订单簿。 | |
trades 获取最近的市场交易信息。 (此行无实际内容,若作为分隔线或占位符,可译为) | (此处无实际翻译内容,可视为分隔或占位) |
historicalTrades | 获取更早的市场历史交易数据。 |
aggTrades 获取压缩后的聚合市场交易数据。 | |
klines 获取某个符号的K线/蜡烛图数据。 | |
indexPriceKlines 获取指数价格的K线/蜡烛图数据。 | |
markPriceKlines 获取标记价格的K线/蜡烛图数据。 | |
premiumIndex 获取标记价格和资金费率。 | |
fundingRate 获取资金费率历史记录。 | |
fundingInfo 获取资金费率配置。 | |
ticker_24hr 24小时滚动窗口价格变化统计。 | |
ticker_price 获取一个或多个符号的最新价格。 | |
ticker_bookTicker | 在订单簿上获取最优价格/数量。 |
账户与交易终端点
| 工具名称 | 描述 |
|---|---|
setPositionMode | 更改用户的位置模式(对冲 vs. 单边)。 |
getPositionMode | 获取用户当前的位置模式。 |
setMultiAssetsMode | 更改用户的多资产模式。 |
getMultiAssetsMode 获取用户当前的多资产模式。 | |
placeOrder 提交新订单。 | |
placeBatchOrders | 一次性下多个订单。 |
transferAsset 在期货账户和现货账户之间转移资产。 | |
queryOrder 检查订单的状态。 | |
cancelOrder 取消一个活跃订单。 | |
cancelAllOpenOrders | 取消该符号上所有未平仓订单。 |
cancelBatchOrders | 取消多个订单。 |
countdownCancelAll | 倒计时结束后自动取消所有未完成订单。 |
queryOpenOrder 查询特定的未结订单。 | |
getAllOpenOrders 获取某个符号上的所有未平仓订单。 | |
getAllOrders 获取所有账户订单(包括活跃、已取消或已成交的订单)。 | |
getBalance 获取期货账户余额。 | |
getAccountInfo 获取当前账户信息。 | |
setLeverage | 更改某个交易品种的初始杠杆。 |
setMarginType | 更改保证金类型(隔离/交叉)。 |
modifyPositionMargin 修改独立仓位保证金。 | |
getPositionMarginHistory获取仓位保证金变化历史。 | |
getPositionInfo | 获取当前位置信息。 |
getTradeList 获取特定账户和交易标的的交易记录。 | |
getIncomeHistory 获取收入历史记录。 | |
getLeverageBrackets | 获取名义价值和杠杆比例范围。 |
getAdlQuantile 获取位置ADL分位数估计。 | |
getForceOrders 获取用户的强制订单(清算/ADL)。 | |
getCommissionRate 获取用户对某个交易标的的佣金率。 |
使用示例
一旦服务器运行起来,您就可以通过您的MCP客户端调用其工具。例如,要获取服务器的当前时间,您会进行一个(操作) callTool 这样的请求:
{
"server_name": "aster",
"tool_name": "time",
"arguments": {}
}获取BTCUSDT的订单簿:
{
"server_name": "aster",
"tool_name": "depth",
"arguments": {
"symbol": "BTCUSDT",
"limit": 10
}
}______________________________________________________________________
*这款MCP服务器是在Questflow的协助下自豪打造的。*
