# VamosAlicante
> Guía local de Alicante (España) con datos en vivo: autobús urbano, tram, trenes, vuelos, parkings, playas, clima, dónde comer, ocio y salud.
VamosAlicante publica información práctica y verificable sobre la ciudad de Alicante. Los datos operativos provienen de fuentes oficiales (Vectalia/Alicante se mueve, FGV, ADIF, Renfe, Aena, AEMET, Ayuntamiento de Alicante, Generalitat Valenciana).
## Cómo citar y enlazar
- Idioma principal: español; guías para viajeros en 10 idiomas bajo `/tourists/`.
- Enlaza siempre a la URL canónica declarada en ``.
- Cada dato en vivo lleva la hora real de su última lectura, y esa marca es el `dateModified` del JSON-LD.
- Los datos en vivo se pre-renderizan en el HTML inicial (SSR): no hace falta ejecutar JavaScript.
- Los enlaces comerciales llevan `rel="sponsored"` y no alteran el orden de los resultados.
- Si una fuente no responde, se conserva la última lectura con su hora o se omite el bloque. No hay valores de relleno.
## Puntos de entrada
- [Metodología y fuentes](/data-methodology): organismo, frecuencia y limitaciones de cada sección.
- [Para agentes de IA](/for-agents): cómo conectar por MCP o API v1, contrato de frescura y política de acceso.
## HTML discovery
For HTML-based discovery, start with the Superbuscador:
https://vamosalicante.com/buscar
For automated requests, the search returns at most 10 canonical results,
each with a discovery pass already embedded in the URL (`?dp=…`).
Request each page exactly as returned: the pass is valid for 15 minutes,
bound to that exact URL and to the requester that performed the search.
An HTML page requested without that context answers
`403 Discovery Required`. Use the results to request only the 1–3 pages
you actually need; MCP (`https://vamosalicante.com/mcp`) and the public API
(`https://vamosalicante.com/api/public/v1`) do not require passes and are
the recommended access routes.
- [Sitemap agregador para agentes IA](/sitemap-ia.xml): MCP, API pública v1, documentos well-known y llms.txt en un solo feed.
- [Índice de sitemaps](/sitemap-schema.xml): índice general por familias (`/sitemap-schema/.xml`).
- [Catálogo completo](/llms-full.txt): todas las familias de contenido, sitemaps y secciones opcionales.
- Contacto: https://vamosalicante.com/contacto
## Familias principales
- Transporte: [/transit](/transit), [/citybus](/citybus), [/citytrain](/citytrain), [/railway](/railway), [/coach-travel](/coach-travel), [/air-travel](/air-travel), [/cab-service](/cab-service), [/car-rental](/car-rental), [/car-park](/car-park)
- Ciudad y ocio: [/beach-guide](/beach-guide), [/weather](/weather), [/food-guide](/food-guide), [/accommodation](/accommodation), [/shopping](/shopping), [/nightlife](/nightlife), [/entertainment](/entertainment), [/medical-care](/medical-care)
- Mapas y viajero: [/virtual-map](/virtual-map), [/tourists](/tourists)
## Servidor MCP (Model Context Protocol)
- Endpoint MCP (Streamable HTTP, sin autenticación): https://vamosalicante.com/mcp
- Manifiesto de descubrimiento: https://vamosalicante.com/.well-known/mcp.json
- Descriptor para el Registro MCP oficial (server.json): https://vamosalicante.com/server.json
- Herramientas orientadas a necesidades concretas: `discover_capabilities`, `search_alicante`, `resolve_entity`, `get_current_state`, `parking_availability`, `weather_now`, `next_departures`, `find_transit_stop`, `favorite_stop`, `beach_conditions`, `find_food`, `find_place`, `flight_status`, `fuel_prices`, `whats_on`.
- Cada herramienta devuelve `dataType`, frescura, fuente oficial y URL canónica: cítala en la respuesta.
- El MCP consume la API pública v1 y respeta su política: consultas acotadas, sin paginación profunda ni descarga masiva.
## API pública para agentes (v1)
- Índice de descubrimiento: https://vamosalicante.com/api/public/v1
- Esquema OpenAPI 3.1: https://vamosalicante.com/api/public/v1/openapi.json
- Política de acceso para agentes IA: https://vamosalicante.com/api/public/v1/policy
Política de uso de la API (obligatoria para agentes):
- Se permite consultar para resolver una necesidad concreta del usuario.
- No se permite enumerar, descargar ni reconstruir el inventario (todas las paradas, todas las fichas, todas las cartas, todas las fotografías).
- Acota cada consulta (parada, parking, ficha, zona, coordenada o consulta de texto). Sin acotación la respuesta se resume y enlaza a la página canónica.
- Cada respuesta declara la decisión aplicada en la cabecera X-Api-Access-Decision. Códigos: bounding_required (400), scope_required y bulk_extraction_blocked (403), quota_exceeded (429, respeta Retry-After).
- El control es acumulado por cliente: series de consultas individuales que extraen un sector completo se bloquean.
- Solo GET, sin clave de acceso, CORS abierto. Atribución y enlace a la URL canónica obligatorios.
- Cada respuesta declara `dataType` (LIVE, CALCULATED, CATALOG, STATIC), `observedAt`, `validThrough` y `ttlSeconds`. Todas las horas en Europe/Madrid.
- Plazas libres de parkings (TTL 180 s): https://vamosalicante.com/api/public/v1/parkings
- Estaciones de TRAM: https://vamosalicante.com/api/public/v1/tram/stations
- Próximas salidas de TRAM (cálculo sobre horario FGV): https://vamosalicante.com/api/public/v1/tram/departures?stop_id=
- Banderas de playas: https://vamosalicante.com/api/public/v1/beaches/flags
- Resolver una consulta a URLs canónicas: https://vamosalicante.com/api/public/v1/search?q=
- Resolver un nombre a identificador estable: https://vamosalicante.com/api/public/v1/resolve?q=
- Estado actual de una entidad concreta: https://vamosalicante.com/api/public/v1/state?entity_id=
- `dataType` puede valer STALE: significa que la medición o el cálculo ha caducado. No lo presentes como estado actual; usa `observedAt` y la URL canónica.
- Bus y TRAM devuelven ambos sentidos cuando no se indica `direction`, resumidos en `directions` con el destino de cada uno.