Skip to main content
Glama

calculate_cbam_liability

Calculate CBAM (Carbon Border Adjustment Mechanism) embedded emissions and estimated EUR liability for an imported good. Covers Phase 1 sectors: cement, aluminium, iron & steel, fertilisers, hydrogen. Applies the year's phase-in rate (2.5% in 2026, ramping to 100% by 2032) and uses the live EU ETS price. The response gives TWO scenarios under cbam_obligation: 'without_own_mrv' (EU default values incl. a punitive mark-up — for exporters who have not verified their own emissions) and 'with_own_mrv' (verified actual emissions, no mark-up). Pass actual_emissions_tco2e_per_t (verified MRV figure) to populate the with_own_mrv scenario and the saving vs defaults; pass carbon_price_paid_eur_per_tonne to apply the Article 9 deduction (both scenarios) for carbon already priced at origin; pass project=true for a year-by-year forecast of both scenarios through 2034.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
yearNoCBAM compliance year (2026-2050). Determines phase-in rate and mark-up tier.
cn_codeYes8-digit EU Combined Nomenclature code, e.g. '25231000' for cement clinkers
projectNoIf true, includes a multi-year liability projection through 2034.
weight_tonnesYesWeight of the shipment in metric tonnes
origin_countryYesISO 3166-1 alpha-2 code of the manufacturing country, e.g. 'CN' for China
ets_price_eur_per_tonneNoOverride the live EU ETS carbon price (EUR/tonne CO2e).
actual_emissions_tco2e_per_tNoVerified actual emission intensity (tCO2e per tonne). If provided, returns an optimization block comparing it against EU default values.
carbon_price_paid_eur_per_tonneNoCarbon price already paid in the country of origin (EUR/tonne CO2e). Applies the Article 9 deduction.
carbon_price_rebate_eur_per_tonneNoRebate/compensation on the origin carbon price (EUR/tonne). Art. 9 requires the claim be net of rebates; deduction uses paid − rebate.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden and excels: it discloses live EU ETS price usage, phase-in rate ramp, punitive mark-up for unverified emissions, Article 9 deduction mechanism, and multi-year projection behavior. These are meaningful behavioral traits not inferable from the schema.

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 description is a single dense paragraph, but it is front-loaded with the core purpose and then systematically covers scenarios and parameter effects. Every sentence adds value, though slightly more formatting or bullet structure would improve scannability.

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?

Given 9 parameters, no output schema, and no annotations, this description is remarkably complete: it explains the two output scenarios, the phase-in timeline, the price source, deduction logic, parameter-triggered behaviors, and projection capability. It does not elaborate on errors or edge cases, but covers all essential operational aspects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Although the schema already describes all 9 parameters (100% coverage), the description adds crucial behavioral context: actual_emissions triggers an optimization block, carbon_price_paid applies Article 9, project enables forecasting, and ets_price overrides the live price. This goes well beyond the schema's property 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 opens with a clear action verb and resource: 'Calculate CBAM embedded emissions and estimated EUR liability for an imported good.' It further specifies sectors, phase-in rates, and scenario distinction, which distinguishes it from siblings like batch calculations or emissions-only tools.

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

Usage Guidelines4/5

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

The description provides clear guidance on when to pass optional parameters ('Pass actual_emissions...', 'pass carbon_price_paid...', 'pass project=true') and explains the effect of each. However, it does not explicitly name alternatives or exclusions, leaving the choice versus siblings like calculate_cbam_batch implicit rather than stated.

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