Skip to main content
Glama

Brainy Prices — UAE Cost of Living

commute_cost

Read-onlyIdempotent

Monthly/annual car commute cost (fuel+Salik), or published area routes. No parking.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "commute_cost"
  }
}

Input Schema

NameRequiredDescriptionDefault
fuelNospecial95
sortNodistance_km
cursorNo
to_areaNo
from_areaNo
page_sizeNo
to_hub_idNo
emirate_idNo
km_per_dayNo
l_per_100kmNo
days_per_weekNo
salik_per_dayNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedOutput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
  2. Changed1 schema field changed
    • removedInput schema / $schema
      Removed value: -"https://json-schema.org/draft/2020-12/schema"
  3. Changed10 schema fields changed
    • removedInput schema / properties / emirate_id / type
      Removed value: -"string"
    • removedInput schema / properties / fuel / type
      Removed value: -"string"
    • removedInput schema / properties / sort / type
      Removed value: -"string"
    • removedInput schema / properties / to_hub_id / type
      Removed value: -"string"
    • removedOutput schema / $defs / AreaCommuteRoute
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "car": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "crossings": {
      -          "items": {
      -            "additionalProperties": false,
      -            "properties": {
      -              "aed": {
      -                "type": "number"
      -              },
      -              "at": {
      -                "type": "string"
      -              },
      -              "gate": {
      -                "type": "string"
      -              },
      -              "trip": {
      -                "enum": [
      -                  "morning",
      -                  "evening"
      -                ],
      -                "type": "string"
      -              }
      -            },
      -            "required": [
      -              "gate",
      -              "trip",
      -              "at",
      -              "aed"
      -            ],
      -            "type": "object"
      -          },
      -          "type": "array"
      -        },
      -        "days_per_week": {
      -          "type": "integer"
      -        },
      -        "depart_times": {
      -          "items": {
      -            "type": "string"
      -          },
      -          "type": "array"
      -        },
      -        "fuel_aed": {
      -          "type": "number"
      -        },
      -        "gates": {
      -          "items": {
      -            "type": "string"
      -          },
      -          "type": "array"
      -        },
      -        "km_per_day": {
      -          "type": "number"
      -        },
      -        "litres_per_100km": {
      -          "type": "number"
      -        },
      -        "monthly_aed": {
      -          "type": "number"
      -        },
      -        "parking": {
      -          "const": "not_included"
      -        },
      -        "tolls_aed": {
      -          "type": "number"
      -        },
      -        "tolls_per_day": {
      -          "type": "number"
      -        }
      -      },
      -      "required": [
      -        "monthly_aed",
      -        "km_per_day",
      -        "tolls_per_day",
      -        "days_per_week",
      -        "litres_per_100km",
      -        "depart_times",
      -        "fuel_aed",
      -        "tolls_aed",
      -        "parking",
      -        "gates",
      -        "crossings"
      -      ],
      -      "type": [
      -        "object",
      -        "null"
      -      ]
      -    },
      -    "distance_km": {
      -      "type": "number"
      -    },
      -    "emirate_id": {
      -      "enum": [
      -        "dubai",
      -        "abu_dhabi",
      -        "sharjah",
      -        "ajman",
      -        "umm_al_quwain",
      -        "ras_al_khaimah",
      -        "fujairah"
      -      ],
      -      "type": "string"
      -    },
      -    "from_area": {
      -      "type": "string"
      -    },
      -    "minutes_free_flow": {
      -      "type": [
      -        "integer",
      -        "null"
      -      ]
      -    },
      -    "minutes_peak": {
      -      "type": "null"
      -    },
      -    "provenance": {
      -      "$ref": "#/$defs/Provenance"
      -    },
      -    "to_hub_id": {
      -      "type": "string"
      -    },
      -    "to_hub_name": {
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "emirate_id",
      -    "from_area",
      -    "to_hub_id",
      -    "to_hub_name",
      -    "distance_km",
      -    "minutes_free_flow",
      -    "minutes_peak",
      -    "car",
      -    "provenance"
      -  ],
      -  "type": "object"
      -}
    • removedOutput schema / $defs / AreaCommuteRouteListResponse
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "data": {
      -      "items": {
      -        "$ref": "#/$defs/AreaCommuteRoute"
      -      },
      -      "type": "array"
      -    },
      -    "links": {
      -      "$ref": "#/$defs/Links"
      -    },
      -    "meta": {
      -      "$ref": "#/$defs/ResponseMeta"
      -    }
      -  },
      -  "required": [
      -    "meta",
      -    "data",
      -    "links"
      -  ],
      -  "type": "object"
      -}
    • removedOutput schema / $defs / CommuteEstimate
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "annual_total_aed": {
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    },
      -    "calculation_basis": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "kilometres_per_consumption_unit": {
      -          "type": "integer"
      -        },
      -        "months_per_year": {
      -          "type": "integer"
      -        },
      -        "weeks_per_year": {
      -          "type": "integer"
      -        }
      -      },
      -      "required": [
      -        "weeks_per_year",
      -        "months_per_year",
      -        "kilometres_per_consumption_unit"
      -      ],
      -      "type": "object"
      -    },
      -    "days_per_month": {
      -      "type": "number"
      -    },
      -    "fuel_month": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ]
      -    },
      -    "inputs": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "days_per_week": {
      -          "type": "number"
      -        },
      -        "fuel": {
      -          "enum": [
      -            "super98",
      -            "special95",
      -            "eplus91",
      -            "diesel"
      -          ],
      -          "type": "string"
      -        },
      -        "km_per_day": {
      -          "type": "number"
      -        },
      -        "l_per_100km": {
      -          "type": "number"
      -        },
      -        "salik_per_day": {
      -          "type": "integer"
      -        }
      -      },
      -      "required": [
      -        "km_per_day",
      -        "days_per_week",
      -        "l_per_100km",
      -        "fuel",
      -        "salik_per_day"
      -      ],
      -      "type": "object"
      -    },
      -    "litres_per_month": {
      -      "type": "number"
      -    },
      -    "missing": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "monthly_aed": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "fuel": {
      -          "type": [
      -            "number",
      -            "null"
      -          ]
      -        },
      -        "salik": {
      -          "type": [
      -            "number",
      -            "null"
      -          ]
      -        },
      -        "total": {
      -          "type": [
      -            "number",
      -            "null"
      -          ]
      -        }
      -      },
      -      "required": [
      -        "fuel",
      -        "salik",
      -        "total"
      -      ],
      -      "type": "object"
      -    },
      -    "not_included": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "price_per_litre_aed": {
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    },
      -    "provenance": {
      -      "$ref": "#/$defs/Provenance"
      -    },
      -    "salik_offpeak_rate_aed": {
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    },
      -    "salik_rate_aed": {
      -      "type": [
      -        "number",
      -        "null"
      -      ]
      -    }
      -  },
      -  "required": [
      -    "fuel_month",
      -    "inputs",
      -    "price_per_litre_aed",
      -    "salik_rate_aed",
      -    "days_per_month",
      -    "litres_per_month",
      -    "monthly_aed",
      -    "annual_total_aed",
      -    "missing",
      -    "not_included",
      -    "provenance"
      -  ],
      -  "type": "object"
      -}
    • removedOutput schema / $defs / CommuteEstimateResponse
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "data": {
      -      "anyOf": [
      -        {
      -          "$ref": "#/$defs/CommuteEstimate"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ]
      -    },
      -    "links": {
      -      "$ref": "#/$defs/Links"
      -    },
      -    "meta": {
      -      "$ref": "#/$defs/ResponseMeta"
      -    }
      -  },
      -  "required": [
      -    "meta",
      -    "data",
      -    "links"
      -  ],
      -  "type": "object"
      -}
    • removedOutput schema / $defs / ToolFailure
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "error": {
      -      "additionalProperties": false,
      -      "properties": {
      -        "code": {
      -          "type": "string"
      -        },
      -        "message": {
      -          "type": "string"
      -        },
      -        "retry_after_s": {
      -          "type": [
      -            "integer",
      -            "null"
      -          ]
      -        },
      -        "retryable": {
      -          "type": "boolean"
      -        }
      -      },
      -      "required": [
      -        "code",
      -        "message",
      -        "retryable",
      -        "retry_after_s"
      -      ],
      -      "type": "object"
      -    },
      -    "request_id": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    }
      -  },
      -  "required": [
      -    "error",
      -    "request_id"
      -  ],
      -  "type": "object"
      -}
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "$ref": "#/$defs/CommuteEstimateResponse"
      -  },
      -  {
      -    "$ref": "#/$defs/AreaCommuteRouteListResponse"
      -  },
      -  {
      -    "$ref": "#/$defs/ToolFailure"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "data": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "annual_total_aed": {
      +                "type": [
      +                  "number",
      +                  "null"
      +                ]
      +              },
      +              "calculation_basis": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "kilometres_per_consumption_unit": {
      +                    "type": "integer"
      +                  },
      +                  "months_per_year": {
      +                    "type": "integer"
      +                  },
      +                  "weeks_per_year": {
      +                    "type": "integer"
      +                  }
      +                },
      +                "required": [
      +                  "weeks_per_year",
      +                  "months_per_year",
      +                  "kilometres_per_consumption_unit"
      +                ],
      +                "type": "object"
      +              },
      +              "days_per_month": {
      +                "type": "number"
      +              },
      +              "fuel_month": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "inputs": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "days_per_week": {
      +                    "type": "number"
      +                  },
      +                  "fuel": {
      +                    "enum": [
      +                      "super98",
      +                      "special95",
      +                      "eplus91",
      +                      "diesel"
      +                    ]
      +                  },
      +                  "km_per_day": {
      +                    "type": "number"
      +                  },
      +                  "l_per_100km": {
      +                    "type": "number"
      +                  },
      +                  "salik_per_day": {
      +                    "type": "integer"
      +                  }
      +                },
      +                "required": [
      +                  "km_per_day",
      +                  "days_per_week",
      +                  "l_per_100km",
      +                  "fuel",
      +                  "salik_per_day"
      +                ],
      +                "type": "object"
      +              },
      +              "litres_per_month": {
      +                "type": "number"
      +              },
      +              "missing": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "monthly_aed": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "fuel": {
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  },
      +                  "salik": {
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  },
      +                  "total": {
      +                    "type": [
      +                      "number",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "fuel",
      +                  "salik",
      +                  "total"
      +                ],
      +                "type": "object"
      +              },
      +              "not_included": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "price_per_litre_aed": {
      +                "type": [
      +                  "number",
      +                  "null"
      +                ]
      +              },
      +              "provenance": {
      +                "$ref": "#/$defs/Provenance"
      +              },
      +              "salik_offpeak_rate_aed": {
      +                "type": [
      +                  "number",
      +                  "null"
      +                ]
      +              },
      +              "salik_rate_aed": {
      +                "type": [
      +                  "number",
      +                  "null"
      +                ]
      +              }
      +            },
      +            "required": [
      +              "fuel_month",
      +              "inputs",
      +              "price_per_litre_aed",
      +              "salik_rate_aed",
      +              "days_per_month",
      +              "litres_per_month",
      +              "monthly_aed",
      +              "annual_total_aed",
      +              "missing",
      +              "not_included",
      +              "provenance"
      +            ],
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "links": {
      +        "$ref": "#/$defs/Links"
      +      },
      +      "meta": {
      +        "$ref": "#/$defs/ResponseMeta"
      +      }
      +    },
      +    "required": [
      +      "meta",
      +      "data",
      +      "links"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "data": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "car": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "crossings": {
      +                  "items": {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "aed": {
      +                        "type": "number"
      +                      },
      +                      "at": {
      +                        "type": "string"
      +                      },
      +                      "gate": {
      +                        "type": "string"
      +                      },
      +                      "trip": {
      +                        "enum": [
      +                          "morning",
      +                          "evening"
      +                        ]
      +                      }
      +                    },
      +                    "required": [
      +                      "gate",
      +                      "trip",
      +                      "at",
      +                      "aed"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  "type": "array"
      +                },
      +                "days_per_week": {
      +                  "type": "integer"
      +                },
      +                "depart_times": {
      +                  "items": {
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "fuel_aed": {
      +                  "type": "number"
      +                },
      +                "gates": {
      +                  "items": {
      +                    "type": "string"
      +                  },
      +                  "type": "array"
      +                },
      +                "km_per_day": {
      +                  "type": "number"
      +                },
      +                "litres_per_100km": {
      +                  "type": "number"
      +                },
      +                "monthly_aed": {
      +                  "type": "number"
      +                },
      +                "parking": {
      +                  "const": "not_included"
      +                },
      +                "tolls_aed": {
      +                  "type": "number"
      +                },
      +                "tolls_per_day": {
      +                  "type": "number"
      +                }
      +              },
      +              "required": [
      +                "monthly_aed",
      +                "km_per_day",
      +                "tolls_per_day",
      +                "days_per_week",
      +                "litres_per_100km",
      +                "depart_times",
      +                "fuel_aed",
      +                "tolls_aed",
      +                "parking",
      +                "gates",
      +                "crossings"
      +              ],
      +              "type": [
      +                "object",
      +                "null"
      +              ]
      +            },
      +            "distance_km": {
      +              "type": "number"
      +            },
      +            "emirate_id": {
      +              "enum": [
      +                "dubai",
      +                "abu_dhabi",
      +                "sharjah",
      +                "ajman",
      +                "umm_al_quwain",
      +                "ras_al_khaimah",
      +                "fujairah"
      +              ]
      +            },
      +            "from_area": {
      +              "type": "string"
      +            },
      +            "minutes_free_flow": {
      +              "type": [
      +                "integer",
      +                "null"
      +              ]
      +            },
      +            "minutes_peak": {
      +              "type": "null"
      +            },
      +            "provenance": {
      +              "$ref": "#/$defs/Provenance"
      +            },
      +            "to_hub_id": {
      +              "type": "string"
      +            },
      +            "to_hub_name": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "emirate_id",
      +            "from_area",
      +            "to_hub_id",
      +            "to_hub_name",
      +            "distance_km",
      +            "minutes_free_flow",
      +            "minutes_peak",
      +            "car",
      +            "provenance"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "links": {
      +        "$ref": "#/$defs/Links"
      +      },
      +      "meta": {
      +        "$ref": "#/$defs/ResponseMeta"
      +      }
      +    },
      +    "required": [
      +      "meta",
      +      "data",
      +      "links"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "error": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "code": {
      +            "type": "string"
      +          },
      +          "message": {
      +            "type": "string"
      +          },
      +          "retry_after_s": {
      +            "type": [
      +              "integer",
      +              "null"
      +            ]
      +          },
      +          "retryable": {
      +            "type": "boolean"
      +          }
      +        },
      +        "required": [
      +          "code",
      +          "message",
      +          "retryable",
      +          "retry_after_s"
      +        ],
      +        "type": "object"
      +      },
      +      "request_id": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "required": [
      +      "error",
      +      "request_id"
      +    ],
      +    "type": "object"
      +  }
      +]
  4. Added

TDQS

C2.8/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavioral context by naming what is included in the cost (fuel + Salik) and what is excluded (parking), but says nothing about how the two modes interact, what happens with no parameters at all, or units/currency beyond the enum names.

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

Conciseness3/5

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

Two short clauses, front-loaded with no filler, which is structurally good. But the brevity is under-specification rather than economy: for a 12-parameter tool with zero schema descriptions, the telegraphic phrasing leaves too much unresolved.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. Everything else is missing: with 12 optional parameters at 0% schema coverage and two apparent operating modes, the description does not give an agent enough to construct a correct call. A user asking for a commute cost has no way to know which parameter set to use.

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

Parameters2/5

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

Schema description coverage is 0% across 12 parameters, so the description carries the full burden and mostly fails it. It accounts for fuel, Salik and area routes, but says nothing about km_per_day, l_per_100km, days_per_week, to_hub_id, emirate_id, sort, page_size, or cursor — and no units are given for the numeric fields that clearly need them.

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?

States a concrete resource (car commute cost) with the two cost components named (fuel + Salik) and an explicit scope exclusion (no parking). It also signals a second mode ("or published area routes"), which is what separates it from the sibling costs_by_area/costs_by_emirate, though the dual mode is only implied rather than spelled out.

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 statement of when to use this versus costs_by_area, costs_by_emirate, or transport_fares, and no explanation of when to supply km_per_day-style inputs versus from_area/to_area lookups. "No parking" is the only routing hint, and it is a scope exclusion rather than usage 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