Skip to main content
Glama
gaokai258

Fee Optimizer MCP

by gaokai258

compare_personas

Read-only

Generate a side-by-side decision matrix comparing all seven trader personas across exchanges for a country, showing suitable venue and annual all-in cost per profile.

Instructions

当用户想一次看清"什么类型的交易者该用哪个交易所"、要全部 7 种画像并排对比、做决策矩阵/选型总览,或问"哪个交易所适合最多人/最全能"时使用。Use when the user wants a side-by-side decision matrix of ALL trader personas (casual buyer, DCA HODLer, active spot, swing futures, scalper, VIP/institutional, no-KYC on-chain) for their country in one call. Runs each persona's full annual all-in stack across every allowed venue, then returns per-persona winner + realistic best_complete pick (every cost leg actually priced — headline winners with no fiat/withdrawal rail are demoted), a persona×venue annual-cost matrix, cross-persona venue win counts, and the single most versatile venue. Requires only the country; optionally restrict personas or force useToken. This is the fastest way to answer "which exchange for which kind of trader".

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sideNo吃单方向,默认 buy;live 模式下 buy 行走卖盘 asks,sell 行走买盘 bids
formatNo矩阵渲染格式:json=仅结构化 JSON(默认,行为不变);markdown=在结果中额外附 rendered.markdown 可直接粘贴的表格;csv=附 rendered.csv(CRLF、RFC4180 转义,可导入 Excel);both=两者都附
countryYesISO 3166-1 alpha-2 居住国代码,如 US/CN/JP/GB/DE/BR;合规过滤与法币通道按此国执行
currencyNo显示币种,默认 USD
languageNo输出语言:en=英文(默认),zh=中文。仅影响 advice/warnings/tradeoffs/reasons 等叙述性文字,数值、字段名与错误码不受影响
personasNo只跑指定画像子集(默认全部 7 个,按传入顺序去重):casual_buyer/hodler_accumulator/active_spot_trader/swing_futures_trader/day_scalper/vip_institutional/dex_native
useTokenNo对所有画像统一开启/关闭平台币折扣(默认沿用各画像设定,多数为 false)
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

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.47.1

TDQS

A4/5.0
Behavior4/5

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

Annotations cover safety (readOnlyHint=true, openWorldHint=false), and the description adds real behavioral substance beyond them: it discloses the computation (full annual all-in stack per persona per venue) and the demotion logic ('headline winners with no fiat/withdrawal rail are demoted') plus the best_complete pick semantics. That is genuinely useful context an agent would not get from annotations.

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 trigger condition is front-loaded, which is good, but the paragraph is long and the Chinese and English halves largely duplicate each other, so a substantial fraction of the text is redundant rather than additive.

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

Completeness4/5

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

For an 11-parameter, no-output-schema tool, the description carries the burden of explaining return shape and largely does so (per-persona winner, best_complete pick, persona×venue matrix, win counts, most versatile venue). It is complete enough to call correctly, though a few optional parameters (spreadMode/fundingMode behavior) live only in the schema.

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 11 parameters are already documented in the schema. The description only restates that country is required and that personas/useToken are optional, adding no syntax or format detail beyond the schema. Baseline 3 is appropriate when the schema does the heavy lifting.

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?

States a specific verb+resource (run all 7 persona stacks side-by-side for a country) and explicitly scopes it as a single-call multi-persona comparison, which distinguishes it from the sibling analyze_persona (single persona). An agent can tell what it produces 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 Guidelines4/5

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

Front-loads explicit trigger conditions in Chinese ('当用户想…时使用') and mirrors them in English ('Use when the user wants a side-by-side decision matrix of ALL trader personas…'). It gives clear context for when to reach for this tool but never names the alternative (analyze_persona) or states when-not to use it.

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