---
title: Para agentes Terra Vivet
url: https://www.terravivet.com/agentes
language: es
---

# Para agentes Terra Vivet

> Punto de entrada público para clientes de IA con navegación limitada. Si el cliente soporta API o MCP, use esas superficies antes de inferir desde HTML o texto libre.

## Empieza aquí

- [Guía markdown](https://www.terravivet.com/agentes.md): versión legible por agentes de esta misma página.
- [llms.txt](https://www.terravivet.com/llms.txt): índice curado de recursos importantes.
- [Sitio principal](https://www.terravivet.com/): home humana del sitio.
- [Developer docs visibles](https://www.terravivet.com/agentes): página HTML para clientes que descubren mejor documentación en la web.

## API y herramientas

- [API pública](https://www.terravivet.com/docs/api.md): endpoints y ejemplos.
- [OpenAPI](https://www.terravivet.com/openapi.json): especificación consumible por herramientas.
- [API catalog](https://www.terravivet.com/.well-known/api-catalog): descubrimiento RFC 9727.
- [MCP remoto](https://www.terravivet.com/docs/mcp.md): tools para proyectos, propiedades y cotización.
- [Landing MCP por GET](https://www.terravivet.com/mcp): resumen corto para clientes limitados.
- [MCP server card](https://www.terravivet.com/.well-known/mcp/server-card.json): transporte y tools del MCP.
- [Skills index](https://www.terravivet.com/.well-known/agent-skills/index.json): skills públicas del sitio.

## Markdown y datos

- [Mapa markdown](https://www.terravivet.com/mapa.md): resumen de mapa y filtros equivalentes.
- [Cotizador markdown](https://www.terravivet.com/cotizador.md): fórmulas y ejemplos exactos.
- [Proyectos markdown](https://www.terravivet.com/proyectos.md): resumen del portafolio.
- [Projects JSON](https://www.terravivet.com/data/projects.json): estructura por proyecto.
- [Properties JSON](https://www.terravivet.com/data/properties.json): inventario estructurado por propiedad.
- [Properties CSV](https://www.terravivet.com/data/properties.csv): snapshot tabular del inventario.

## Totales públicos actuales

- Proyectos: 4
- Propiedades: 277
- Disponibles: 145
- Reservadas: 43
- Vendidas: 89

## Proyectos en markdown

- [Montesito](https://www.terravivet.com/proyectos/montesito.md): 137 disponibles, $4.990 - $19.618
- [Santa Bárbara](https://www.terravivet.com/proyectos/santa-barbara.md): 6 disponibles, $16.990 - $25.990
- [Valle del Toachi](https://www.terravivet.com/proyectos/valle-del-toachi.md): 2 disponibles, $24.990 - $26.990
- [Torres Zermatt](https://www.terravivet.com/proyectos/torres-zermatt.md): 0 disponibles, $30.699 - $83.485

## Superficies HTTP exactas

- `GET https://www.terravivet.com/api/v1/status`
- `GET https://www.terravivet.com/api/v1/projects`
- `GET https://www.terravivet.com/api/v1/properties?project=montesito&availableOnly=true&limit=5`
- `POST https://www.terravivet.com/api/v1/quote/calculate`
- `POST https://www.terravivet.com/api/v1/quote/from-property`

## Cotización rápida para clientes limitados

### Variables visibles

- Inputs principales: `price`, `discountRate`, `entryAmount`, `annualRate`, `termMonths`, `purchaseType`
- Endpoint recomendado para propiedad real: `https://www.terravivet.com/api/v1/quote/from-property`
- Endpoint recomendado para cálculo manual: `https://www.terravivet.com/api/v1/quote/calculate`

### Fórmulas base

1. **Descuento:** `discountAmount = price * (discountRate / 100)` — Descuento aplicado sobre el precio publicado.
2. **Valor neto:** `netAmount = max(0, price - discountAmount)` — Valor neto tras descuento, nunca menor que cero.
3. **Monto financiado:** `financedAmount = max(0, netAmount - entryAmount)` — Monto financiado luego de restar la entrada.
4. **Cuota fija:** `fixedInstallment = financedAmount * ((monthlyRate * growthFactor) / (growthFactor - 1))` — Cuota fija con sistema francés cuando annualRate > 0; si no, reparto lineal.
5. **Primera cuota:** `interestAmount = remainingBalance * (annualRate / 100 / 360) * periodDays` — La primera cuota usa interés proporcional con base de 360 días.
6. **Cuotas siguientes:** `interestAmount = remainingBalance * (annualRate / 100 / 12)` — Las siguientes cuotas calculan interés mensual sobre el saldo.

### Sistema francés

```text
monthlyRate = annualRate / 100 / 12
growthFactor = (1 + monthlyRate) ^ termMonths
fixedInstallment = financedAmount * ((monthlyRate * growthFactor) / (growthFactor - 1))
```

### Reglas visibles

- 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.

### Tasas anuales por defecto

- Montesito, Torres Zermatt: `16.77%` anual por defecto
- Santa Bárbara, Valle del Toachi: `24.89%` anual por defecto

### Payloads de ejemplo

```json
{"propertyId":"montesito:mz-a-lote-1","purchaseType":"Financiado"}
```

```json
{"project":"Montesito","propertyLabel":"Mz A Lote 1","propertyType":"Lote","price":12990,"purchaseType":"Financiado","entryAmount":3897,"annualRate":16.77,"termMonths":36}
```

## Tools MCP

- `list_projects`
- `get_project`
- `list_properties`
- `get_property`
- `calculate_quote`

## Tools WebMCP

- En la implementación actual, `/`, `/mapa` y `/cotizador` pueden registrar estas cuatro tools:
- `tv_list_properties`
- `tv_get_property`
- `tv_calculate_quote`
- `tv_open_quote`

## Flujo MCP mínimo

1. `GET https://www.terravivet.com/mcp` para descubrir la landing técnica.
2. `POST https://www.terravivet.com/mcp` con `initialize`.
3. `POST https://www.terravivet.com/mcp` con `tools/list`.
4. `POST https://www.terravivet.com/mcp` con `tools/call`.

```http
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"}}}
```

```http
POST /mcp
Accept: application/json, text/event-stream
Content-Type: application/json

{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}
```

```http
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"}}}
```

## Ejemplos rápidos

```bash
curl https://www.terravivet.com/api/v1/status
curl '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"}'
```

## Orden recomendado

1. Abrir `https://www.terravivet.com/agentes.md` o `https://www.terravivet.com/llms.txt`.
2. Si el host soporta HTTP estructurado, usar `https://www.terravivet.com/api/v1/status` y luego proyectos, propiedades o cotización.
3. Si el host soporta MCP remoto, usar `https://www.terravivet.com/mcp`.
4. Si el host solo puede leer archivos, usar markdown + JSON/CSV.
5. Para confirmación humana, escalar a `https://www.terravivet.com/contacto`.
