Skip to main content
Glama

Show Map

show_map
Read-onlyIdempotent

Afișează cazări pe o hartă INTERACTIVĂ — aceiași parametri de localizare/filtrare ca find_accommodations (where/near/nume/tokeni/criterii/teme/sort), region-routed. Widget MCP Apps când clientul suportă; altfel listă cu coordonate. Folosește-l când utilizatorul cere „pe hartă". Sursă: tria.ro.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nearNo„Lângă mine" / în jurul unui punct.
numeNoDOAR nume de cazare/proprietate/brand. Nu folosi pentru facilități, experiențe, stil sau caracter; acelea merg în `tokeni`.
pageNoPagina
sortNoAVANSAT/legacy: o singură dimensiune de ranking. Pentru user intent folosește `tokeni`.
temeNoAVANSAT/legacy: filtru pe categorie (național), ex. ["cabane","cu-piscina"]. Pentru agenți AI preferă `tokeni`.
limitNoCâte cazări/pini (implicit 12, max 30)
whereNoUNDE — locație structurată (județ/oraș/localitate/stațiune), acceptă și "localitate, județ" (ex. "Filiași, Dolj"), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea → național; nerecunoscut → eroare.
tokeniNoTokeni publici de intenție/facilitate/experiență/stil, ex. ["ciubar"], ["lux"], ["spa"], ["piscina"], ["munte","liniste"]. Pe tokenii reali de caracter cu negabil=true în capabilities(), acceptă minus: ["urban","animat","cultura-"].
criteriiNoAVANSAT/legacy: ranking pe caracter (media). Vocabular: liniste,natura,munte,arii_protejate,schi,apa,family,gastro,vin_crame,crame,cultura_istorie,cultura,nightlife,business,relaxare,urbanitate,izolare,magnetism,turism,afluenta_turistica,farmec,dezirabilitate,aproape_de_mare,aproape_de_aeroport,aproape_de_tren

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNo
totalNoTotal cazări care corespund (poți pagina pentru restul)
resultsNoCazări cu coordonate, pentru hartă (eșantion — vezi total). Fiecare are `rezolutie`.
per_pageNo
returnedNoCâte sunt în această pagină

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • removedOutput schema / properties / results / items / properties / map_png_resource
      Removed value: -{
      -  "description": "URI MCP resources/read pentru PNG: tria://map/{slug}.png. Nu toți clienții citesc template-uri; pe ChatGPT folosește get_map(slug).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / results / items / properties / map_png_url
      Removed value: -{
      -  "description": "Harta statică PNG a cazării, publică HTTP — doar la get_accommodation și doar dacă ai egress. Pentru PDF/DOCX fără egress folosește get_map(slug).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / results / items / properties / map_svg_resource
      Removed value: -{
      -  "description": "URI MCP resources/read pentru SVG: tria://map/{slug}.svg. Nu toți clienții citesc template-uri; pe ChatGPT folosește get_map(slug).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / results / items / properties / map_svg_url
      Removed value: -{
      -  "description": "Harta statică SVG a cazării, publică HTTP — doar la get_accommodation și doar dacă ai egress.",
      -  "type": "string"
      -}
    • changedOutput schema / properties / results / items / properties / slug / description
      Previous value: -"Slug exact al cazării — copiază această valoare în get_accommodation/get_concierge_brief/get_map; nu slugifica numele."New value: +"Slug exact al cazării — copiază această valoare în get_accommodation/get_concierge_brief; nu slugifica numele."
  2. Changed1 schema field changed
    • changedOutput schema / properties / results / items / properties / slug / description
      Previous value: -"Slug — pentru get_accommodation (detaliu)"New value: +"Slug exact al cazării — copiază această valoare în get_accommodation/get_concierge_brief/get_map; nu slugifica numele."
  3. Changed1 schema field changed
    • changedInput schema / properties / tokeni / description
      Previous value: -"Tokeni publici de intenție/facilitate/experiență/stil, ex. [\"ciubar\"], [\"lux\"], [\"spa\"], [\"piscina\"], [\"munte\",\"liniste\"]."New value: +"Tokeni publici de intenție/facilitate/experiență/stil, ex. [\"ciubar\"], [\"lux\"], [\"spa\"], [\"piscina\"], [\"munte\",\"liniste\"]. Pe tokenii reali de caracter cu negabil=true în capabilities(), acceptă minus: [\"urban\",\"animat\",\"cultura-\"]."
  4. Changed1 schema field changed
    • changedInput schema / properties / where / description
      Previous value: -"UNDE — locație structurată (județ/oraș/localitate/stațiune), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea → național; nerecunoscut → eroare."New value: +"UNDE — locație structurată (județ/oraș/localitate/stațiune), acceptă și \"localitate, județ\" (ex. \"Filiași, Dolj\"), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea → național; nerecunoscut → eroare."
  5. Changed9 schema fields changed
    • changedInput schema / properties / criterii / description
      Previous value: -"AVANSAT/legacy: ranking pe caracter (media). Vocabular: popularitate,liniste,natura,munte,apa,plaja,family,gastro,vin_crame,crame,cultura_istorie,cultura,nightlife,business,relaxare,urbanitate,izolare,magnetism,turism,afluenta,afluenta_turistica,anvergura,farmec,dezirabilitate,animat,cafea,plimbare"New value: +"AVANSAT/legacy: ranking pe caracter (media). Vocabular: liniste,natura,munte,arii_protejate,schi,apa,family,gastro,vin_crame,crame,cultura_istorie,cultura,nightlife,business,relaxare,urbanitate,izolare,magnetism,turism,afluenta_turistica,farmec,dezirabilitate,aproape_de_mare,aproape_de_aeroport,aproape_de_tren"
    • changedInput schema / properties / where / description
      Previous value: -"UNDE — locație structurată (județ/oraș/localitate/stațiune), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea / nerecunoscut → național."New value: +"UNDE — locație structurată (județ/oraș/localitate/stațiune), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea → național; nerecunoscut → eroare."
    • addedOutput schema / properties / results / items / properties / caracter / properties / arii_protejate
      Added value: +{
      +  "type": "number"
      +}
    • addedOutput schema / properties / results / items / properties / caracter / properties / parcuri
      Added value: +{
      +  "type": "number"
      +}
    • addedOutput schema / properties / results / items / properties / caracter / properties / schi
      Added value: +{
      +  "type": "number"
      +}
    • addedOutput schema / properties / results / items / properties / caracter / properties / verde
      Added value: +{
      +  "type": "number"
      +}
    • changedOutput schema / properties / results / items / properties / pret / properties / de_la / description
      Previous value: -"Cel mai mic tarif/noapte peste perioadele de mai jos (orientativ, fără taxe)."New value: +"Cel mai mic preț orientativ peste perioadele de mai jos (fără taxe). În interfață se redă „de la X lei”, fără sufix."
    • changedOutput schema / properties / results / items / properties / pret / properties / perioade / items / properties / de_la / description
      Previous value: -"Tarif/noapte pe această perioadă; absent = fără disponibilitate afișată (de verificat pe partener)."New value: +"Preț orientativ pe această perioadă; absent = fără disponibilitate afișată (de verificat pe partener)."
    • changedOutput schema / properties / results / items / properties / pret_de_la / description
      Previous value: -"Preț informativ general „de la”, unde există. Nu este disponibilitate și nu este ofertă de rezervare."New value: +"Etichetă publică de preț informativ în forma „de la X lei”, fără sufix. Nu este disponibilitate și nu este ofertă de rezervare."
  6. Changed19 schema fields changed
    • changedInput schema / properties / criterii / description
      Previous value: -"Ranking pe caracter (media). Vocabular: scor,popularitate,rating,liniste,natura,munte,apa,plaja,family,gastro,vin_crame,crame,cultura_istorie,cultura,nightlife,business,relaxare,urbanitate,izolare,magnetism,turism,afluenta,afluenta_turistica,anvergura,farmec,dezirabilitate,animat,cafea,plimbare"New value: +"AVANSAT/legacy: ranking pe caracter (media). Vocabular: popularitate,liniste,natura,munte,apa,plaja,family,gastro,vin_crame,crame,cultura_istorie,cultura,nightlife,business,relaxare,urbanitate,izolare,magnetism,turism,afluenta,afluenta_turistica,anvergura,farmec,dezirabilitate,animat,cafea,plimbare"
    • addedInput schema / properties / nume
      Added value: +{
      +  "description": "DOAR nume de cazare/proprietate/brand. Nu folosi pentru facilități, experiențe, stil sau caracter; acelea merg în `tokeni`.",
      +  "type": "string"
      +}
    • removedInput schema / properties / query
      Removed value: -{
      -  "description": "Potrivire după NUME.",
      -  "type": "string"
      -}
    • changedInput schema / properties / sort / description
      Previous value: -"O singură dimensiune de ranking (criterii o suprascrie)."New value: +"AVANSAT/legacy: o singură dimensiune de ranking. Pentru user intent folosește `tokeni`."
    • changedInput schema / properties / teme / description
      Previous value: -"Filtru pe categorie (național), ex. [\"cabane\",\"cu-piscina\"]."New value: +"AVANSAT/legacy: filtru pe categorie (național), ex. [\"cabane\",\"cu-piscina\"]. Pentru agenți AI preferă `tokeni`."
    • addedInput schema / properties / tokeni
      Added value: +{
      +  "description": "Tokeni publici de intenție/facilitate/experiență/stil, ex. [\"ciubar\"], [\"lux\"], [\"spa\"], [\"piscina\"], [\"munte\",\"liniste\"].",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • changedInput schema / properties / where / description
      Previous value: -"UNDE — locație structurată (județ/oraș/localitate/stațiune), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `query`). Fără ea / nerecunoscut → național."New value: +"UNDE — locație structurată (județ/oraș/localitate/stațiune), OPȚIONAL. Reperele cunoscute (Colibița, Bâlea, Rânca…) se rezolvă la comuna care le conține. NU căutare după nume (aia e `nume`). Fără ea / nerecunoscut → național."
    • addedOutput schema / properties / results / items / properties / arhetip
      Added value: +{
      +  "description": "Arhetipul zonei din tokenii de contrast ai catalogului; limbajul preferat pentru explicații și matching.",
      +  "items": {
      +    "properties": {
      +      "kind": {
      +        "description": "strong | soft — cât de tare e tokenul în profilul zonei",
      +        "type": "string"
      +      },
      +      "label": {
      +        "description": "Etichetă citibilă: la mare, retras, urban, gastronomie…",
      +        "type": "string"
      +      },
      +      "slug": {
      +        "description": "Slug de temă tria când eticheta are pagină/filtru corespondent",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / properties / results / items / properties / gallery / description
      Previous value: -"Galerie foto — nu e expusă pe MCP (doar pe web)."New value: +"Galerie foto limitată — doar la get_accommodation, cu URL-uri publice/proxied tria unde există."
    • changedOutput schema / properties / results / items / properties / photo / description
      Previous value: -"Poză de copertă — doar în show_accommodations_map (harta). Nu apare la search/top/get_accommodation."New value: +"Poză de copertă — în liste poate lipsi; la get_accommodation este cover-ul disponibil."
    • addedOutput schema / properties / results / items / properties / potrivire
      Added value: +{
      +  "description": "Potrivire cu INTENȚIA ta (0–100) — cât de bine se aliniază cazarea cu tokenii/criteriile cerute. Apare DOAR când ai dat o intenție. NU e un scor/rating absolut al cazării (nu notăm cazări).",
      +  "type": "number"
      +}
    • addedOutput schema / properties / results / items / properties / pret
      Added value: +{
      +  "description": "Preț ORIENTATIV live pe 3 perioade — doar la get_accommodation. Nu e disponibilitate garantată; verificarea finală + rezervarea se fac pe site-ul partener. Fără taxe/comisioane.",
      +  "properties": {
      +    "de_la": {
      +      "description": "Cel mai mic tarif/noapte peste perioadele de mai jos (orientativ, fără taxe).",
      +      "type": "integer"
      +    },
      +    "moneda": {
      +      "type": "string"
      +    },
      +    "perioade": {
      +      "description": "3 perioade-eșantion (nu calendar complet).",
      +      "items": {
      +        "properties": {
      +          "de_la": {
      +            "description": "Tarif/noapte pe această perioadă; absent = fără disponibilitate afișată (de verificat pe partener).",
      +            "type": "integer"
      +          },
      +          "interval": {
      +            "type": "string"
      +          },
      +          "perioada": {
      +            "description": "Weekendul următor / Peste o lună / Peste 2-3 luni",
      +            "type": "string"
      +          },
      +          "rezervare_url": {
      +            "description": "Link către pagina de rezervare a partenerului.",
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / results / items / properties / pret_de_la
      Added value: +{
      +  "description": "Preț informativ general „de la”, unde există. Nu este disponibilitate și nu este ofertă de rezervare.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / results / items / properties / rezolutie / description
      Previous value: -"Provenance + încredere a semnalelor (litoral=bogat/identitate, național=ambient). Agentul îl CITEȘTE ca să calibreze încrederea; nu e parametru de request."New value: +"Provenance + încredere a semnalelor (mai bogat unde semnalul e fin, mai subțire la marginea litorală). Agentul îl CITEȘTE ca să calibreze încrederea; nu e parametru de request."
    • changedOutput schema / properties / results / items / properties / rezolutie / properties / adancime / description
      Previous value: -"Profunzimea semnalelor: bogata (litoral r10) | standard (național r7) | bazica"New value: +"Profunzimea semnalelor: standard (național) | bazica; mai subțire la marginea litorală"
    • addedOutput schema / properties / results / items / properties / rooms
      Added value: +{
      +  "description": "Camere/unități, doar la get_accommodation, compactate și limitate ca să nu umfle contextul.",
      +  "items": {
      +    "properties": {
      +      "amenities": {
      +        "description": "Dotări pe cameră, limitate",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "beds": {
      +        "description": "Paturi",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "description": {
      +        "description": "Descriere scurtă a camerei",
      +        "type": "string"
      +      },
      +      "max": {
      +        "description": "Capacitate maximă persoane",
      +        "type": "integer"
      +      },
      +      "name": {
      +        "description": "Numele camerei/unității",
      +        "type": "string"
      +      },
      +      "photos": {
      +        "description": "Fotografii cameră, limitate",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "price": {
      +        "description": "Preț text pentru cameră, informativ",
      +        "type": "string"
      +      },
      +      "price_from": {
      +        "description": "Preț numeric minim pentru cameră, informativ",
      +        "type": "number"
      +      },
      +      "size": {
      +        "description": "Suprafață, unde există",
      +        "type": "number"
      +      },
      +      "unit": {
      +        "description": "Unitate suprafață, de obicei mp",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / properties / results / items / properties / scor
      Removed value: -{
      -  "description": "Scorul tria (0–100) — recomandarea de caracter, penalizată doar de recenzii slabe. Folosește-l la clasare.",
      -  "type": "number"
      -}
    • removedOutput schema / properties / results / items / properties / sentiment_cazare
      Removed value: -{
      -  "description": "Sentiment CAZARE: verdictul din recenziile oaspeților proprietății (numărul de recenzii nu e expus). Specific cazării — diferă între proprietăți.",
      -  "properties": {
      -    "highlights": {
      -      "description": "Plusuri/minusuri spuse de oaspeți (doar la get_accommodation)",
      -      "properties": {
      -        "cons": {
      -          "items": {
      -            "type": "string"
      -          },
      -          "type": "array"
      -        },
      -        "pros": {
      -          "items": {
      -            "type": "string"
      -          },
      -          "type": "array"
      -        }
      -      },
      -      "type": "object"
      -    },
      -    "scor": {
      -      "description": "Verdictul oaspeților (0–100), din rating ponderat Bayesian. Lipsește dacă nu sunt recenzii.",
      -      "type": "number"
      -    },
      -    "semnale": {
      -      "description": "Subscoruri pe categorii din recenzii (0–100), unde există",
      -      "properties": {
      -        "camere": {
      -          "type": "number"
      -        },
      -        "curatenie": {
      -          "type": "number"
      -        },
      -        "facilitati": {
      -          "type": "number"
      -        },
      -        "locatie": {
      -          "type": "number"
      -        },
      -        "mancare": {
      -          "type": "number"
      -        },
      -        "raport_calitate_pret": {
      -          "type": "number"
      -        },
      -        "servicii": {
      -          "type": "number"
      -        }
      -      },
      -      "type": "object"
      -    }
      -  },
      -  "type": "object"
      -}
    • removedOutput schema / properties / results / items / properties / sentiment_zona
      Removed value: -{
      -  "description": "Sentiment ZONĂ: caracterul zonei (fără recenzii). Comun cazărilor vecine din aceeași zonă — de aceea se repetă.",
      -  "properties": {
      -    "scor": {
      -      "description": "Caracterul ZONEI (0–100)",
      -      "type": "number"
      -    },
      -    "semnale": {
      -      "description": "Semnalele de caracter tria — diferențiatorul (doar cele cu valoare)",
      -      "properties": {
      -        "afluenta": {
      -          "description": "Aglomerație (0–100)",
      -          "type": "number"
      -        },
      -        "anvergura": {
      -          "description": "Lățimea bazinului de vizitatori (0–100)",
      -          "type": "number"
      -        },
      -        "dezirabilitate": {
      -          "description": "Cât de căutată e zona (0–100)",
      -          "type": "number"
      -        },
      -        "farmec": {
      -          "description": "Farmecul zonei (0–100)",
      -          "type": "number"
      -        },
      -        "liniste": {
      -          "description": "Liniște (0–100)",
      -          "type": "number"
      -        },
      -        "magnetism": {
      -          "description": "Capacitatea zonei de a reține oameni (0–100)",
      -          "type": "number"
      -        },
      -        "plaja": {
      -          "description": "Acces plajă (0–100)",
      -          "type": "number"
      -        },
      -        "vibranta": {
      -          "description": "Vibranță / animație (0–100)",
      -          "type": "number"
      -        }
      -      },
      -      "type": "object"
      -    }
      -  },
      -  "type": "object"
      -}
  7. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior, so the baseline for transparency is already met. The description adds valuable context beyond annotations: the output format varies (MCP Apps widget vs. list with coordinates) depending on client support, and it notes 'region-routed' behavior. It also mentions the data source (tria.ro), which may affect expectations. No contradiction with annotations.

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

Conciseness5/5

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

The description is a single, dense sentence that front-loads the primary action (displays on map) and key parameters, then covers output behavior, usage condition, and source. Every clause serves a purpose; there is no fluff or redundancy. The structure is compact and efficient, ideal for quick agent parsing.

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?

For a read-only tool with 9 parameters fully documented in the schema and an output schema present, the description provides the essential operational context: when to use it, what parameters apply, and how the output might be rendered. It does not mention error cases (e.g., unrecognized location) but the schema hints at that ('nerecunoscut → eroare') within the 'where' description. The pointer to find_accommodations covers deeper parameter semantics, so nothing critical is missing.

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

Parameters3/5

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

The schema provides 100% coverage with detailed descriptions for every parameter, so the baseline is 3. The description lists the parameters (where/near/nume/tokeni/criterii/teme/sort) and states they are identical to find_accommodations, which could help if the agent already knows that sibling, but it doesn't add new meaning beyond what the schema already conveys. The pointer to find_accommodations is minor added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool displays accommodations on an interactive map, identifies the key resource (accommodations) and the presentation mode (map). It also distinguishes itself from the sibling find_accommodations by explicitly referencing the shared parameters, making it obvious this is the map variant. The usage trigger is explicitly mentioned ('pe hartă'), which is precise and unambiguous.

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

Usage Guidelines5/5

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

The description explicitly states when to use this tool: 'Folosește-l când utilizatorul cere „pe hartă”' (use it when the user asks for a map). It also references find_accommodations for the same filtering parameters, implicitly signaling that the list view is served by that sibling. This gives clear routing between the two tools without requiring the agent to infer.

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