Brainy Prices — UAE Cost of Living

Costos de EAU respaldados por fuentes: comestibles, escuelas, vivienda, transporte, servicios públicos, telecomunicaciones y reubicación. Solo lectura; cada respuesta incluye su fuente y fecha.

Servidor MCP alojado

npx add-mcp 'https://prices.brainy.ae/mcp/v2'

Se instala en Claude Code, Codex, Cursor y más

Documentación

API REST v2

URL base: https://prices.brainy.ae/api/v2. Comience con los metadatos del servicio y la descripción OpenAPI 3.1. El esquema JSON documenta cada ruta, entrada, respuesta y condición de fuente. CORS está habilitado.

Rutas bajo /api/v2Alcance
GET /grocery/products?q=… GET /grocery/products/{product_id} GET /grocery/products/{product_id}/offers GET /grocery/stores GET /grocery/stores/{store_id} POST /grocery/comparisonsCatálogo de comestibles admitido, precios por paquete y unidad, ofertas exactas/equivalente, reglas de entrega de tiendas y una lista suministrada de hasta 40 artículos (120 caracteres cada uno). La entrega, disponibilidad y totales finales de pago pueden ser desconocidos; una canasta parcial es explícita.
GET /grocery/official-prices GET /grocery/shopper-reportsPrecios de referencia separados del Ministerio de Economía y Turismo (MOET) y observaciones moderadas de compradores públicos. Ninguno es una oferta de pago actual. Seleccione un producto, categoría, cadena o consulta documentada para precios de referencia; un producto o tienda para informes.
GET /schools GET /schools/{school_id} GET /schools/{school_id}/uniform-itemsMatrícula histórica de KHDA con etiquetas originales de Año/Grado, distancias aproximadas en línea recta e información de autobús de fuente separada. Busque con q, area, curriculum, grade, max_annual_fee_aed, rating o near; radius_km requiere near. Los artículos de uniforme están en pausa.
GET /housing/zones?q=… GET /housing/zones/{zone_id} GET /housing/rents GET /housing/salesDescubrimiento de zonas DLD y medianas registradas de alquiler/venta contractuales, cuartiles, conteos de muestra y períodos de referencia. Seleccione un zone_id, o ambos property_type y bedrooms. Alquileres y ventas son recursos separados; estas son cifras registradas históricas, no precios de oferta ni listados.
GET /costs/areas GET /costs/households GET /costs/emirates GET /costs/emirates/{emirate_id} GET /indices/familyComponentes parciales de costos de hogar, comparaciones de áreas, cobertura de emiratos y escenarios fechados de ahorro fiscal. El alquiler desconocido fuera de Dubái permanece null. Preserve supuestos, monedas, años fiscales y exclusiones; los totales no son presupuestos completos ni ahorros garantizados.
GET /transport/fuel-prices GET /transport/fuel-prices/history GET /transport/taxi-fares GET /transport/public-transport GET /transport/parking GET /transport/tolls GET /transport/commute-estimate GET /transport/commutesCombustible mensual en AED/litro; reglas de taxi, tarifas, estacionamiento y peajes con pausas por componente; estimaciones de automóvil y rutas de desplazamiento publicadas seleccionadas. Proporcione todas las entradas requeridas de estimación de automóvil, o filtre rutas por emirate_id, from_area o to_hub_id.
GET /utilities/dewa/tariff POST /utilities/dewa/bill-estimates GET /telecom/plans GET /telecom/plans/{plan_id}Tramos DEWA y recargos de combustible fechados, estimaciones de factura y planes de internet móvil/hogar con IVA incluido. Las entradas de factura son campos JSON del cuerpo: kwh, ya sea water_m3 o imperial water_gallons, y opcional annual_rent_aed. Mantenga explícitos los componentes de factura excluidos.
GET /health-insurance/rules GET /residence/routes GET /residence/routes/{route_id} GET /residence/common-fees GET /companies/free-zonesReglas de pagador/cobertura de seguro de salud, requisitos y tarifas de residencia, y paquetes de empresas con alcance separado. No son cotizaciones de aseguradoras; un precio de licencia no es un costo integral de reubicación. Las condiciones de fuente y pasos en pausa permanecen explícitos.
GET /tax/country-models GET /references/fx-rates POST /relocation/estimatesModelos fiscales de países admitidos, tipos de cambio CBUAE fechados y un escenario de salario/hogar suministrado. Estimación, no asesoría fiscal. Las entradas personales pertenecen al cuerpo POST; no se almacenan.
GET /today GET /sources GET /sources/{source_id}Destacados fechados y metadatos de fuente, licencias, condiciones y razones de pausa. Sin descarga de conjuntos de datos.
GET /grocery/online-references?q=… GET /electronics/models?q=…Recursos en pausa con datos vacíos y un aviso. No tienen herramientas v2. Consulte los metadatos de fuente; no reintente fuentes en pausa.

Lea el sobre antes de usar una cifra

Las respuestas de datos exitosas contienen meta, data y links. meta.dataset identifica el conjunto de datos y sus fechas, período de referencia, sources[] y disponibilidad:

  • ok: el conjunto de datos solicitado está disponible.
  • partial: algunos componentes o fuentes están en pausa o no disponibles; inspeccione el estado a nivel de fila y preserve el aviso.
  • paused: retenido deliberadamente; HTTP 200, datos vacíos, sin instrucción de reintento. Nunca use una copia anterior de precios excluidos.
  • not_published: aún no publicado; HTTP 200 con datos vacíos. Una falla temporal de recuperación/servicio es en cambio un problema HTTP 503.

historical describe el período de referencia de la fuente, como matrícula KHDA para 2024–2025. stale describe nuestro caché: una copia admitida anterior servida después de una actualización fallida. Son independientes. Las fechas de observación, publicación y compilación tienen su precisión declarada; una fecha o cantidad desconocida es null, nunca inventada.

Las filas llevan provenance. Resuelva cada source_id y license_id en meta.dataset.sources para retener el editor, URL, fechas, licencia, condiciones y atribución requerida. Preserve links.open_in_browser y enlaces de fila donde estén presentes.

Paginación y consultas selectivas

Para listas paginadas, page_size tiene un valor predeterminado de 20 y debe ser 1–50. meta.page contiene returned, total (coincidencias para esta consulta), result_window (200), has_more, next_cursor, snapshot_id y cursor_ttl_s. Pase el cursor opaco sin cambios como cursor, con los mismos filtros, ordenamiento, idioma y tamaño de página. Deténgase cuando next_cursor sea null.

La ventana es de como máximo 200 filas en todas las páginas, incluso cuando total es mayor. En el límite de la ventana has_more es falso; refine la pregunta en lugar de dividir consultas para enumerar un conjunto de datos. HTTP 400 filter_required significa que falta un filtro documentado sustantivo: esto se aplica a búsquedas de productos y zonas, escuelas, alquileres/ventas de vivienda, precios de referencia, informes de compradores y rutas de desplazamiento. Estas rutas no se pueden usar para listar todo el inventario.

Errores, validadores y privacidad

Los errores usan application/problem+json (RFC 9457), con type, title, HTTP status, code estable, detail, request_id, invalid_params e información de reintento. Verifique el código, no el texto del mensaje. Filtros inválidos devuelven 400; recursos no disponibles devuelven 404; métodos no admitidos devuelven 405; cuerpos sobredimensionados devuelven 413; límites de cuota devuelven 429 y fallas transitorias 503. Respete Retry-After.

Un cursor inválido/no coincidente devuelve 400 cursor_invalid. Un cursor expirado o instantánea cambiada devuelve 409 cursor_expired o snapshot_changed: comience de nuevo sin cursor. Las respuestas de datos GET incluyen un ETag; envíe If-None-Match para recibir HTTP 304 cuando la representación no haya cambiado. Las solicitudes condicionales aún cuentan para la cuota. Los datos GET usan caché privada; los cálculos POST y respuestas MCP usan Cache-Control: no-store.

Los cálculos de reubicación y DEWA requieren POST JSON. Las entradas de salario, hogar y consumo no son persistidas por el servicio. Nunca las ponga en parámetros de URL.

Ejemplos curl

# Current monthly fuel
curl -s 'https://prices.brainy.ae/api/v2/transport/fuel-prices'

# Select products and a school shortlist
curl -s 'https://prices.brainy.ae/api/v2/grocery/products?q=milk&page_size=20'
curl -s 'https://prices.brainy.ae/api/v2/schools?near=Jumeirah%20Park&grade=YEAR%207&radius_km=10&page_size=50'

# Registered 1-bedroom apartment rents in Dubai Marina; discover zone ids separately
curl -s 'https://prices.brainy.ae/api/v2/housing/rents?zone_id=dubai-marina&property_type=apartment&bedrooms=1&page_size=20'
curl -s 'https://prices.brainy.ae/api/v2/housing/zones?q=Dubai%20Marina'

# Supplied grocery list (POST only)
curl -s 'https://prices.brainy.ae/api/v2/grocery/comparisons' \
  -H 'Content-Type: application/json' \
  -d '{"items":["milk","eggs"],"area":"JLT"}'

# Monthly DEWA estimate; water_m3 and water_gallons are alternatives
curl -s 'https://prices.brainy.ae/api/v2/utilities/dewa/bill-estimates' \
  -H 'Content-Type: application/json' \
  -d '{"kwh":1000,"water_m3":15}'

# Supplied example, not personal data: estimate, not tax advice
curl -s 'https://prices.brainy.ae/api/v2/relocation/estimates' \
  -H 'Content-Type: application/json' \
  -d '{"country":"GB","gross_annual":80000,"currency":"GBP","household":{"status":"single","children":0},"area":"Dubai Marina","bedrooms":1}'

Para paginar, reutilice el meta.page.next_cursor real de una respuesta, conservando la consulta original. Para validar un resultado en caché, use el ETag real de esa respuesta en If-None-Match. No fabrique cursores ni validadores.

MCP v2

Endpoint remoto: https://prices.brainy.ae/mcp/v2, HTTP Streamable, respuestas JSON sin estado, sin autenticación. Versiones de protocolo admitidas: 2025-11-25, 2025-06-18 y 2025-03-26. La versión de aplicación 2.0.0 es separada de la versión de protocolo MCP.

24 herramientas de solo lectura, agrupadas a continuación desde el catálogo de servicios. Los esquemas de entrada y salida son devueltos por tools/list. Las herramientas de lista admiten page_size hasta 50 donde su operación seleccionada está paginada; la ventana REST y cuota compartida se aplican.

Comestibles

  • grocery_products — productos, ofertas de paquete/unidad/fechas; product_id: historial. No MOET/informes.
  • grocery_compare_list — artículos propuestos, subtotales, entrega/mínimos. No MOET/informes.
  • grocery_stores — tiendas, tarifas de entrega/umbrales gratuitos/mínimos. No precios.
  • official_shop_prices — precios de paquete/conteos de sucursales MOET Dubái sin alterar. No ofertas en vivo.
  • shopper_price_reports — precios moderados/tienda/fecha/promociones. No MOET/ofertas en vivo.

Escuelas

  • schools — matrícula histórica KHDA por grado, tarifas de autobús/año, distancias. q: nombre de escuela/parte; near: zona; school_id: detalle. Año ≠ Grado; uniformes en pausa.

Vivienda y costos de hogar

  • housing_rents — medianas registradas de alquiler anual/mensual, contratos y ventas de zona. No listados.
  • housing_sales — medianas/conteos registrados listos/en planos y contexto de alquiler. No listados.
  • costs_by_area — clasificaciones de área, costos de alquiler/compartidos y matrícula. No presupuestos completos.
  • fixed_monthly_costs — costos mensuales de perfil/supuestos; canasta separada. No presupuestos completos.
  • costs_by_emirate — costos de alquiler/servicios/escuela por emirato. Alquiler fuera de Dubái desconocido.
  • tax_savings_by_country — ingreso de hogar por país/ahorros fiscales/años. No asesoría fiscal.

Transporte y servicios públicos

  • fuel_prices — grados actuales/anteriores, cambios, costos de tanque 50/70 L, contexto/historial de transporte.
  • transport_fares — tarifas de taxi/estimación de viaje o público/estacionamiento/peajes más combustible. No cotizaciones de aplicación.
  • commute_cost — entradas/tasas mensuales/anuales de combustible+Salik o rutas. Excluye estacionamiento/propiedad.
  • dewa — tramos/recargos/ejemplos; kwh: estimación de agua/IVA/tarifa de vivienda. No factura completa.
  • mobile_internet_plans — precios móviles/hogar con IVA incluido, promoción luego regular, datos y contratos.

Salud y reubicación

  • health_insurance — reglas de pagador, banda EBP/beneficios, multas/citas legales. No cotizaciones de aseguradoras.
  • residence_visas — pagador de ruta/requisitos, tarifas, bandas médicas/seguro comunes y pasos en pausa.
  • free_zone_companies — paquetes de configuración, precios anuales/mensuales/visas y zonas en pausa. No rutas de visa.
  • move_to_dubai — neto hogar/Dubái, impuestos, FX, costos/ahorros; omitir país: modelos. No asesoría fiscal.
  • fx_rates — tasas AED CBUAE fechadas. No cotizaciones bancarias.

Destacados y fuentes

  • today — destacados fechados, fuentes/cifras/advertencias. No en vivo.
  • data_sources — editores/enlaces, condiciones de licencia/fechas y razones de pausa. No filas de conjuntos de datos.

Cada herramienta exitosa devuelve el sobre v2 como structuredContent, con un resumen compacto content[].text que preserva números, unidades, fuente, fecha, advertencias y un enlace de navegador. Un resumen de texto puede mostrar menos filas que el contenido estructurado: use el total declarado e instrucción de continuación. Una pausa deliberada es un resultado normal (isError: false), nunca una instrucción para reintentar; entrada inválida es isError: true.

Recursos y prompts

resources/list anuncia nueve recursos estáticos de metadatos/métodos; resources/templates/list anuncia brainy-prices://datasets/{dataset_id}/metadata para IDs de conjuntos de datos en lista permitida. Explican alcance, fuentes, licencias, fechas y pausas; no exponen filas de conjuntos de datos ni exportaciones masivas.

  • brainy-prices://catalog/datasets — Catálogo solo de metadatos de tarjetas de conjuntos de datos y herramientas, sin filas.
  • brainy-prices://methodology/groceries — Ofertas observadas, unidades, exacto/equivalente, cohorte, entrega y metodología de tienda única.
  • brainy-prices://methodology/schools — Matrícula histórica KHDA por Año/Grado, distancia en línea recta OSM, alcance de autobús/uniforme y derechos.
  • brainy-prices://methodology/housing — Alquileres/ventas DLD registrados, muestras, cuartiles, período y licencia.
  • brainy-prices://methodology/costs — Costos parciales fijos, supuestos de componentes y cobertura faltante de emiratos.
  • brainy-prices://methodology/relocation — Cálculos fechados de impuestos/tipo de cambio, supuestos de residencia, exclusiones, sin almacenamiento de datos personales.
  • brainy-prices://policies/sources — Metadatos de derechos y pausas deliberadas por fuente, no los conjuntos de datos subyacentes.
  • brainy-prices://policies/access — Cuotas anónimas/de clave gratuita, doble aceptación y política de sin acceso masivo.
  • brainy-prices://changes/current — Últimos 20 cambios solo de metadatos, sin diferencias de filas.

El recurso de cambios actual indica cuándo no hay un registro de cambios fechado disponible; no infiera un historial de publicaciones a partir de su nombre. prompts/list anuncia cinco plantillas opcionales. prompts/get prepara mensajes a partir de argumentos proporcionados; no ejecuta herramientas:

  • compare_moving_from — Comparar un escenario salarial del país de origen proporcionado con Dubái, usando impuestos, tipo de cambio y costos parciales fechados; solicitar supuestos personales faltantes.
  • school_shortlist — Preseleccionar escuelas cercanas por la etiqueta exacta publicada de Año/Grado, matrícula histórica y distancia aproximada en línea recta.
  • compare_grocery_list — Comparar solo los artículos de supermercado que el usuario realmente proporcionó; distinguir ofertas observadas, precios de referencia oficiales e informes de compradores.
  • compare_areas — Comparar componentes de costos fijos para un escenario de vivienda proporcionado sin inventar cobertura de alquiler fuera de Dubái.
  • check_sources — Inspeccionar metadatos, métodos y permisos de fuentes para un tema sin descargar su conjunto de datos.

Conectar un cliente

Claude Code: agregue un servidor HTTP remoto en la terminal (guía de conexión).

claude mcp add --transport http brainy-prices-v2 https://prices.brainy.ae/mcp/v2

Claude Desktop: agregue un conector remoto personalizado en Conectores con https://prices.brainy.ae/mcp/v2. La disponibilidad depende de su plan y la configuración del administrador (guía de conexión).

Cursor: agregue esto al .cursor/mcp.json de su proyecto (guía de conexión):

{
  "mcpServers": {
    "brainy-prices-v2": { "url": "https://prices.brainy.ae/mcp/v2" }
  }
}

VS Code: agregue esto a .vscode/mcp.json e inicie el servidor desde los controles MCP del editor (guía de conexión):

{
  "servers": {
    "brainy-prices-v2": {
      "type": "http",
      "url": "https://prices.brainy.ae/mcp/v2"
    }
  }
}

Otros clientes: elija un servidor HTTP Streamable remoto, pegue el punto final y seleccione sin autenticación. El cliente debe admitir una de las versiones de protocolo anteriores; el descubrimiento MCP proporciona los esquemas, recursos y avisos.

Sesión JSON-RPC sin procesar con curl

# 1. initialize
curl -s 'https://prices.brainy.ae/mcp/v2' \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'

# 2. acknowledge initialization (HTTP 202, no body)
curl -s 'https://prices.brainy.ae/mcp/v2' \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-11-25' \
  -d '{"jsonrpc":"2.0","method":"notifications/initialized"}'

# 3. discover tools
curl -s 'https://prices.brainy.ae/mcp/v2' \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-11-25' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

# 4. call a tool
curl -s 'https://prices.brainy.ae/mcp/v2' \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -H 'MCP-Protocol-Version: 2025-11-25' \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"grocery_compare_list","arguments":{"items":["milk","eggs"],"area":"JLT"}}}'

No se emite Mcp-Session-Id. Solo POST: GET y DELETE devuelven 405. Los lotes JSON-RPC se rechazan. El descubrimiento y la inicialización tienen un control de velocidad de solicitudes separado; cada llamada de herramienta consume la cuota de datos compartida.

Límites y uso justo

  • Acceso anónimo v2: 30 solicitudes por minuto y 500 por día UTC por identidad de red verificada (IPv6 /64). Las solicitudes REST v2 y las llamadas de herramientas MCP v2 comparten la misma cuota entre instancias de servicio.
  • HTTP 304, errores de validación y resultados de datos en pausa aún consumen cuota de datos. HTTP 429 incluye Retry-After; inspeccione los encabezados RateLimit y RateLimit-Policy.
  • Almacene respuestas en caché de forma privada, conserve su fuente/fecha/estado y revalide usando ETag cuando sea compatible. Diferentes conjuntos de datos se actualizan en diferentes horarios; consulte sus metadatos.
  • No se ofrecen descargas masivas, enumeración sistemática ni conjuntos de datos abiertos. El acceso gratuito y los recursos de metadatos no amplían una licencia de fuente.

Atribución y licencias de fuentes

Al mostrar un resultado, cite la fuente original y su fecha o período de referencia, además de “Fuente: Brainy Prices, prices.brainy.ae, <date>” y el enlace del navegador. Conserve la atribución específica de la fuente, avisos, exclusiones y condiciones de licencia. No hay una licencia general sobre todas las respuestas.

  • KHDA: sin alterar, sin fines de lucro. Los datos de matrícula son para uso no comercial y no deben alterarse. Mantenga las etiquetas originales publicadas de Año/Grado y el año académico; no venda, monetice ni modifique los datos.
  • Departamento de Tierras de Dubái: Licencia de Datos Abiertos de Dubái. Conserve la atribución de DLD y el período de referencia; las medianas contractuales no son listados.
  • OpenStreetMap: ODbL. Crédito © colaboradores de OpenStreetMap; las ubicaciones son aproximadas y las distancias escolares son en línea recta.
  • Las tiendas, operadores y otras fuentes tienen sus propios permisos y condiciones, proporcionados en meta.dataset.sources. La accesibilidad pública no es permiso para recopilarlos o redistribuirlos.
  • Sin descargas masivas ni conjuntos de datos abiertos. La API sirve consultas selectivas. Los metadatos de fuentes y el acceso anónimo gratuito no son una licencia de exportación o redistribución.
  • Fuentes excluidas: nunca. Sus precios no deben aparecer en respuestas, contenido anidado o respaldo en caché. Las fuentes en pausa permanecen vacías hasta que su revisión de permisos/fuentes permita la publicación.

Las ofertas de tiendas pueden cambiar durante el día y al finalizar la compra. La entrega desconocida permanece desconocida, nunca gratuita; los artículos faltantes y los supuestos permanecen explícitos. Una comparación clasifica solo el subconjunto comparable común, y un resultado de tienda única no es una clasificación de tiendas.

Consulte metodología, condiciones de fuentes y privacidad. No elimine sus advertencias al reutilizar una cifra.

Obsoleto: API v1 y el punto final MCP heredado (/mcp)

API v1 y https://prices.brainy.ae/mcp siguen disponibles. No se ha establecido una fecha de eliminación; la eliminación se anunciará con aviso previo. Las integraciones v1 existentes continúan funcionando. Las nuevas integraciones deben usar v2. La tabla mapea los nombres y rutas de herramientas heredadas al diseño v2; use esquemas de entrada v2 en lugar de copiar nombres de parámetros antiguos.

Herramienta / ruta heredadaHerramienta / ruta v2
search_products · GET /products?q=grocery_products · GET /grocery/products?q=
get_product · GET /products/{id}grocery_products · GET /grocery/products/{product_id}, /grocery/products/{product_id}/offers
compare_grocery_list · GET/POST /comparegrocery_compare_list · POST /grocery/comparisons
list_stores · GET /storesgrocery_stores · GET /grocery/stores, /grocery/stores/{store_id}
get_school_fees · GET /schoolsschools · GET /schools, /schools/{school_id}
get_school_uniforms · GET /school-uniformsschools (uniform status) · GET /schools/{school_id}/uniform-items (paused)
get_rent_prices · GET /rent (rents)housing_rents · GET /housing/rents, /housing/zones?q=…, /housing/zones/{zone_id}
get_rent_prices · GET /rent (sales)housing_sales · GET /housing/sales
compare_areas_cost_of_living · GET /areascosts_by_area · GET /costs/areas
get_cost_of_living · GET /cost-of-livingfixed_monthly_costs · GET /costs/households
get_fuel_prices · GET /fuel (fuel)fuel_prices · GET /transport/fuel-prices, /transport/fuel-prices/history
get_fuel_prices · GET /fuel (tolls, parking, public fares)transport_fares · GET /transport/tolls, /transport/parking, /transport/public-transport
get_taxi_fares · GET /taxi-farestransport_fares (mode=taxi) · GET /transport/taxi-fares
estimate_commute_cost · GET /commutecommute_cost · GET /transport/commute-estimate, /transport/commutes
get_dewa_tariff · GET /dewadewa · GET /utilities/dewa/tariff; POST /utilities/dewa/bill-estimates
get_mobile_internet_plans · GET /mobile-internet-plansmobile_internet_plans · GET /telecom/plans, /telecom/plans/{plan_id}
get_health_insurance · GET /health-insurancehealth_insurance · GET /health-insurance/rules
get_visa_and_company_costs · GET /visas (residence)residence_visas · GET /residence/routes, /residence/routes/{route_id}, /residence/common-fees
get_visa_and_company_costs · GET /visas (companies)free_zone_companies · GET /companies/free-zones
estimate_move_to_dubai · POST /movemove_to_dubai · POST /relocation/estimates; GET /tax/country-models
get_today · GET /todaytoday · GET /today
find_price_online · GET /search (paused)No v2 tool · GET /grocery/online-references?q=… (paused); data_sources for status
get_electronics_prices · GET /electronics (paused)No v2 tool · GET /electronics/models?q=… (paused); data_sources for status

official_shop_prices, shopper_price_reports, costs_by_emirate, tax_savings_by_country, fx_rates y data_sources son herramientas nuevas sin equivalente heredado directo. Las referencias en línea y la electrónica no tienen herramienta v2; sus recursos REST en pausa y metadatos siguen disponibles. El estado del uniforme escolar está incluido en schools.

Los cambios de parámetros incluyen q para búsquedas de productos REST, max_annual_fee_aed para filtrado de matrícula REST, zone_id para vivienda REST (resuelva nombres con /housing/zones?q=…), profile_id para costos de hogar y category / max_aed_per_month para telecomunicaciones. Las herramientas MCP conservan sus propios entradas documentadas, incluidos nombres/alias de vivienda zone. Las comparaciones de supermercado, estimaciones de DEWA y estimaciones de reubicación usan JSON POST.

Enlaces