TripWays

Find, price, and book tours, day trips, and activities worldwide, with live dates and prices.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
87%
Calidad de los nombres
100%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,401Tokens (definiciones de herramientas)
~5.2 KBTamaño de respuesta típico
Impacto significativo en la atención (2.66% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "tours": {
      "url": "https://mcp.tripways.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://mcp.tripways.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (6)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_tours(query, destination, price_min, price_max, duration_hours_min, ...)

Search the TripWays catalog of bookable tours, day trips, and activities worldwide. Pass a natural-language query plus any filters you already know: destination, price range in USD, duration in hours, activity, theme, or cancellation policy. Returns ranked tours with bokun_id, title, from-price, duration, destinations, rating, cancellation policy, hero_image, the TripWays page (url), and checkout_url. For live dates, remaining seats, or a group total, use check_availability and get_price_quote.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 500,
      "description": "Natural-language search, e.g. 'family food tour in Rome under $100'."
    },
    "destination": {
      "type": "string",
      "maxLength": 120,
      "description": "Place name (city, region, country, or well-known area/landmark). Resolved against TripWays destinations; a landmark that is not a destination is added to the search text."
    },
    "price_min": {
      "type": "number",
      "minimum": 0
    },
    "price_max": {
      "type": "number",
      "minimum": 0
    },
    "duration_hours_min": {
      "type": "number",
      "minimum": 0
    },
    "duration_hours_max": {
      "type": "number",
      "minimum": 0
    },
    "activity": {
      "type": "string",
      "maxLength": 60,
      "description": "Activity facet, e.g. food, hiking, snorkeling."
    },
    "theme": {
      "type": "string",
      "maxLength": 60
    },
    "cancellation": {
      "type": "string",
      "enum": [
        "free",
        "flexible",
        "partial",
        "non_refundable"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 8
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "tours": {
      "type": "array",
      "description": "Ranked tours; empty when nothing matched (see note).",
      "items": {
        "type": "object",
        "properties": {
          "bokun_id": {
            "type": "string",
            "description": "Tour id; the number in tripways.com/t/{id}."
          },
          "title": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "description": "The tour's TripWays page."
          },
          "checkout_url": {
            "type": "string",
            "description": "TripWays checkout for this tour."
          },
          "hero_image": {
            "type": "string",
            "description": "Main photo URL."
          },
          "from_price": {
            "type": "object",
            "description": "Lowest adult price.",
            "properties": {
              "amount": {
                "type": "number",
                "minimum": 0
              },
              "currency": {
                "type": "string"
              }
            }
          },
          "duration_text": {
            "type": "string"
          },
          "duration_hours": {
            "type": "number"
          },
          "destinations": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "themes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "activities": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "cancellation": {
            "type": "string",
            "description": "free, flexible, partial, or non_refundable."
          },
          "rating": {
            "type": "object",
            "properties": {
              "value": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "count": {
                "type": "integer"
              },
              "low_confidence": {
                "type": "boolean",
                "description": "True when there are fewer than 10 reviews."
              }
            }
          },
          "hotel_pickup": {
            "type": "boolean"
          },
          "bookable_natively": {
            "type": "boolean",
            "description": "True when checkout_url opens TripWays checkout; false when it opens the operator calendar."
          },
          "reason": {
            "type": [
              "string",
              "null"
            ],
            "description": "Why checkout works the way it does, e.g. pickup_required."
          },
          "gttd_eligible": {
            "type": "boolean",
            "description": "Listed on Google Things to Do."
          }
        }
      }
    },
    "note": {
      "type": "string",
      "description": "Why the list is empty or how the destination was read."
    },
    "destination_resolved": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "display_name": {
          "type": "string"
        },
        "level": {
          "type": "string",
          "description": "country, region, city, or district."
        },
        "country_code": {
          "type": "string"
        },
        "hierarchy": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "url": {
          "type": "string",
          "description": "The destination's TripWays page."
        },
        "tour_count": {
          "type": "integer"
        },
        "browseable": {
          "type": "boolean"
        },
        "resolved_via": {
          "type": "string",
          "description": "area_alias when a landmark maps to its parent destination."
        },
        "alias": {
          "type": "string"
        }
      }
    },
    "guidance": {
      "type": "string"
    }
  },
  "required": [
    "ok"
  ]
}
🟢get_tour_details(bokun_id)

Get the full details of one TripWays tour by bokun_id (the number in tripways.com/t/{id}): summary, itinerary stops, inclusions and exclusions, languages, cancellation policy, meeting point or pickup, from-price, rating, hero_image, url, and checkout_url. Live dates and group totals come from check_availability and get_price_quote.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "bokun_id": {
      "type": "string",
      "pattern": "^[0-9]+$"
    }
  },
  "required": [
    "bokun_id"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "bokun_id": {
      "type": "string",
      "description": "Tour id; the number in tripways.com/t/{id}."
    },
    "title": {
      "type": "string"
    },
    "url": {
      "type": "string",
      "description": "The tour's TripWays page."
    },
    "checkout_url": {
      "type": "string",
      "description": "TripWays checkout for this tour."
    },
    "hero_image": {
      "type": "string",
      "description": "Main photo URL."
    },
    "from_price": {
      "type": "object",
      "description": "Lowest adult price.",
      "properties": {
        "amount": {
          "type": "number",
          "minimum": 0
        },
        "currency": {
          "type": "string"
        }
      }
    },
    "duration_text": {
      "type": "string"
    },
    "duration_hours": {
      "type": "number"
    },
    "destinations": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "themes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "activities": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "cancellation": {
      "type": "string",
      "description": "free, flexible, partial, or non_refundable."
    },
    "rating": {
      "type": "object",
      "properties": {
        "value": {
          "type": [
            "number",
            "null"
          ]
        },
        "count": {
          "type": "integer"
        },
        "low_confidence": {
          "type": "boolean",
          "description": "True when there are fewer than 10 reviews."
        }
      }
    },
    "hotel_pickup": {
      "type": "boolean"
    },
    "bookable_natively": {
      "type": "boolean",
      "description": "True when checkout_url opens TripWays checkout; false when it opens the operator calendar."
    },
    "reason": {
      "type": [
        "string",
        "null"
      ],
      "description": "Why checkout works the way it does, e.g. pickup_required."
    },
    "gttd_eligible": {
      "type": "boolean",
      "description": "Listed on Google Things to Do."
    },
    "summary": {
      "type": "string"
    },
    "inclusions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "exclusions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "languages": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "meeting_pickup_label": {
      "type": "string"
    },
    "itinerary": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "stop_index": {
            "type": "integer"
          },
          "title": {
            "type": "string"
          },
          "body": {
            "type": "string"
          },
          "poi_name": {
            "type": "string"
          }
        }
      }
    },
    "guidance": {
      "type": "string"
    }
  },
  "required": [
    "ok"
  ]
}
🟢get_destination_info(query, country_code)

Resolve a place name (a city, region, country, or well-known area such as Khao Sok) to a TripWays destination with bookable tours. Useful before search_tours when a name could mean more than one place. An ambiguous name returns destination_ambiguous with a did_you_mean list; pass country_code (ISO 3166-1 alpha-2, e.g. FR) to choose one. Area names resolve to their parent destination and include resolved_via=area_alias.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "country_code": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Optional ISO2 pin, e.g. FR."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "destination": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "display_name": {
          "type": "string"
        },
        "level": {
          "type": "string",
          "description": "country, region, city, or district."
        },
        "country_code": {
          "type": "string"
        },
        "hierarchy": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "url": {
          "type": "string",
          "description": "The destination's TripWays page."
        },
        "tour_count": {
          "type": "integer"
        },
        "browseable": {
          "type": "boolean"
        },
        "resolved_via": {
          "type": "string",
          "description": "area_alias when a landmark maps to its parent destination."
        },
        "alias": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "ok"
  ]
}
🟢check_availability(bokun_id, date, date_end, party_size, travelers)

Check live start times and remaining seats for a TripWays tour on one date or a range of up to 31 days. Pass party_size (seats needed) or a travelers object; slots that cannot fit the group are left out, and party_size wins if both are given. The status field is ok, no_schedule, no_fit, or calendar_gone. Use get_price_quote with the same date, start time, and travelers for the total.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "bokun_id": {
      "type": "string",
      "pattern": "^[0-9]+$"
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "date_end": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Inclusive end; default = date. Max 31 days."
    },
    "party_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "Occupied seats to keep (not ticket count). Slots with availabilityCount < party_size are omitted unless unlimited. Wins over travelers when both are set."
    },
    "travelers": {
      "type": "object",
      "description": "Simple ages; mapped to occupied seats (infants excluded unless the tour has an infant category). Used only when party_size is omitted.",
      "properties": {
        "adults": {
          "type": "integer",
          "minimum": 0,
          "default": 1
        },
        "seniors": {
          "type": "integer",
          "minimum": 0
        },
        "youth": {
          "type": "integer",
          "minimum": 0
        },
        "children": {
          "type": "integer",
          "minimum": 0
        },
        "infants": {
          "type": "integer",
          "minimum": 0
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "bokun_id",
    "date"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "bokun_id": {
      "type": "string"
    },
    "status": {
      "type": "string",
      "description": "ok, no_schedule, no_fit, or calendar_gone."
    },
    "note": {
      "type": "string"
    },
    "slots": {
      "type": "array",
      "description": "Open start times that fit the party.",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "YYYY-MM-DD."
          },
          "start_time": {
            "type": "string",
            "description": "HH:MM."
          },
          "start_time_id": {
            "type": "integer",
            "description": "Pass to get_price_quote / get_booking_link."
          },
          "label": {
            "type": "string"
          },
          "spots_left": {
            "type": [
              "integer",
              "null"
            ],
            "description": "Null when unlimited."
          },
          "unlimited": {
            "type": "boolean"
          },
          "sold_out": {
            "type": "boolean"
          },
          "min_participants": {
            "type": "integer"
          },
          "rate_ids": {
            "type": "array"
          }
        }
      }
    },
    "bookable_natively": {
      "type": "boolean"
    },
    "reason": {
      "type": [
        "string",
        "null"
      ]
    },
    "checkout_url": {
      "type": "string"
    }
  },
  "required": [
    "ok"
  ]
}
🟢get_price_quote(bokun_id, date, start_time_id, start_time, travelers)

Get the live total for a TripWays tour on one date and start time for a traveler mix, priced from the operator's booking calendar. A quote does not hold seats or charge anything. Optional extras and promo codes are not included. When the tour's rates cannot price that mix, the result is unpriced.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "bokun_id": {
      "type": "string",
      "pattern": "^[0-9]+$"
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "start_time_id": {
      "type": "integer",
      "minimum": 1
    },
    "start_time": {
      "type": "string",
      "pattern": "^\\d{2}:\\d{2}$",
      "description": "HH:MM if start_time_id unknown."
    },
    "travelers": {
      "type": "object",
      "description": "Simple ages; mapped to Bokun pricing categories.",
      "properties": {
        "adults": {
          "type": "integer",
          "minimum": 0,
          "default": 1
        },
        "seniors": {
          "type": "integer",
          "minimum": 0
        },
        "youth": {
          "type": "integer",
          "minimum": 0
        },
        "children": {
          "type": "integer",
          "minimum": 0
        },
        "infants": {
          "type": "integer",
          "minimum": 0
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "bokun_id",
    "date"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "bokun_id": {
      "type": "string"
    },
    "quote_kind": {
      "type": "string"
    },
    "currency": {
      "type": "string"
    },
    "package_total": {
      "type": "number",
      "minimum": 0,
      "description": "Total for the whole group, before optional extras and promo codes."
    },
    "from_price": {
      "type": "number",
      "minimum": 0
    },
    "rate_title": {
      "type": "string"
    },
    "date": {
      "type": "string"
    },
    "start_time": {
      "type": "string"
    },
    "travelers_priced": {
      "type": "object",
      "description": "Traveler counts the total covers.",
      "additionalProperties": {
        "type": "integer"
      }
    },
    "min_participants": {
      "type": "integer"
    },
    "includes_required_extras": {
      "type": "boolean"
    },
    "optional_extras_excluded": {
      "type": "boolean"
    },
    "promo_applied": {
      "type": "boolean"
    },
    "bookable_natively": {
      "type": "boolean"
    },
    "reason": {
      "type": [
        "string",
        "null"
      ]
    },
    "checkout_url": {
      "type": "string",
      "description": "Checkout preset to this date, time, and travelers."
    }
  },
  "required": [
    "ok"
  ]
}
🟢get_booking_link(bokun_id, date, start_time_id, start_time, rate_id, ...)

Get the TripWays checkout link for a tour, optionally preset to a date, start time, rate, and traveler mix. The traveler pays on tripways.com; this tool does not hold seats or take payment. bookable_natively and reason say whether the link opens TripWays checkout or the operator's calendar, and whether a hotel pickup must be chosen at checkout.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "bokun_id": {
      "type": "string",
      "pattern": "^[0-9]+$"
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "start_time_id": {
      "type": "integer",
      "minimum": 1
    },
    "start_time": {
      "type": "string",
      "pattern": "^\\d{2}:\\d{2}$",
      "description": "HH:MM if start_time_id unknown."
    },
    "rate_id": {
      "type": "integer",
      "minimum": 1
    },
    "travelers": {
      "type": "object",
      "description": "Simple ages; mapped to Bokun pricing categories.",
      "properties": {
        "adults": {
          "type": "integer",
          "minimum": 0,
          "default": 1
        },
        "seniors": {
          "type": "integer",
          "minimum": 0
        },
        "youth": {
          "type": "integer",
          "minimum": 0
        },
        "children": {
          "type": "integer",
          "minimum": 0
        },
        "infants": {
          "type": "integer",
          "minimum": 0
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "bokun_id"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "bokun_id": {
      "type": "string"
    },
    "checkout_url": {
      "type": "string",
      "description": "Open in the browser to pay on tripways.com."
    },
    "bookable_natively": {
      "type": "boolean"
    },
    "reason": {
      "type": [
        "string",
        "null"
      ]
    },
    "start_time": {
      "type": "string"
    },
    "spots_left": {
      "type": [
        "integer",
        "null"
      ]
    },
    "min_participants": {
      "type": "integer"
    }
  },
  "required": [
    "ok"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada6 herramientas