Skip to main content
Glama

Fair Value MCP Server

Convertible and exchangeable bond valuation

calculate_convertible_bond
Read-onlyIdempotent

Convertible-bond engine. Value callable and puttable convertible or exchangeable bonds with credit risk using a Tsiveriotis-Fernandes lattice (equity discounted at the risk-free rate, debt at a credit spread), with conversion, issuer call, holder put, coupon schedule, and a straight-bond floor. Use this for convertible and exchangeable bonds; for a plain bond or rate curve use calculate_fixed_income, and for a standalone option or warrant use calculate_option. The lattice_tsf, lattice_intensity, finite_difference, lsmc and quantlib methods are alternative numerical schemes for the same valuation and take identical inputs (Tsiveriotis-Fernandes is the reference, lsmc is Monte Carlo, quantlib needs the optional engine); choose one. Methods: lattice_tsf/lattice_intensity/finite_difference/lsmc/quantlib: spot, face, coupon_rate, maturity, conversion_ratio, volatility, risk_free, credit_spread, call_schedule, put_schedule, rights_priority. Supply exactly one method with its declared inputs (no defaults). An unknown method, a missing input, or an extra field returns an error envelope (code INVALID_ARGUMENT) instead of raising.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
faceNoBond face value.
spotNoSpot price of the underlying (or FX rate for garman_kohlhagen).
methodYesFormula to apply; the tool description lists the exact inputs each value requires.
maturityNoTime to expiry in years (0.5 = six months); > 0.
risk_freeNoContinuously-compounded risk-free rate (decimal).
volatilityNoAnnualized volatility (decimal, 0.30 = 30%); > 0.
coupon_rateNoAnnual coupon rate (decimal).
put_scheduleNoInvestor put schedule [{date_years, price}]; pass [] when there is none.
call_scheduleNoIssuer call schedule [{date_years, price}]; pass [] when there is none.
credit_spreadNoCredit spread over the risk-free rate (decimal).
rights_priorityNoWhich right prevails when call and put coincide.
conversion_ratioNoShares received per bond on conversion.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoError detail, present only when status='error'.
stepsNoOrdered computation steps, when the method reports them.
valueNoPrimary result: a number for scalar methods, an object for valuation methods.
methodNoMethod or tool name that produced the result.
statusYes'ok' on success, 'error' on failure.
tickerNoTicker the result pertains to, when applicable.
assumptionsNoInputs and assumptions used, echoed for traceability.
formula_refNoFormula or standards reference for the method.
data_timestampNoISO-8601 UTC timestamp of the underlying data, when fetched.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so safety is covered; the description goes further by disclosing the error contract (unknown method, missing input, or extra field yields an INVALID_ARGUMENT envelope rather than raising), the no-defaults rule, and that quantlib needs an optional engine while lsmc is Monte Carlo. It stops short of describing convergence/accuracy trade-offs or runtime cost, which would matter for method choice.

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?

Front-loaded with the engine and technique before the routing guidance and method list, and every sentence carries information. It is somewhat repetitive, enumerating the five method names in two separate sentences plus the schema enum, which costs a little density.

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?

For a 12-parameter tool with a 100% covered schema and an output schema, the description supplies everything else an agent needs: the valuation domain, the sibling routing, the method/input contract, and the error behavior. Return values need not be explained given the output schema.

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 100%, so the baseline is 3, but the description adds real invocation semantics beyond the schema: exactly one method's declared inputs must be supplied with no defaults, extra fields are rejected, and the method list is enumerated with its input set. This clarifies a schema that otherwise marks every parameter nullable with default null.

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 names a specific verb+resource (value callable/puttable convertible or exchangeable bonds) and the exact numerical technique (Tsiveriotis-Fernandes lattice with credit spread), which immediately distinguishes it from the fixed-income and option siblings. An agent can identify the tool 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?

It explicitly routes the agent: use this for convertible/exchangeable bonds, use calculate_fixed_income for plain bonds or rate curves, and calculate_option for standalone options/warrants. It also explains that the five methods are interchangeable schemes for the same valuation and that the agent must choose one, which is genuine selection guidance.

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.