Skip to main content
Glama

cwsi.net Fare Classes & Mileage Calculators

Aeromexico Rewards Points Calculator

calculate_aeromexico_points
Read-onlyIdempotent

Aeromexico Rewards points and qualifying points for a flight operated by Aeromexico. Points = 8 per US dollar of base fare (the ticket total minus taxes and fees, whole ticket), rounded down; qualifying points are the same, except Basic Economy (class V, fam BS), which earns points but no qualifying points. The level does not change the earning (the "additional accrual" Aeromexico lists by level prints no unit, so it is not added). Progress toward Silver (25,000), Gold (50,000), Platinum (80,000) and Titanium (100,000) qualifying points in a calendar year; qp is the qualifying points so far. Uses cwsi.net's calculator and the airline's published rules. Unofficial.

Input Schema

NameRequiredDescriptionDefault
qpNoQualifying points you have so far this year (optional). Used only for the progress toward the next level.
famNoFare family. BS = Basic Economy (class V); CL = Clasica (R N E T Q L H K U M B Y); AP = AM Plus (class W); PR = Premier or Premier One (I D C J). The fare family on your ticket. All of them earn 8 points per dollar; only Basic Economy (class V) earns no qualifying points.CL
priceNoBase fare in US dollars (whole ticket) in US dollars. The ticket total minus taxes and fees, for the whole ticket. If you paid in pesos, enter the equivalent in US dollars. Required unless creditTo is given.
statusNoYour Aeromexico Rewards level. CL = Classic; SV = Silver; GD = Gold; PL = Platinum; TI = Titanium. Used only for the progress toward the next level. The earning is the same at every level.CL
creditToNoCredit the flights to a partner program instead of Aeromexico's own: delta = Delta SkyMiles (creditStatus one of: SkyMiles Member, Silver Medallion, Gold Medallion, Platinum Medallion, Diamond Medallion); flying-club = Flying Club (creditStatus one of: Red, Silver, Gold); flying-blue = Flying Blue (creditStatus one of: Explorer, Silver, Gold, Platinum, Ultimate). Earns by each flight's distance and the booking class at the program's published partner rates; leave creditTo out for the airline's own program. Give the booking class letter as creditClass. Give the flights as creditFlights (one entry per flight with its great-circle miles). No price is needed with creditTo.
creditClassNoThe booking class letter on the ticket, for creditTo (required with creditTo). Ignored without creditTo.
creditStatusNoYour status in the creditTo program, by its name as listed under creditTo. Defaults to the base level. Ignored without creditTo.
creditFlightsNoThe flights for creditTo: one entry per one-way flight, in order, with its great-circle miles (calculate_flight_distance gives them) and optionally from/to airport codes. Defaults to segs when they carry miles.

Output Schema

NameRequiredDescriptionDefault
linkYes
notesYes
inputsYes
airlineYes
headlineYes
progressNo
breakdownYes
calculatorYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • addedInput schema / properties / creditClass
      Added value: +{
      +  "description": "The booking class letter on the ticket, for creditTo (required with creditTo). Ignored without creditTo.",
      +  "pattern": "^[A-Za-z]$",
      +  "type": "string"
      +}
    • addedInput schema / properties / creditFlights
      Added value: +{
      +  "description": "The flights for creditTo: one entry per one-way flight, in order, with its great-circle miles (calculate_flight_distance gives them) and optionally from/to airport codes. Defaults to segs when they carry miles.",
      +  "items": {
      +    "properties": {
      +      "from": {
      +        "description": "The departure airport's code; labels the breakdown.",
      +        "pattern": "^[A-Za-z0-9]{3,4}$",
      +        "type": "string"
      +      },
      +      "miles": {
      +        "description": "Great-circle distance of this flight in miles.",
      +        "maximum": 12500,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "to": {
      +        "description": "The arrival airport's code; labels the breakdown.",
      +        "pattern": "^[A-Za-z0-9]{3,4}$",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "miles"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 8,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / creditStatus
      Added value: +{
      +  "description": "Your status in the creditTo program, by its name as listed under creditTo. Defaults to the base level. Ignored without creditTo.",
      +  "maxLength": 64,
      +  "type": "string"
      +}
    • addedInput schema / properties / creditTo
      Added value: +{
      +  "description": "Credit the flights to a partner program instead of Aeromexico's own: delta = Delta SkyMiles (creditStatus one of: SkyMiles Member, Silver Medallion, Gold Medallion, Platinum Medallion, Diamond Medallion); flying-club = Flying Club (creditStatus one of: Red, Silver, Gold); flying-blue = Flying Blue (creditStatus one of: Explorer, Silver, Gold, Platinum, Ultimate). Earns by each flight's distance and the booking class at the program's published partner rates; leave creditTo out for the airline's own program. Give the booking class letter as creditClass. Give the flights as creditFlights (one entry per flight with its great-circle miles). No price is needed with creditTo.",
      +  "enum": [
      +    "delta",
      +    "flying-club",
      +    "flying-blue"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / price / description
      Previous value: -"Base fare in US dollars (whole ticket) in US dollars. The ticket total minus taxes and fees, for the whole ticket. If you paid in pesos, enter the equivalent in US dollars."New value: +"Base fare in US dollars (whole ticket) in US dollars. The ticket total minus taxes and fees, for the whole ticket. If you paid in pesos, enter the equivalent in US dollars. Required unless creditTo is given."
    • removedInput schema / required
      Removed value: -[
      -  "price"
      -]
  2. Added

TDQS

A4.4/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 the safety bar is low. The description adds meaningful behavioral context beyond them: it discloses that the tool is unofficial, that it uses cwsi.net's calculator and published rules, and flags a nontrivial judgment call (the per-level 'additional accrual' is deliberately not added). No return-format detail is needed because an output schema exists.

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-loads the core purpose and earning formula before edge cases, and every sentence (rounding, Basic Economy exception, additional-accrual decision, progress thresholds) carries real information. It is dense as a single block and could be split, but there is no filler.

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?

Complete for a computation tool with a rich 8-param schema and an output schema: it explains the earning formula, the qualifying-points distinction, the escalation thresholds, currency handling, and the partner-crediting alternative, so an agent has everything needed to call it correctly. Return values are covered by the output schema, so omitting them is appropriate.

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 description coverage is 100%, so the baseline is 3, but the description adds tie-in semantics: it clarifies that price drives the 8-per-dollar formula, that fam only matters via the Basic Economy exception, and that status/qp affect only progress, not earning. This meaningfully reinforces the parameter roles on top of an already complete schema.

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?

States a specific verb+resource: calculates Aeromexico Rewards points and qualifying points for an Aeromexico-operated flight, with the exact earning rule (8 points per USD of base fare, rounded down). The airline name distinguishes it from the ~50 sibling calculators, and it names the one alternate path (creditTo partner programs).

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?

Gives clear operating context: level does not change earning, status/qp are used only for progress, Basic Economy earns points but no qualifying points, and price is required unless creditTo is given. It points to calculate_flight_distance as the source of the miles it needs. It does not explicitly state when to prefer this tool over a sibling airline calculator, but the airline scoping makes that self-evident.

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