# com.iconic-expeditions/concierge: tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/com.iconic-expeditions%2Fconcierge/versions/latest)
- Connected to: https://concierge.iconic-expeditions.com/mcp
- Homepage: https://concierge.iconic-expeditions.com/
- Repository: https://github.com/nyuchi/zti-app
- Scoring rules: v2
- Tools: 23
- Average: 40.8 / 100 (Cloudy)
- Near-identical pairs: 1

This page shows how com.iconic-expeditions/concierge's tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Minor: The server has no instructions. Say there, once, what the server is for and when to use it: Claude Code and Gemini CLI read the instructions before the tool descriptions.

## Tools

- `delete_itinerary`: 27 / 100
  - Major: Arguments without a description: itinerary_id.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Major: It may be destructive, but destructiveHint is not set.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `list_destinations`: 28 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: limit.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `update_itinerary`: 29 / 100
  - Major: Arguments without a description: itinerary_id, title, description, start_date.
  - Minor: String arguments with no constraint or example: title, description, start_date.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `delete_activity`: 30 / 100
  - Major: Arguments without a description: activity_id.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Major: It may be destructive, but destructiveHint is not set.
  - Minor: Required identifiers whose description does not say where the value comes from: activity_id. Name the tool or the place that returns it, or models look it up first.
- `get_destination`: 31 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `add_day`: 37 / 100
  - Major: Arguments without a description: itinerary_id, notes.
  - Minor: String arguments with no constraint or example: notes.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `get_itinerary_dossier`: 38 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: itinerary_id.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `request_bookings`: 38 / 100
  - Major: Arguments without a description: itinerary_id, contact_email, notes.
  - Minor: String arguments with no constraint or example: notes.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `request_full_service`: 38 / 100
  - Major: Arguments without a description: itinerary_id, contact_email, notes.
  - Minor: String arguments with no constraint or example: notes.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `search_wp_content`: 38 / 100
  - Minor: Arguments without a description: per_page.
  - Minor: String arguments with no constraint or example: search.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `get_wp_content`: 39 / 100
  - Minor: Arguments without a description: type.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `price_itinerary`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: itinerary_id, option_ids[].group_id, option_ids[].option_id, travellers.
  - Minor: String arguments with no constraint or example: option_ids[].group_id, option_ids[].option_id.
  - Minor: The description mentions none of its 3 or more arguments.
- `search_content`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: per_page.
  - Minor: String arguments with no constraint or example: search.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `add_activity`: 41 / 100
  - Minor: Arguments without a description: slot, description, duration_minutes.
  - Minor: String arguments with no constraint or example: description.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id, day_id. Name the tool or the place that returns it, or models look it up first.
- `get_content`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: type.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.
- `write_itinerary_day_detail`: 45 / 100
  - Major: Arguments without a description: itinerary_id, day_number, callouts, callouts[].kind, callouts[].body.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `set_itinerary_dossier`: 46 / 100
  - Minor: Arguments without a description: itinerary_id, legs[].start_day, legs[].end_day, seasonality.rows, seasonality.months, seasonality.months[].month, seasonality.months[].rank, cost_model.lines, cost_model.lines[].label, cost_model.tiers, cost_model.tiers[].amounts[].line_key, cost_model.option_groups, cost_model.option_groups[].label, cost_model.option_groups[].options, cost_model.option_groups[].options[].label, cost_model.option_groups[].options[].is_default, booking_order[].title, field_notes[].body, choices[].options, choices[].options[].label, choices[].options[].subtitle.
  - Minor: String arguments with no constraint or example: cost_model.tiers[].amounts[].line_key, choices[].options[].subtitle.
  - Minor: The meaning of the boolean argument cost_model.option_groups[].options[].is_default is unclear.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `list_itineraries`: 47 / 100
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `get_itinerary`: 48 / 100
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `request_verification`: 48 / 100
  - Minor: Arguments without a description: itinerary_id.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: itinerary_id. Name the tool or the place that returns it, or models look it up first.
- `create_itinerary`: 50 / 100
  - Minor: String arguments with no constraint or example: description.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `get_pricing`: 53 / 100
  - Minor: Says nothing about what it returns.
- `generate_itinerary_from_places`: 63 / 100
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
