AlgoTrips
Server Details
Plan priced day-by-day trips: flights, hotels, activities and transfers. Book on algotrips.com.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: destination lookup, account trip history, trip building, and build status. plan_trip and trip_status are related but cleanly separated by action versus monitoring.
All names use snake_case, but the conventions are mixed: destination_facts and trip_status are noun phrases, my_trips is a possessive noun phrase, and plan_trip is verb_noun. The set is still readable and understandable, but not a predictable pattern.
Four tools are well-scoped for this travel-planning server, covering discovery, existing trips, trip creation, and build tracking. Each tool earns its place without obvious redundancy.
The core lifecycle is covered: get destination facts, list recent trips, plan a trip, and check build status, with booking left to the external site. Minor gaps remain around modifying/canceling existing trips or retrieving richer details for already-created trips beyond the build-status flow.
Available Tools
4 toolsdestination_factsDestination factsARead-onlyIdempotentInspect
Facts about a travel destination (a city or region) from the AlgoTrips destination guides: country, a short overview, what the full guide covers, and links to the guide and to plan a trip there when available. If the place is not found, it names close matches to try instead.
| Name | Required | Description | Default |
|---|---|---|---|
| place | Yes | A city or region, for example "Kyoto" or "Bali". |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | No | |
| found | Yes | |
| guide | No | |
| links | No | |
| country | No | |
| summary | No | |
| hasGuide | No | |
| suggestions | No | |
| guideSections | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new context beyond that: the data source (AlgoTrips destination guides), the shape of the payload, and the not-found behavior of returning close matches — a non-obvious trait an agent would otherwise have to discover by failing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler; the resource and payload are front-loaded and the fallback caveat comes second, which is the right order. Slight density in the middle clause ('what the full guide covers') costs a little crispness but nothing is wasteful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter lookup with an output schema, this is complete: source, contents, availability qualifier ('when available'), and failure behavior are all stated. An agent can call it correctly, and interpret a miss, without reading anything else.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema coverage, the schema already documents 'place' with examples. The description restates the same domain ('a city or region') and implies the parameter can miss via the close-matches fallback, but adds no syntax, format, or matching-rule detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('Facts about a travel destination (a city or region)') and enumerates what is returned (country, overview, guide coverage, links), which is far more specific than the bare title. It does not explicitly contrast itself with siblings like plan_trip or my_trips, though the read-only lookup framing makes the distinction inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the lookup to call when it needs destination background before or instead of planning. There is no explicit 'use this when…' statement and no named alternative; the only routing guidance is the not-found fallback ('it names close matches to try instead'), which is helpful but concerns retry, not tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
my_tripsMy tripsARead-onlyIdempotentInspect
The signed-in AlgoTrips account's 10 most recent trips, newest first: title, cities, dates, status and a link to open each one on AlgoTrips. Needs the person to be signed in to AlgoTrips.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| trips | Yes |
TDQS
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 non-obvious behavior: a hard cap of 10 results, newest-first ordering, and the sign-in requirement. It omits edge behavior such as what happens if the person is not signed in or has zero trips.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the result set and scope, followed by the auth prerequisite. Every phrase carries information — the cap, ordering, returned fields, and sign-in requirement — with no padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero parameters, an output schema available, and annotations covering safety, the description is nearly complete: scope, ordering, fields and auth are all stated. The remaining gap is failure/empty-state behavior and any distinction from trip_status, which an agent would still have to guess.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters and the schema is empty, so there is nothing for the description to disambiguate. The baseline of 4 applies; the description correctly avoids inventing options like pagination or filtering that the schema does not support.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource and scope: the signed-in account's 10 most recent trips, newest first, with the exact fields returned (title, cities, dates, status, link). It does not, however, distinguish itself from the sibling trip_status or plan_trip, so an agent must infer the boundary between listing trips and querying one trip's status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the auth prerequisite ("Needs the person to be signed in to AlgoTrips"). The description never says when to prefer this over trip_status for a single trip or plan_trip for creating one, so the routing decision with siblings is left to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_tripPlan a tripAInspect
Builds a full day-by-day trip with live prices in the signed-in AlgoTrips account: flights from the home city (unless gettingAround is none), hotels, activities and transfers for each city, for the cities, start date, travellers and home city given. The kind of hotel (hotelStars) and what the travellers enjoy (interests) shape the hotels and activities picked. A field name the tool does not take is refused: nothing is built, and the answer names the right field. Returns a build id at once. The trip takes about 3 to 6 minutes, and AlgoTrips emails the person when it is ready (the price and the link), or if it could not build it, when it has their email (the answer says so). With choicesConfirmed not true and any of the budget, the kind of hotel, pace, activities, getting around or (2 or more cities) the city order left out, nothing is built: the answer lists those choices with their questions and defaults. Booking and payment happen on algotrips.com. Needs the person to be signed in to AlgoTrips.
| Name | Required | Description | Default |
|---|---|---|---|
| pace | No | How full each day is: relaxed, balanced or fast. | |
| year | No | The year of travel, with month. | |
| month | No | The month of travel (1 to 12), when the person has no exact day yet. With month + year and no startDate nothing is built: the answer suggests a start date (suggestedStartDate). | |
| adults | Yes | Adults travelling (1 to 9). | |
| cities | Yes | The cities to stay in, in order (1 to 6). | |
| homeCity | Yes | The city the travellers fly from and come back to. | |
| budgetInr | No | The whole trip budget in Indian rupees, a whole number (₹4.5 lakh = 450000). Left out: a typical amount for this trip is used. | |
| interests | No | What the travellers enjoy, the choices on the website: Culture, Food & Dining, Art & Museums, Beach, Nightlife, Shopping, History, Nature. Left out: a bit of everything. | |
| startDate | No | The exact day the trip starts, YYYY-MM-DD. Needed to build: without it nothing is built. | |
| hotelStars | No | The kinds of hotel the person wants, the choices on the website: 1 = hostels, 2 = value for money, 3 = 3-star (mid-range), 4 = 4-star (comfortable), 5 = 5-star (luxury). The best rated hotel of these kinds is picked. When given, it is used instead of hotelStandard. Left out: no preference for a kind of hotel. | |
| totalNights | No | Nights for the whole trip, when some cities have no nights of their own (split between them). | |
| childrenAges | No | Each child's age (0 to 17), at most 6 children. | |
| activityStyle | No | mix (some tours, some on your own), self_guided (mostly on your own) or all_inclusive (guided tours). | |
| gettingAround | No | How the travellers get there and between cities, the choices on the website: auto (AlgoTrips picks a flight or road / rail for each hop), all (a flight on every hop that has one), edge (flights to the first city and home from the last, road or rail in between), none (no flights: hotels, activities and transfers only). Left out: auto. | |
| hotelStandard | No | Hotel standard: budget, comfort or luxury. | |
| keepCityOrder | No | true keeps the cities in the order given. false or left out lets AlgoTrips pick the best order for flights and getting around. | |
| choicesConfirmed | No | true: any of budgetInr, the kind of hotel (hotelStars or hotelStandard), pace, activityStyle, gettingAround and (2 or more cities) keepCityOrder left out gets its default. false or left out: with any of them left out nothing is built, and the answer (status needs_choices) lists them with a question, the allowed values and the default for each. |
Output Schema
| Name | Required | Description |
|---|---|---|
| link | No | |
| cities | No | |
| status | Yes | |
| buildId | No | |
| choices | No | The choices left out (status needs_choices): for each, the input field, a question, the allowed values and the default used when it stays out. |
| message | Yes | |
| startDate | No | |
| suggestions | No | |
| suggestedStartDate | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false) by disclosing that the build is asynchronous (returns a build id immediately, 3-6 minutes), that AlgoTrips emails the result or failure, that unknown field names cause a refusal with a corrective message, and that booking/payment happen on algotrips.com rather than in the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action, and nearly every sentence carries distinct information (async timing, email, validation, prerequisites). Some sentences are dense run-ons, e.g. the long choicesConfirmed enumeration, which slightly hurts readability without being redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 17 parameters, an output schema, and full schema coverage, the description covers the hard parts: mutation, async completion, validation failure modes, and auth requirement. The one notable gap is not telling the agent that the returned build id is meant to be used with trip_status to check progress.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter meaning the schema cannot express: hotelStars and interests 'shape' which hotels and activities are picked, and flights are omitted entirely when gettingAround is none. It adds real semantics 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening sentence names a specific verb and resource: 'Builds a full day-by-day trip with live prices' for given cities, dates, travellers and home city. It is clearly the builder among siblings like my_trips and destination_facts, but it never names those siblings, so an agent must infer that trip_status is the follow-up to the returned build id.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete preconditions and gating rules: must be signed in, startDate is required, and with choicesConfirmed not true plus any of budget/hotel/pace/activities/gettingAround/city-order missing, nothing is built and questions are returned. It does not explicitly say when to prefer this over siblings or how to poll progress, which keeps it short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trip_statusTrip statusARead-onlyIdempotentInspect
How a trip build is going, by its build id: while it builds, what it is working on; when it is ready, the total price, nights, hotel (with its star rating and guest score out of 10) and number of activities per city, the order of the cities and why when AlgoTrips changed it, a day-by-day outline with the flights, and the link to open and book it on AlgoTrips. Needs the person to be signed in.
| Name | Required | Description | Default |
|---|---|---|---|
| buildId | Yes | The build id returned when the trip build started. |
Output Schema
| Name | Required | Description |
|---|---|---|
| days | No | |
| link | No | |
| order | No | The order the cities are visited in and why, only when AlgoTrips changed the order the person gave. |
| steps | No | |
| title | No | |
| total | No | |
| cities | No | |
| status | Yes | |
| flights | No | |
| message | Yes | |
| policyLink | No | |
| flightsWithoutFare | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the read-only and idempotent annotations, it discloses the signed-in requirement and phase-dependent behavior, including current work during the build and a booking link when ready. It omits operational details such as polling expectations and handling of failed or expired builds.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose and required identifier are front-loaded, and the remaining details are relevant to understanding the result. However, the long, densely packed first sentence would be easier to scan if split into lifecycle stages or bullets.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read with an output schema, it provides strong lifecycle, result, and authentication context. The main remaining gap is guidance for managing the asynchronous build, particularly polling and unsuccessful terminal states.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and buildId already documents both its origin and UUID format. The description's phrase 'by its build id' adds no meaningful parameter guidance beyond that schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly defines a trip-build status lookup keyed by build ID, with distinct in-progress and ready states. This build-specific scope distinguishes it from plan_trip and my_trips without requiring their schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The build-ID prerequisite and descriptions of the building and ready phases make the calling context clear. It does not explicitly say to use it after plan_trip or when my_trips would be the better alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
destination_facts - First observed
my_trips - First observed
plan_trip - First observed
trip_status
Related MCP Connectors
Plan trips on a map: routed transport, day-by-day itineraries, and a plan you can share.
AI travel agent — book flights, hotels, activities, and events worldwide via autonomad.ai.
Plan trips, search hotels and flights, get exact quotes and check out on Anywayr.
Plan trips and find hotels, tours and flights; build day-by-day itineraries. Account required.
Related MCP Servers
AlicenseAqualityDmaintenanceAI travel agent over MCP — live flights, hotels, activities, and events worldwide, then completes the booking on autonomad.ai.8340 npm2MIT- FlicenseNot gradedqualityDmaintenanceConverts natural language travel requests into customizable multi-city itineraries, with tools for planning, editing, and exporting trips across 69 global destinations.-
- AlicenseAqualityDmaintenanceTravel planning tools from Plantrip: generate day-by-day itineraries, AI packing lists, weather insights, and trip cost estimates. Every itinerary gets a shareable page the user owns; free API key, no subscription.1448 npmMIT
- AlicenseBqualityAmaintenanceOfficial MCP server for MAQAMI, a hotel and flight booking platform with 3M+ hotels. Search live hotel rates and flights, look up places, airports and hotel details, then prebook and book. Remote Streamable HTTP endpoint, no API key required.4186 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.