Skip to main content
Glama
gaokai258

Fee Optimizer MCP

by gaokai258

calculate_annual_cost

Read-only

Calculate annual trading costs on a crypto exchange, including fees, funding, and withdrawals, and estimate savings from upgrading your VIP tier.

Instructions

当用户想知道一年下来在某交易所的真实总花费(年化交易手续费+年化资金费+年提现费)或升 VIP 档位一年能省多少钱时使用。Use when the user asks for annual/yearly cost of trading on an exchange, or how much reaching the next VIP tier would save per year. Annualizes 12 months of trading fees at the resolved VIP tier (referral + optional token discounts), 12 months of futures funding exposure, and per-event withdrawal fees times yearly withdrawal count. Includes an upgrade quote: the next VIP tier, how to qualify (volume, OKX/Bybit/Bitget/Kraken account assets (Kraken AOP), Gate GT, KuCoin KCS, or Binance BNB), and estimated annual saving. Requires exchange, purpose, country, and monthlyVolumeUsd.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pairNo交易对,如 BTC/USDT、BTC/FDUSD、BTCUSDT 均可。命中币对级费率/0费促销时按促销价计费,未命中则按整所 VIP 档计费
sideNo吃单方向,默认 buy;live 模式下 buy 行走卖盘 asks,sell 行走买盘 bids
countryYesISO 3166-1 alpha-2 国家代码
purposeYes交易类型: spot=现货, futures=期货
currencyNo显示币种,默认 USD;汇率仅用于展示
exchangeYes交易所名称,如 binance, okx, gate
languageNo输出语言:en=英文(默认),zh=中文。仅影响 advice/warnings/tradeoffs/reasons 等叙述性文字,数值、字段名与错误码不受影响
useTokenNo是否使用平台币(BNB/OKB/GT/MX/BGB/KCS)折扣
fiatMethodNo只按指定法币渠道计价(默认取最便宜):card/ach/sepa/fps/wire/swift/pix
makerShareNo挂单(maker)成交占比 0-1,默认 0=纯吃单
spreadModeNo执行成本来源:bundled=内置典型点差基准(默认,半价差、零滑点,离线秒回);live=实时拉取订单簿前100档逐档行走,算出真实半价差+市场冲击滑点(逐所独立请求,单所失败自动回退内置基准并记入 failures,深度不足保留实测值并给 warning)。需配合 tradeSizeUsd 才会计入
spreadPairNo执行成本测算交易对,默认沿用 pair,再默认 BTC/USDT。live 模式现货自动解析现货市场(如 KuCoin 用 kucoin 而非 kucoinfutures),如 ETH/USDT、SOL-USDT
fundingModeNo资金费率来源:bundled=内置长期均值(默认,离线稳定);live=实时拉取该合约当前资金费率(逐所独立请求,单所失败自动回退内置值;结果含 funding_source/funding_rate_ts/funding_pair 溯源字段)
fundingPairNo资金费率合约对,默认 BTC/USDT 永续;仅 fundingMode=live 时生效,如 ETH/USDT、SOL-USDT
fiatCurrencyNo法币入金/出金币种,默认 USD(v0.26:可把年化法币通道费并入 annual_total_cost,得到完整成本栈)
holdingHoursNo期货每月平均持仓时长(小时),用于年化资金费(×12)
tokenBalanceNo持有的平台币数量(BNB / GT / KCS)。币安现货 AND 门槛;Gate OR GT、KuCoin OR KCS 双轨可升档;同时用于平台币持仓折扣
tradeSizeUsdNo单笔吃单市价单规模(USD),默认不计执行成本。传入后总成本/年化/推荐会加上单边点差穿越成本(半价差);spreadMode=live 时再加上该规模下的订单簿滑点,如 10000=$1万、100000=$10万
withdrawalAssetNo提现资产,如 BTC, ETH, USDT
accountAssetsUsdNoOKX 账户总资产(USD),OKX 按交易量 OR 资产取高定档
monthlyVolumeUsdYes月交易量(USD),年化按此 ×12
withdrawalNetworkNo提现网络,如 TRC-20, ERC-20
withdrawalsPerYearNo每年提现次数,年化提现费=单次提现费×次数,默认 0
fiatCashoutsPerYearNo每年法币出金次数;年化出金费=单次最便宜通道费×次数
fiatDepositsPerYearNo每年法币入金次数,如月薪定投 12;年化入金费=单次最便宜通道费×次数
fiatCashoutAmountUsdNo单次法币出金(提现回银行卡)金额(USD);与 fiatCashoutsPerYear 同时传入时计入年化出金费
fiatDepositAmountUsdNo单次法币入金金额(USD);与 fiatDepositsPerYear 同时传入时,按该所最便宜直连通道计入年化入金费

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.47.1

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and openWorldHint=false, so the read-only and closed-world nature is already covered. The description adds the annualization method (12 months of fees, funding, withdrawal fees times yearly count) and that an upgrade quote is included, which is useful behavioral context beyond annotations. However, it does not disclose any limitations or edge cases. With annotations carrying the safety profile, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively long but well-structured with clear front-loaded usage conditions in both Chinese and English. The first sentence explains when to use, the second describes the calculation method, and the last lists required parameters. Some repetition between the bilingual parts, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 27 parameters (4 required) and no output schema, the description omits any explanation of how the many optional parameters affect the output or what the output looks like. It only mentions the four required parameters, leaving the agent unaware of the optional parameters that can customize the calculation (e.g., useToken, fundingMode, spreadMode, withdrawal parameters). Given the complexity, more guidance is needed for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters in detail. The description only mentions that it requires exchange, purpose, country, and monthlyVolumeUsd, which repeats what the schema already says. It adds no meaning beyond the schema for the 27 parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb (annualizes) and resource (total trading cost on an exchange), and clearly distinguishes from siblings by naming the three cost components (fees + funding + withdrawal) and the upgrade quote. An agent can tell it apart from calculate_savings or compare_total_cost without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: when the user asks for annual/yearly cost of trading on an exchange, or how much reaching the next VIP tier would save per year. This is a clear usage condition with no ambiguity about alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.