Skip to main content
Glama

Rank pasted bus results

rank_pasted_results
Read-onlyIdempotent

Ranks bus results copied and pasted from redBus or MakeMyTrip, enabling comparison and sorting when the app cannot open the booking page directly.

Instructions

Rank buses from a results page the user copied and pasted (redBus or MakeMyTrip).

For apps that can't open the user's browser (ChatGPT, Gemini): the user opens plan_bus_trip's link, copies the whole page and pastes it. Returns the same ranked table as rank_buses.

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": {
      "text": "<text>",
      "origin": "<origin>",
      "destination": "<destination>",
      "travel_date": "<travel_date>"
    },
    "name": "rank_pasted_results"
  }
}

Input Schema

NameRequiredDescriptionDefault
siteNoWhere it was copied from; detected if left out.
textYesThe results page text the user copied from redBus or MakeMyTrip (select all, copy, paste). Pass it as pasted.
originYesStarting city.
sort_byNoHow to sort.best
bus_typeNoWhat the user wants.any
around_timeNoPreferred departure, HH:MM.
destinationYesDestination city.
travel_dateYesTravel date, YYYY-MM-DD (India time).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.7.0

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 and closed-world, so the safety profile is covered. The description adds genuine context beyond that: the input must come from a user-supplied paste of a redBus/MakeMyTrip results page, and the output mirrors rank_buses' ranked table. It does not say what happens when the pasted text is malformed or unparseable, which is the one behavioral gap.

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

Conciseness5/5

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

Two short paragraphs with zero waste: the first states what it does, the second states when and how to use it. The routing condition is front-loaded rather than buried after the mechanics.

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?

Eight parameters with four required and no output schema, but the description compensates by pointing to rank_buses' ranked table as the return shape and by spelling out the end-to-end paste workflow. What's missing is failure handling for unparseable or truncated pastes (the 60000-char cap lives only in the schema), a modest gap for an otherwise well-covered tool.

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%, so the schema already documents all eight parameters including enums, defaults, max lengths and date format. The description reinforces the meaning of the `text` parameter ('copies the whole page and pastes it') but adds no format or constraint detail beyond the schema. Baseline 3 is appropriate.

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 and resource ('Rank buses from a results page the user copied and pasted') and immediately constrains the source to redBus or MakeMyTrip. It also distinguishes itself from the similarly named sibling rank_buses by noting it returns the same ranked table, so an agent can tell the two apart without opening either schema.

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?

Explicitly names the condition that selects this tool: apps that can't open the user's browser (ChatGPT, Gemini), and gives the surrounding workflow with plan_bus_trip's link and copy-paste. The implicit alternative (rank_buses, for environments that can browse) is surfaced by the 'same ranked table' comparison.

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