MCP server for managing and retrieving travel itineraries in Thailand, focusing on Phuket and Krabi regions. Provides tools to find itineraries, get detailed plans, and access location information.
Server has 10 tools with basic schemas and descriptions, but significant quality gaps. Most tools lack parameter descriptions (e.g., get_itinerary_details has no description for 'itinerary_id'). Descriptions are present but generic (avg ~80 chars, below 194-char baseline). No output schemas documented. Error handling is minimal, tools return bare error dicts without recovery guidance. Three tools (get_recommended_itinerary_resource, find_itineraries, get_itinerary_details) appear in multiple files with inconsistent definitions, suggesting incomplete refactoring. create_itinerary has complex nested array params (daily_plans) with no schema validation or field documentation.
Create a new travel itinerary with daily plans.
Find available travel itineraries based on number of nights.
Get list of all available locations in Thailand.
Retrieve travel itineraries with optional filtering by number of nights.
Retrieve a specific itinerary by its ID.
Get detailed information about a specific itinerary.
Retrieve locations with optional filtering by region.
Parameter descriptions missing or incomplete. get_itinerary_details, find_itineraries, get_itinerary_details lack descriptions for their input parameters. LLMs cannot infer parameter meaning from names alone.
Output schemas not documented. No tool explicitly documents what fields are returned or their types. Agents cannot plan downstream calls or extract data reliably.
create_itinerary has complex nested array parameter (daily_plans) with no field-level schema or validation. Parameter description does not specify required fields, types, or constraints for array elements.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Get a recommended itinerary for the specified number of nights.
Get details about recommended itineraries for the specified number of nights.
List all available durations (nights) for recommended itineraries.
Error handling returns bare dicts without recovery guidance. E.g., get_recommended_itinerary returns {"error": "..."} with no hint on what to do next. Agents cannot self-correct.
Duplicate/conflicting tool definitions. get_recommended_itinerary_resource, find_itineraries, and get_itinerary_details appear in multiple files (app/mcp/server.py, claude_mcp_server.py) with inconsistent schemas and descriptions. Unclear which is canonical.