Skip to main content
Glama
chetto1983

Broker Analysis MCP

by chetto1983

fundamental_ratios

Read-only

Compute valuation, profitability, liquidity, leverage, and distress ratios from annual statements to evaluate a stock’s financial health, risk, and intrinsic value.

Instructions

Ratios from the latest annual statements (USMx accounting and financial ratios sheet): valuation (P/E, EV/EBITDA, EV/EBIT, P/B, P/S, FCF yield), profitability and DuPont (ROE = net margin x asset turnover x equity multiplier, ROA, ROIC, margins), turnover (receivables, inventory, days sales/inventory/payables, cash conversion cycle), liquidity (current, quick, cash ratios, operating cash flow coverage, working capital), leverage and coverage, payout. With risk_free_annual and equity_risk_premium (decimals, from the analyst) also CAPM cost of equity, WACC, EVA and unlevered beta; beta defaults to Yahoo's. Also the Piotroski F-score (financial strength, 0-9), Altman Z and Z'' (distress) and Beneish M-score (earnings manipulation), with their components in scores; not computed for banks and insurers. Ratios not meaningful (losses, banks without current assets) are null.

Input Schema

NameRequiredDescriptionDefault
betaNo
tickerYes
risk_free_annualNo
equity_risk_premiumNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and openWorldHint, so the description is not carrying the safety burden; it instead adds real substantive behavior: data provenance (latest annual statements, USMx sheet), beta defaulting to Yahoo's, analyst-supplied decimals for the risk-free rate and ERP, and null semantics for non-meaningful ratios. That is meaningful context beyond the structured fields.

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?

A single dense paragraph, front-loaded with the resource and immediately followed by the enumerated ratio families, so an agent scanning the first clause already knows what it gets. It is long but nearly every clause carries distinct information; only the DuPont formula restatement is arguably filler.

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 a read-only, four-parameter analytics tool with no output schema, the description covers what is returned, the key exceptional cases (nulls, banks/insurers excluded from score models), and the meaning of the optional inputs. Missing only any note on period fallback when no annual statement exists.

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 coverage is 0%, so the description must compensate, and it largely does: it explains that beta defaults to Yahoo's and that risk_free_annual/equity_risk_premium are decimals supplied by the analyst, and it implies the ticker identifies the company. It still does not state the units/convention for beta itself or whether the optional risk inputs are required as a pair.

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?

States the exact resource — ratios derived from the latest annual statements — and enumerates the families returned (valuation, DuPont, turnover, liquidity, leverage, payout, plus F-scores/Z-scores/M-score). That enumeration makes it easy to separate from siblings like technical_indicators or risk_metrics. It never explicitly names an alternative tool, so it stops short of a 5.

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?

Usage is implied: call it with a ticker to get annual-statement fundamental ratios. There is partial conditional guidance — CAPM/WACC/EVA only appear when risk_free_annual and equity_risk_premium are supplied, and Piotroski/Altman/Beneish are not computed for banks and insurers — but there is no explicit 'use this instead of X' routing.

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