Skip to main content
Glama

casio_991_solve

Solve algebraic polynomial equations: quadratic equations (ax^2 + bx + c = 0) and 2-variable simultaneous linear systems (a1x + b1y = c1, a2x + b2y = c2) with exact real and complex roots.

Behavior: Deterministic, idempotent calculation with zero external side effects. For quadratics: evaluates discriminant D = b^2 - 4ac; computes real roots or complex conjugates (x1, x2 = (-b ± isqrt(|D|)) / (2a)), and parabola vertex coordinates. For simultaneous systems: evaluates Cramer's determinant rule (D, Dx, Dy) to solve unique solutions or identify singular/parallel systems.

Usage Guidelines: Use when solving quadratic polynomials or 2-unknown linear systems. Do not use for statistical data fitting; use linear_regression instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
aYesFirst coefficient: quadratic coefficient a (for a*x^2, must be non-zero) or first linear equation x-coefficient a1.
bYesSecond coefficient: linear coefficient b (for b*x) or first linear equation y-coefficient b1.
cYesConstant term: constant c (for + c = 0) or first linear equation constant c1 (a1*x + b1*y = c1).
a2NoSecond linear equation x-coefficient a2 (required when type is 'simultaneous2', a2*x + b2*y = c2).
b2NoSecond linear equation y-coefficient b2 (required when type is 'simultaneous2', a2*x + b2*y = c2).
c2NoSecond linear equation constant term c2 (required when type is 'simultaneous2', a2*x + b2*y = c2).
typeNoEquation solver mode: 'quadratic' (solve single quadratic equation a*x^2 + b*x + c = 0) or 'simultaneous2' (solve system of 2 linear equations with 2 unknowns).quadratic

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed7 schema fields changed
    • addedInput schema / properties / a / description
      Added value: +"First coefficient: quadratic coefficient a (for a*x^2, must be non-zero) or first linear equation x-coefficient a1."
    • addedInput schema / properties / a2 / description
      Added value: +"Second linear equation x-coefficient a2 (required when type is 'simultaneous2', a2*x + b2*y = c2)."
    • addedInput schema / properties / b / description
      Added value: +"Second coefficient: linear coefficient b (for b*x) or first linear equation y-coefficient b1."
    • addedInput schema / properties / b2 / description
      Added value: +"Second linear equation y-coefficient b2 (required when type is 'simultaneous2', a2*x + b2*y = c2)."
    • addedInput schema / properties / c / description
      Added value: +"Constant term: constant c (for + c = 0) or first linear equation constant c1 (a1*x + b1*y = c1)."
    • addedInput schema / properties / c2 / description
      Added value: +"Second linear equation constant term c2 (required when type is 'simultaneous2', a2*x + b2*y = c2)."
    • addedInput schema / properties / type / description
      Added value: +"Equation solver mode: 'quadratic' (solve single quadratic equation a*x^2 + b*x + c = 0) or 'simultaneous2' (solve system of 2 linear equations with 2 unknowns)."
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

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

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It discloses determinism, idempotence, zero external side effects, the mathematical methods used (discriminant, Cramer's rule), complex-conjugate root behavior, vertex calculation, and singular/parallel system detection. The only minor gap is an explicit error-handling contract for invalid inputs beyond the schema's non-zero requirement for 'a'.

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

Conciseness5/5

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

The description is organized into clear sections with each sentence carrying distinct information: scope, behavioral guarantees, mathematical details, and usage boundaries. There is no filler or redundancy.

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 mathematical solver with no output schema and no annotations, the description covers all operation modes, the formulas used, expected outcomes (real/complex roots, vertex coordinates, singular systems), and usage guidance. It does not enumerate the exact response JSON structure, but the computed quantities are sufficiently specified for an agent to infer the output shape.

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. The description adds real value by explaining how the same coefficients map to different meanings depending on mode, and by showing the mathematical formulas (e.g., discriminant, Cramer's rule) that define the parameter semantics beyond the schema's per-field descriptions.

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 states a specific verb ('Solve') and resource ('algebraic polynomial equations'), and enumerates exactly the two supported equation types with explicit formulas. It distinguishes itself from siblings by naming linear_regression as the alternative for statistical fitting.

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?

Provides explicit inclusion criteria ('Use when solving quadratic polynomials or 2-unknown linear systems') and exclusion criteria ('Do not use for statistical data fitting; use linear_regression instead'). This leaves no ambiguity about when to select this tool versus a sibling.

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.

TDQS

A4.4/5.0
Disambiguation5/5

Every tool targets a separate calculation formula or regulatory context, and descriptions include explicit 'do not use... use X instead' cross-references that clearly separate similar calculators. Even overlapping financial/loan/tax tools are disambiguated by geography, employment model, or specific formula.

Naming Consistency4/5

All tool names are lowercase snake_case and follow a domain/acronym-plus-descriptor pattern, making the set visually and structurally consistent. Minor outliers like casio_991_solve and heavy acronyms (npv_irr, scorp_optimizer) prevent it from being perfectly uniform.

Tool Count2/5

At 28 tools, the server is above the 25-tool threshold that makes broad tool scanning costly for an agent. Every calculator is distinct, but the mix of unrelated domains (tax, fluid mechanics, rocket equations, restaurant tips) means most agents will only ever need a small subset.

Completeness4/5

The set covers a wide range of self-contained calculation domains, from finance and tax to physics and everyday bills, with no obvious dead ends—each tool returns a complete result. Missing general-purpose utilities such as unit/currency conversion or descriptive statistics are notable gaps, but they are workaroundable and don't break the server's specialized calculator model.

Resources