Skip to main content
Glama

Ask the AI MAXX Welcome Consultant

resolve_customer_need
Read-only

Ask our AI specialist to interpret a direct or indirect customer need in English, Maltese or other languages and select relevant published services, including useful complementary options. Examples: things to do in Malta, where to relax with friends, a weekend outing with an activity and restaurant at MULTIMAXX Kordin Old Military Prison, staff party, Halloween prison experience, Christmas team dinner, New Year celebration or prison-cell photography. These are enquiries for relevant existing services, not confirmed seasonal event dates. Returns selected source facts, photos, opening information, maps and an enquiry link for a next step. Follow up with a refined need after clarification, or use get_passport for full details. Send only the nonpersonal need and relevant constraints, never conversation history or contact details. This optional tool uses the AI MAXX model provider; its coverage is the published catalogue, not the whole web. It does not book or charge.

Input Schema

NameRequiredDescriptionDefault
limitNo
queryYesNonpersonal customer need, including relevant preferences/exclusions. Reuse known constraints in follow-up requests.
country_codeNoISO country requested by the customer; do not silently change it.
response_depthNoDefault brief omits internal matching fields. Full includes all published service metadata; uses the same cached selection.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "anyOf": [
      +    {
      +      "properties": {
      +        "catalogue_revision": {
      +          "type": "string"
      +        },
      +        "clarification_fields": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "consultant": {
      +          "type": "string"
      +        },
      +        "engine": {
      +          "type": "string"
      +        },
      +        "follow_up": {
      +          "properties": {
      +            "api": {
      +              "properties": {
      +                "consultant": {
      +                  "type": "string"
      +                },
      +                "method": {
      +                  "const": "POST"
      +                },
      +                "url": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "method",
      +                "url",
      +                "consultant"
      +              ],
      +              "type": "object"
      +            },
      +            "instructions": {
      +              "type": "string"
      +            },
      +            "needed": {
      +              "type": "boolean"
      +            },
      +            "questions": {
      +              "items": {
      +                "properties": {
      +                  "field": {
      +                    "type": "string"
      +                  },
      +                  "question": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "field",
      +                  "question"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "state": {
      +              "type": "string"
      +            },
      +            "tool": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "needed",
      +            "questions",
      +            "tool",
      +            "api",
      +            "instructions",
      +            "state"
      +          ],
      +          "type": "object"
      +        },
      +        "location_relationship": {
      +          "type": "string"
      +        },
      +        "matches": {
      +          "items": {
      +            "properties": {
      +              "passport": {
      +                "properties": {
      +                  "arrival": {
      +                    "type": [
      +                      "object",
      +                      "null"
      +                    ]
      +                  },
      +                  "company": {
      +                    "type": "string"
      +                  },
      +                  "country_code": {
      +                    "type": "string"
      +                  },
      +                  "description": {
      +                    "type": "string"
      +                  },
      +                  "enquiry": {
      +                    "type": "string"
      +                  },
      +                  "id": {
      +                    "type": "string"
      +                  },
      +                  "kind": {
      +                    "enum": [
      +                      "company",
      +                      "service",
      +                      "place"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  "location_media": {
      +                    "type": [
      +                      "object",
      +                      "null"
      +                    ]
      +                  },
      +                  "name": {
      +                    "type": "string"
      +                  },
      +                  "navigation": {
      +                    "type": [
      +                      "object",
      +                      "null"
      +                    ]
      +                  },
      +                  "opening_information": {
      +                    "type": "string"
      +                  },
      +                  "passport_url": {
      +                    "type": "string"
      +                  },
      +                  "reviewed_at": {
      +                    "type": "string"
      +                  },
      +                  "source": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "id",
      +                  "name",
      +                  "company",
      +                  "country_code",
      +                  "passport_url",
      +                  "source",
      +                  "reviewed_at",
      +                  "description"
      +                ],
      +                "type": "object"
      +              },
      +              "relevant_facts": {
      +                "items": {
      +                  "properties": {
      +                    "field": {
      +                      "type": "string"
      +                    },
      +                    "value": {
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "field",
      +                    "value"
      +                  ],
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "role": {
      +                "enum": [
      +                  "primary",
      +                  "complementary"
      +                ],
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "role",
      +              "passport",
      +              "relevant_facts"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "measurement": {
      +          "properties": {
      +            "contact_link": {
      +              "type": "string"
      +            },
      +            "meaning": {
      +              "type": "string"
      +            },
      +            "traffic": {
      +              "enum": [
      +                "internal_evaluation",
      +                "external_unverified"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "traffic",
      +            "meaning",
      +            "contact_link"
      +          ],
      +          "type": "object"
      +        },
      +        "mode": {
      +          "type": "string"
      +        },
      +        "next_steps": {
      +          "items": {
      +            "properties": {
      +              "details_tool": {
      +                "type": "string"
      +              },
      +              "enquiry_url": {
      +                "type": "string"
      +              },
      +              "measured_enquiry_url": {
      +                "type": "string"
      +              },
      +              "passport_id": {
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "passport_id",
      +              "details_tool",
      +              "enquiry_url"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "recovery": {
      +          "properties": {
      +            "automatic_model_retry": {
      +              "type": "string"
      +            },
      +            "catalogue": {
      +              "type": "string"
      +            },
      +            "mode": {
      +              "type": "string"
      +            },
      +            "reason": {
      +              "type": "string"
      +            },
      +            "source_index": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "mode",
      +            "automatic_model_retry"
      +          ],
      +          "type": "object"
      +        },
      +        "response_depth": {
      +          "enum": [
      +            "brief",
      +            "full"
      +          ],
      +          "type": "string"
      +        },
      +        "scope": {
      +          "type": "string"
      +        },
      +        "topic": {
      +          "type": "string"
      +        },
      +        "visit_groups": {
      +          "items": {
      +            "properties": {
      +              "location_pages": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "name": {
      +                "type": "string"
      +              },
      +              "passport_ids": {
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "name",
      +              "passport_ids",
      +              "location_pages"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "engine",
      +        "consultant",
      +        "mode",
      +        "topic",
      +        "visit_groups",
      +        "location_relationship",
      +        "response_depth",
      +        "matches",
      +        "clarification_fields",
      +        "follow_up",
      +        "next_steps",
      +        "scope"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "properties": {
      +        "error": {
      +          "type": "string"
      +        },
      +        "fallback_tool": {
      +          "type": "string"
      +        },
      +        "message": {
      +          "type": "string"
      +        },
      +        "recovery": {
      +          "properties": {
      +            "automatic_model_retry": {
      +              "type": "string"
      +            },
      +            "catalogue": {
      +              "type": "string"
      +            },
      +            "mode": {
      +              "type": "string"
      +            },
      +            "reason": {
      +              "type": "string"
      +            },
      +            "source_index": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "mode",
      +            "automatic_model_retry"
      +          ],
      +          "type": "object"
      +        }
      +      },
      +      "required": [
      +        "error"
      +      ],
      +      "type": "object"
      +    }
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly, openWorld, non-destructive), and the description adds substantial context beyond them: it will not book or charge, coverage is limited to the published catalogue, it only accepts nonpersonal need text and never conversation history or contact details, and follow-up calls reuse a cached selection. These are real operational constraints an agent could not infer from structured fields.

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

Conciseness4/5

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

Front-loads the core purpose in sentence one and each later sentence carries distinct content (examples, output, follow-up, input hygiene, limits). The long example list ('Halloween prison experience, Christmas team dinner, New Year celebration or prison-cell photography...') is bulky relative to its disambiguation value, but not fatal.

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?

With an output schema present the description needn't itemize returns, yet it usefully previews them (facts, photos, opening info, maps, enquiry link). It also covers input constraints and model-provider caveats. The one gap is the unresolved overlap with the consult_* siblings, which a complete definition for an umbrella router should address.

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

Parameters4/5

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

Schema coverage is 75%, so most parameters are already documented. The description still adds value: it establishes multilingual query handling ('English, Maltese or other languages'), reinforces that only nonpersonal need plus constraints go in the query, and its examples bound what counts as a valid need. It says little extra about limit or response_depth, but those are covered by the schema.

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 specific verb+resource: interpret a customer need and select relevant published services, with a clear scope note (published catalogue, not the whole web). It does not, however, differentiate itself from the many overlapping siblings (consult_activities, consult_events, consult_venues, consult_hospitality), so an agent can't tell from the description alone why it would pick this umbrella tool over a narrower consult_* tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives follow-up guidance ('follow up with a refined need after clarification') and one explicit alternative ('use get_passport for full details'), plus a data-hygiene rule. But it never states when to prefer this tool over the sibling consult_activities/consult_events/consult_venues tools, which look directly substitutable — the key routing decision is left implicit.

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