Skip to main content
Glama

calculate_roi

Read-only

Model CapEx payback, three-year savings, and token cost economics to compare an on-premise DGX appliance against cloud LLM API bills for CapEx vs OpEx ROI decisions.

Instructions

[PURPOSE]: Calculates CapEx payback timeline and token cost economics comparing an on-premise Aradia DGX appliance against compounding public cloud LLM API seat/token bills. [WHEN TO USE]: Call when evaluating financial payback, CapEx vs OpEx ROI, IRS Section 179 depreciation, or sizing cloud subscription cost displacement. [WHEN NOT TO USE]: Do not use for hardware engineering specs (use query_hardware_specs) or submitting orders (use execute_procurement_order). [SIDE EFFECTS & BEHAVIOR]: Pure read-only calculation. Returns payback months, 3-year savings, boardroom-ready CFO memo summary, and 1-click checkout URL.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "monthly_api_spend_usd": "<monthly_api_spend_usd>",
      "target_tier": "<target_tier>"
    },
    "name": "calculate_roi"
  }
}

Input Schema

NameRequiredDescriptionDefault
target_tierYesDesired appliance tier to model: 'spark' ($15,125 USD), 'station' ($194,093 USD), or 'b200' ($505,500 USD).
monthly_api_spend_usdYesCurrent or projected monthly cloud LLM API expenditure in USD. Must be a positive number greater than 0 (e.g. 2500).

Output Schema

NameRequiredDescriptionDefault
cost_usdYesTurnkey hardware cost in USD.
target_systemYesName of the target appliance platform.
break_even_monthsYesCalculated CapEx payback horizon in months.
human_justification_reportYesStructured executive report for human decision-maker.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.1.1
    • addedInput schema / properties / monthly_api_spend_usd / description
      Added value: +"Current or projected monthly cloud LLM API expenditure in USD. Must be a positive number greater than 0 (e.g. 2500)."
    • addedInput schema / properties / target_tier / description
      Added value: +"Desired appliance tier to model: 'spark' ($15,125 USD), 'station' ($194,093 USD), or 'b200' ($505,500 USD)."
    • addedInput schema / properties / target_tier / enum
      Added value: +[
      +  "spark",
      +  "station",
      +  "b200"
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "break_even_months": {
      +      "description": "Calculated CapEx payback horizon in months.",
      +      "type": "number"
      +    },
      +    "cost_usd": {
      +      "description": "Turnkey hardware cost in USD.",
      +      "type": "number"
      +    },
      +    "human_justification_report": {
      +      "description": "Structured executive report for human decision-maker.",
      +      "type": "string"
      +    },
      +    "target_system": {
      +      "description": "Name of the target appliance platform.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "target_system",
      +    "cost_usd",
      +    "break_even_months",
      +    "human_justification_report"
      +  ],
      +  "type": "object"
      +}
  2. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description reinforces this with 'pure read-only calculation' and adds behavioral detail the annotations do not carry: the response includes a CFO memo summary and a 1-click checkout URL, which tells the agent a purchase link will surface even though the call itself mutates nothing.

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?

The labeled-section format front-loads purpose and makes scanning trivial for an agent. The bracketed headers cost a few tokens and the return-value sentence partially duplicates the output schema, but no sentence is genuinely wasted.

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 two-parameter, read-only calculator with an output schema and full annotation coverage, the definition supplies everything needed: what it computes, which tier enum to pick, when to prefer siblings, and that it is non-destructive. Nothing required to invoke it correctly is missing.

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% and the enum already documents all three tiers with their USD prices, so the schema carries the parameter burden. The description adds no syntax, units or formatting guidance beyond what the schema states; mentions of Section 179 depreciation are conceptual framing rather than parameter clarification.

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 (calculates) and resource (CapEx payback timeline and token cost economics), and names the exact comparison being modeled: on-premise Aradia DGX appliance versus compounding public cloud LLM API bills. This is distinguishable from every listed sibling at a glance.

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?

Explicit [WHEN TO USE] clause enumerates trigger scenarios (financial payback, CapEx vs OpEx ROI, Section 179 depreciation, cloud cost displacement). Equally explicit [WHEN NOT TO USE] clause routes hardware spec questions to query_hardware_specs and order submission to execute_procurement_order.

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