3 tools registered. Strongest in usefulness, weakest in human experience.
No agent run recorded yet.
// Use the canonical entry point - navigator.modelContext is deprecated.
document.modelContext.provideContext({ tools: [/* ... */] });search_villas: declares no required list, so an agent cannot tell which parameters are mandatory{
name: "search_villas",
inputSchema: {
type: "object",
properties: {
query: { type: "string", description: "What to search for" }
},
required: ["query"]
}
}search_villas, get_villa_details, check_villa_availability{
name: "search_villas",
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true }
}search_villas, get_villa_details, check_villa_availability<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_villas" tooldescription="...">
<!-- the same action, as UI -->
</form>{
"name": "search_villas",
"description": "Busca villas de alquiler vacacional de Abahana Villas en la Costa Blanca (Calpe, Moraira, Jávea, Altea, Benissa). Devuelve un resumen de cada villa con su external reference code, capacidad y, si se indican fechas, el precio para esas fechas.",
"inputSchema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "Destino: Calpe, Moraira, Javea, Altea o Benissa"
},
"checkIn": {
"type": "string",
"description": "Fecha de entrada en formato YYYY-MM-DD"
},
"checkOut": {
"type": "string",
"description": "Fecha de salida en formato YYYY-MM-DD"
},
"minDays": {
"type": "number",
"description": "Estancia mínima en noches"
},
"adults": {
"type": "number",
"description": "Número de adultos"
},
"children": {
"type": "number",
"description": "Número de niños"
},
"pets": {
"type": "number",
"description": "Mascotas: 0 o 1"
},
"descriptors": {
"type": "string",
"description": "Filtros adicionales (piscina, vistas al mar, etc.)"
},
"page": {
"type": "number",
"description": "Página, empezando en 1"
},
"pageSize": {
"type": "number",
"minimum": 1,
"maximum": 20,
"description": "Resultados por página (entre 1 y 20)"
}
}
},
"annotations": {}
}// Use the canonical entry point - navigator.modelContext is deprecated.
document.modelContext.provideContext({ tools: [/* ... */] });search_villas: declares no required list, so an agent cannot tell which parameters are mandatory{
name: "search_villas",
inputSchema: {
type: "object",
properties: {
query: { type: "string", description: "What to search for" }
},
required: ["query"]
}
}search_villas, get_villa_details, check_villa_availability{
name: "search_villas",
annotations: { readOnlyHint: true, destructiveHint: false, idempotentHint: true }
}duplicate tool name registered: search_villastry {
document.modelContext.provideContext({ tools: [/* ... */] });
} catch (err) {
console.error("WebMCP registration failed", err);
}document.modelContext.dispatchEvent(new Event("toolchange"));search_villas, get_villa_details, check_villa_availability<!-- Give the tool a visible counterpart: a declarative form is one the person can see and use too. -->
<form toolname="search_villas" tooldescription="...">
<!-- the same action, as UI -->
</form>