Skip to main content
Glama

Portfolio Terminal

What your funds cost a year

fund_fees
Read-onlyIdempotent

Computes, on the funds and amounts the user gives, what each fund's expense ratio takes a year (amount × expense ratio), the total and the weighted ratio, with the expense ratios of Portfolio Terminal's fees view (the fund's latest annual report as Yahoo Finance lists it). A fact, not a verdict: no other fund is suggested. A line that is not a fund, or whose ratio is not published, is named. Nothing is stored. Use it for "how much do my ETFs cost me a year".

Input Schema

NameRequiredDescriptionDefault
fundsYesOne line per fund: its ticker and what is invested in it now. At most 50.
currencyNoCurrency of every amount (default USD).

Output Schema

NameRequiredDescriptionDefault
urlYes
asOfYes
ruleYes
fundsYes
partialYes
currencyYes
notFundsYes
annualCostYes
weightedRatioYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive and open-world. The description adds meaningful behavior beyond them: the ratio provenance (Yahoo Finance's listing of the latest annual report), that no recommendation is made, and that non-fund or unpublished-ratio lines are explicitly named rather than silently dropped.

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?

Single paragraph with the computation and formula front-loaded, followed by caveats. Several parentheticals (the provenance clause especially) make it denser than strictly necessary, but no sentence is wasted.

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?

An output schema exists so return values need no explanation; the description still covers the calculation, provenance and degradation behavior for unpublished ratios. What is missing is only minor: how the weighted ratio is computed and what happens with mixed or non-USD currencies.

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 ticker, amount, currency and the 50-item cap are all documented in the schema. The description only restates 'funds and amounts the user gives' and adds no format, currency or edge-case detail beyond the schema, so the baseline 3 applies.

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 precise verb and resource ('Computes ... what each fund's expense ratio takes a year'), gives the formula (amount × expense ratio), the outputs (per-fund cost, total, weighted ratio) and the data source. This is clearly distinguishable from siblings like etf_holdings or analyze_ticker.

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?

Ends with an explicit trigger phrase ('Use it for "how much do my ETFs cost me a year"') and frames itself as a fact-finder, not advice. It does not name an alternative tool or state when not to use it, so it falls short of the top score.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources