Skip to main content
Glama

BusCalc — Business & Trade Calculations

Contribution-profit sensitivity and thresholds

buscalc_sensitivity
Read-onlyIdempotent

Find baseline profit, one-at-a-time endpoint changes, zero-profit thresholds and min/max profit across up to16 simultaneous rectangle corners. A threshold may be negative, outside the entered range, or undefined when slope is zero; none is an automatic recommendation. Returns a calculation receipt with inputs, results, assumptions, validation checks and source. The receipt is unsigned, not independent certification. No private data, external lookup or arbitrary code execution. Put tool fields inside inputs. Supply units or modelVersion only when listed in inputSchema. Follow its required fields and exact choices. Do not pass the REST calculator field inside MCP arguments.

Example tool call

This call uses example arguments supplied in the tool’s input schema.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "inputs": {
        "mode": "contribution",
        "ranges": [
          {
            "low": 40,
            "high": 120,
            "parameter": "quantity"
          },
          {
            "low": 40,
            "high": 60,
            "parameter": "price"
          }
        ],
        "baseline": {
          "price": 50,
          "quantity": 100,
          "fixedCost": 1000,
          "variableCost": 30
        }
      }
    },
    "name": "buscalc_sensitivity"
  }
}

Input Schema

NameRequiredDescriptionDefault
unitsNo
inputsYes
modelVersionNo

Output Schema

NameRequiredDescriptionDefault
unitsNo
inputsYes
receiptYes
resultsYes
sourceURLYes
calculatorYes
modelVersionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "inputs": {
      +      "baseline": {
      +        "fixedCost": 1000,
      +        "price": 50,
      +        "quantity": 100,
      +        "variableCost": 30
      +      },
      +      "mode": "contribution",
      +      "ranges": [
      +        {
      +          "high": 120,
      +          "low": 40,
      +          "parameter": "quantity"
      +        },
      +        {
      +          "high": 60,
      +          "low": 40,
      +          "parameter": "price"
      +        }
      +      ]
      +    }
      +  }
      +]
  2. Added

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent, non-destructive and closed-world, so the bar is lower, yet the description still adds real context: it discloses the return payload (a calculation receipt with inputs, results, assumptions, validation checks and source) and its trust limits (unsigned, not independent certification). It also states no private data, external lookup or arbitrary code execution, which goes beyond the annotation set.

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?

Outputs are front-loaded in the first sentence, followed by caveats and then envelope rules, which is a sensible order. A few clauses ('No private data, external lookup or arbitrary code execution') are somewhat boilerplate but still earn their place as trust signals.

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?

Given a deeply nested schema and an existing output schema, the description covers the essentials an agent needs: the analysis mode, the corner-count behavior, threshold edge cases that could be misread as recommendations, and how to wrap arguments. Only the mapping between range count and corner count, and sibling selection, remain implicit.

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?

Top-level schema coverage is 0%, but nested fields (low, high, parameter, baseline components) do carry descriptions, so the schema does much of the work. The description contributes the non-obvious envelope rules — put tool fields inside 'inputs', supply units or modelVersion only when listed, do not pass the REST calculator field — but it does not explain what 'rectangle corners' mean dimensionally beyond the 16-corner hint, leaving the 4-range/2^4 relationship implicit.

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?

The description uses specific verbs and names the concrete outputs: baseline profit, one-at-a-time endpoint changes, zero-profit thresholds, and min/max profit across up to 16 simultaneous rectangle corners. That is enough for an agent to distinguish it from siblings such as buscalc_break_even_sales or buscalc_uncertainty, though it never explicitly names those alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance relative to the many sibling calculators (break-even, uncertainty, value_of_information). The sentence 'none is an automatic recommendation' and the units/modelVersion advice are invocation and interpretation caveats, not tool-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.

Resources