Skip to main content
Glama
gaokai258

Fee Optimizer MCP

by gaokai258

analyze_persona

Read-only

Loads a trader persona preset and computes annual all-in cost across exchanges in your country, ranking venues by fees, funding, spreads, and withdrawals.

Instructions

当用户描述自己的交易类型/身份(新手小额买入、定投囤币、活跃现货、合约波段、高频刷单、高净值机构、链上无 KYC 玩家)并想知道哪种交易所最适合自己、一年真实总花费多少时使用。Use when the user asks which exchange fits THEIR kind of trading, describes themselves as a beginner/HODLer/swing trader/scalper/institution/no-KYC trader, or wants an all-in annual cost for a trader scenario. Loads a research-anchored persona preset (casual_buyer, hodler_accumulator, active_spot_trader, swing_futures_trader, day_scalper, vip_institutional, dex_native) that bundles monthly volume, maker share, futures holding hours, market-order clip size, withdrawal and fiat on/off-ramp habits, then runs the FULL annual cost stack across every venue allowed in the country — trading fees + funding + spread crossing + on-chain withdrawals + direct fiat deposit/cash-out legs — and returns the ranked venues with cost-mix %, cheapest-venue leader for each cost component, a winner with concrete reasons and trade-offs, and tailored advice (VIP upgrade saving, token-discount hint, live funding/depth suggestions). Every preset parameter can be overridden. Requires persona id and country code.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sideNo吃单方向,默认 buy;live 模式下 buy 行走卖盘 asks,sell 行走买盘 bids
countryYesISO 3166-1 alpha-2 居住国代码,如 US/CN/JP/GB/DE/BR;用于交易所合规过滤和法币通道地区过滤
personaYes交易员画像:casual_buyer=小额随买(银行卡入金主导);hodler_accumulator=定投囤币(银行通道+冷钱包提币);active_spot_trader=活跃现货;swing_futures_trader=合约波段(资金费敏感);day_scalper=高频刷单(90% maker、$300万/月);vip_institutional=高净值/机构($3000万/月+$300万资产);dex_native=链上无KYC(USDC 自托管出入)
currencyNo显示币种,默认 USD;汇率仅用于展示(法币通道币种由画像设定,默认 USD)
languageNo输出语言:en=英文(默认),zh=中文。仅影响 advice/warnings/tradeoffs/reasons 等叙述性文字,数值、字段名与错误码不受影响
useTokenNo是否使用平台币折扣(覆盖画像默认 false)
makerShareNo覆盖画像默认 maker 占比 0-1
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
holdingHoursNo覆盖画像默认月持仓敞口小时数(合约资金费)
tokenBalanceNo平台币/质押数量,配合 useToken
tradeSizeUsdNo覆盖画像默认单笔市价单规模(USD),触发点差穿越成本
accountAssetsUsdNo覆盖画像默认账户总资产(USD)
monthlyVolumeUsdNo覆盖画像默认月交易量(USD)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.47.1

TDQS

A4/5.0
Behavior5/5

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

Annotations only cover readOnlyHint and openWorldHint; the description carries the rest and does so richly: it enumerates the preset bundle contents (monthly volume, maker share, funding hours, clip size, withdrawal and fiat habits), the cost components summed, and the returned artifacts (cost-mix %, per-component cheapest leader, winner with reasons and trade-offs). It also discloses failure semantics elsewhere in the params (live request failures fall back to bundled baselines and are recorded in 'failures', shallow depth yields a warning).

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

Conciseness3/5

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

The content is dense and mostly earns its place, but the entire description is written twice, first in Chinese then in English, which roughly doubles length without adding information for a single reader. Front-loading is reasonable (the use case and persona list appear before the return description), but the duplication and multi-clause sentences hurt scannability.

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

Completeness5/5

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

There is no output schema, so the description must describe the return, and it does: ranked venues, cost-mix percentages, per-component cheapest leader, an overall winner with reasons and trade-offs, plus tailored advice. Combined with 100% schema coverage for the 16 inputs, an agent has everything needed to call it and interpret the result.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3, and the enum values for persona are explained in the schema itself. The description adds one genuinely non-derived fact — that every preset parameter can be overridden (hence the 16 optional fields) and that persona id plus country code are required — which is the key mental model for using the schema. It does not add format or interaction detail for the remaining overrides.

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

Purpose4/5

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

The description states a specific verb+resource: it loads a named persona preset and 'runs the FULL annual cost stack across every venue allowed in the country', returning ranked venues with cost-mix and a winner. That is far more than a restatement of the name. It does not, however, explicitly differentiate itself from close siblings such as compare_personas, calculate_annual_cost, or recommend_exchange, which an agent would need to disambiguate.

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

Usage Guidelines3/5

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

It gives concrete when-to-use triggers (user describes their trading style, asks which exchange fits them, or wants an all-in annual cost for a scenario), which is genuinely useful. But with 19 siblings including recommend_exchange, calculate_annual_cost, compare_total_cost and compare_personas, no alternative is ever named and no exclusion is stated, so routing remains inferential.

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