Punto de entrada para clientes de IA
Si tu cliente no ejecuta JavaScript, empieza por llms.txt o por esta misma guía en markdown. Si sí soporta herramientas, prefiere API o MCP antes que inferir desde texto libre. También funciona como developer docs visibles del sitio.
Ruta recomendada
Cómo recorrer la superficie sin perder tiempo
- 1. Arranque corto: abre
/agenteso/llms.txt. - 2. Si entiendes HTTP: usa
/api/v1/statusy luego proyectos, propiedades o cotización. - 3. Si soportas MCP: entra por
/mcp. ElGETexplica la superficie y el transporte real usaPOST. - 4. Si solo lees archivos: usa markdown por ruta y snapshots
JSON/CSV. - 5. Escalación humana: si necesitas validar estado documental o comercial, sube a
/contacto.
Ejemplos rápidos
curlTres requests suficientes para descubrir capacidades, leer inventario y calcular una cotización básica.
curl https://www.terravivet.com/api/v1/statuscurl 'https://www.terravivet.com/api/v1/properties?project=montesito&availableOnly=true&limit=5'curl -X POST https://www.terravivet.com/api/v1/quote/from-property \
-H 'content-type: application/json' \
-d '{"propertyId":"montesito:mz-a-lote-1","purchaseType":"Financiado"}'Empieza aquí
Empieza aquí
Puertas de entrada pensadas para clientes limitados, evaluaciones manuales y lectores que prefieren texto corto antes que una API.
API y herramientas
API y herramientas
Capas estructuradas para clientes que pueden leer especificaciones, server cards, skills y documentación breve.
Documentación breve de endpoints y ejemplos curl.
Especificación OpenAPI consumible por herramientas.
Catálogo RFC 9727 para descubrir API y MCP.
Documentación del MCP remoto con tools para proyectos, propiedades y cotización.
Server card del MCP remoto con transporte y tools.
Índice de skills públicas del sitio.
Markdown y datos
Markdown y datos
Fallbacks reproducibles para clientes sin JS, crawlers limitados o procesos batch que solo consumen archivos.
Resumen markdown del mapa y cómo traducirlo a API/MCP.
Lógica reproducible del cotizador, con fórmulas y ejemplos.
Inventario estructurado por proyecto y totales públicos.
Inventario estructurado por propiedad para filtrado y análisis.
Snapshot tabular del inventario actual.
Superficies
Superficies HTTP exactas
Métodos exactos para clientes que necesitan rutas canónicas, media types claros y cero ambigüedad antes de invocar.
Salud del servicio, capacidades y totales públicos.
Portafolio público resumido por proyecto.
Inventario filtrable por proyecto, estado, tipo y texto libre.
Cotización manual o por propiedad usando POST JSON.
Cotización rápida a partir de un canonicalId.
Cotización
Cotización rápida para clientes web
Si quieres cotizar sin recorrer toda la UI, usa primero /api/v1/quote/from-property con propertyId. Si solo tienes texto libre, replica estas reglas y valida luego con API o MCP.
Input
Entradas clave
- POST /api/v1/quote/from-property requiere propertyId y acepta purchaseType.
- POST /api/v1/quote/calculate requiere purchaseType y además propertyId, o project + propertyLabel + propertyType + price.
- El plazo máximo visible actual es 60 meses.
- Compra de contado devuelve termMonths = 1; compra financiada devuelve cronograma completo.
Rates
Tasas anuales por defecto
16.77%para Montesito, Torres Zermatt24.89%para Santa Bárbara, Valle del Toachi
Formula
Fórmulas visibles en la web
discountAmount = price * (discountRate / 100)— Descuento aplicado sobre el precio publicado.netAmount = max(0, price - discountAmount)— Valor neto tras descuento, nunca menor que cero.financedAmount = max(0, netAmount - entryAmount)— Monto financiado luego de restar la entrada.fixedInstallment = financedAmount * ((monthlyRate * growthFactor) / (growthFactor - 1))— Cuota fija con sistema francés cuando annualRate > 0; si no, reparto lineal.interestAmount = remainingBalance * (annualRate / 100 / 360) * periodDays— La primera cuota usa interés proporcional con base de 360 días.interestAmount = remainingBalance * (annualRate / 100 / 12)— Las siguientes cuotas calculan interés mensual sobre el saldo.
monthlyRate = annualRate / 100 / 12
growthFactor = (1 + monthlyRate) ^ termMonths
fixedInstallment = financedAmount * ((monthlyRate * growthFactor) / (growthFactor - 1))Payloads
Payloads para copiar y pegar
Esto ayuda a clientes que sí leen HTML pero fallan al abrir/cotizador.md o /docs/api.md.
{"propertyId":"montesito:mz-a-lote-1","purchaseType":"Financiado"}{"project":"Montesito","propertyLabel":"Mz A Lote 1","propertyType":"Lote","price":12990,"purchaseType":"Financiado","entryAmount":3897,"annualRate":16.77,"termMonths":36}Referencias rápidas: /cotizador.md, /docs/api.md, /docs/mcp.md.
MCP
Tools MCP remotas
Estas tools viven en /mcp y también se describen en la server card pública.
Tools
Set MCP disponible
list_projectsget_projectlist_propertiesget_propertycalculate_quoteWebMCP
Tools WebMCP observables por página
Si el navegador expone navigator.modelContext, la implementación actual puede registrar estas cuatro tools públicas en /, /mapa y /cotizador.
Page tools
Home
/tv_list_propertiestv_get_propertytv_calculate_quotetv_open_quotePage tools
Mapa
/mapatv_list_propertiestv_get_propertytv_calculate_quotetv_open_quotePage tools
Cotizador
/cotizadortv_list_propertiestv_get_propertytv_calculate_quotetv_open_quoteSi el host no soporta WebMCP, usa MCP remoto o la API pública. Total actual de tools WebMCP: 4.
Flujo
Flujo MCP mínimo
Tras GET /mcp, un cliente limitado puede avanzar con este orden sin depender de documentación externa.
Flow
Secuencia mínima
- 1.
initializepara fijar versión de protocolo y capacidades del cliente. - 2.
tools/listpara leer nombres, descripciones e input schemas. - 3.
tools/callconlist_projects,list_properties,get_propertyocalculate_quote.
Ejemplos JSON-RPC
Ejemplos MCP rápidos
POST /mcp
Accept: application/json, text/event-stream
Content-Type: application/json
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"example-client","version":"1.0.0"}}}POST /mcp
Accept: application/json, text/event-stream
Content-Type: application/json
{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}POST /mcp
Accept: application/json, text/event-stream
Content-Type: application/json
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"calculate_quote","arguments":{"propertyId":"montesito:mz-a-lote-1","purchaseType":"Financiado"}}}Cobertura markdown
Proyectos en markdown
Resúmenes curados por proyecto para clientes que no pueden recorrer bien la UI.
Cierre
Orden recomendado para un agente
- 1. Abrir /agentes.md o /llms.txt.
- 2. Si soporta HTTP estructurado, usar /api/v1/status y luego proyectos, propiedades o cotización.
- 3. Si soporta MCP remoto, usar /docs/mcp.md y la server card.
- 4. Si solo lee páginas, usar markdown por proyecto, /cotizador.md y los snapshots JSON/CSV.
