Consultar llegadas de buses de A Coruna en formato solo datos con llamadas HTTP/HTTPS directas al API de iTranvias (sin MCP ni HTML). Esta skill no es la opcion por defecto para preguntas generales de bus en A Coruna: para eso va `coruna-bus-query`. Usar esta skill cuando el usuario pida (1) llegadas de una parada, (2) llegada de un bus concreto en una parada concreta, (3) proximas llegadas de una linea en una parada, o (4) esta skill de forma explicita.
Resolver consultas de buses llamando directamente al API remoto y parseando JSON.
No usar tools MCP para esta skill.
Reservar esta skill para consultas estrechas de llegadas por parada o para peticiones explicitas; el caso general por defecto en A Coruna pertenece a coruna-bus-query.
Si el entorno de Claude usa restricciones de salida, autorizar estos dominios antes de consultar:
https://itranvias.comhttp://itranvias.com (fallback)Si no estan autorizados, la consulta puede fallar con 403 o como falso "problema de conectividad".
https://itranvias.com/queryitr_v3.php?dato=20160101T000000_gl_0_20160101T000000&func=7https://itranvias.com/queryitr_v3.php?func=0&dato={stop_id}En operacion normal:
func=0 para consultas.assets/coruna_catalog.json.mo o idP: para esta skill son invalidos.Si la API responde texto errorS, normalmente significa URL o parametros incorrectos (por ejemplo mo=2&idP=42).
El catalogo local guarda por linea:
commercial_name (ej. 3, 3A).directions y flags has_ida / has_vuelta.route_variants con detalle por recorrido y sentido inferido.scripts/query_arrivals.py
scripts/refresh_catalog.py
func=7.assets/coruna_catalog.json.--stop-id.uv run python scripts/query_arrivals.py ....queryService.php, mo, idP, etc.).stop_id o line_id o refrescar catalogo.queryitr_v3.php?func=0&dato={stop_id}.--request-profile browser --retry-403 6 si el primer intento devuelve api_error.curl directo salvo depuracion explicita solicitada por el usuario.uv run python scripts/query_arrivals.py --stop-id 42 --pretty
uv run python scripts/query_arrivals.py --stop-id 42 --bus-id 3519 --pretty
uv run python scripts/query_arrivals.py --stop-id 42 --line-id 3 --pretty
uv run python scripts/refresh_catalog.py --pretty
uv run python scripts/query_arrivals.py --stop-id 42 --request-profile browser --retry-403 4 --pretty
El script ya prueba auto por defecto (cabeceras normal + navegador y fallback https/http), pero este comando fuerza el perfil mas compatible.
uv run python scripts/query_arrivals.py --stop-id 42 --request-profile browser --retry-403 6 --pretty
En algunos entornos cloud, iTranvias puede bloquear por IP (403) aunque la parada exista.
El cliente ahora hace backoff y fallback con curl para mejorar compatibilidad, pero si el proveedor bloquea la IP de salida no hay solucion 100% desde codigo.
ok: false con message.func=7 durante consultas normales.