mcp-server

Datos verificados de Alicante: transporte, parkings, playas, tiempo, comida y ocio.

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
77%
Integridad del esquema
78%
Calidad de los nombres
89%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (8)

  • LOWTool 'next_departures' description lacks action verben next_departures
  • LOWTool 'favorite_stop' description lacks action verben favorite_stop
  • LOWTool 'find_food' description lacks action verben find_food
  • LOWTool 'find_place' description lacks action verben find_place
  • LOWTool 'fuel_prices' description lacks action verben fuel_prices
  • LOWTool 'whats_on' description lacks action verben whats_on
  • LOWTool 'get_llms_txt' description lacks action verben get_llms_txt
  • LOWTool 'get_llms_full_txt' description lacks action verben get_llms_full_txt

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,947Tokens (definiciones de herramientas)
~1.2 KBTamaño de respuesta típico
Impacto significativo en la atención (3.08% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "mcp-server": {
      "url": "https://vamosalicante.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://vamosalicante.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (18)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢discover_capabilities

Devuelve el contrato de datos de VamosAlicante: secciones disponibles, tipos de dato (LIVE, CALCULATED, CATALOG), frescura, fuentes oficiales y la política de acceso para agentes. Llamar primero cuando no se sabe qué herramienta usar.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_alicante(query, limit)

BUSCADOR: úsalo PRIMERO ante cualquier consulta sobre Alicante en lenguaje natural (transporte, autobús, TRAM, tren, aeropuerto, parkings, playas, tiempo, comer, dormir, ocio, comercio, salud, combustible). Devuelve una lista compacta de URLs canónicas con `type` y, cuando existe, `entityId` para pedir el estado en get_current_state, o `resolveWith` para resolve_entity. Sirve para DECIDIR qué 1–3 URLs pedir después: no devuelve el inventario completo ni admite paginación profunda.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "Consulta libre, p. ej. «parking cerca del teatro»."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Número máximo de resultados (1–10). Por defecto 10."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢resolve_entity(query, type)

Convierte el nombre que dice el usuario (con tildes, alias o erratas) en un identificador estable `entityId` de un parking, parada de bus, estación de TRAM o playa de Alicante. Primer paso antes de get_current_state. Si la respuesta marca `ambiguous`, pregunta al usuario cuál quería.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "Nombre aproximado, p. ej. «paradis» o «parking del mercado»."
    },
    "type": {
      "type": "string",
      "enum": [
        "parking",
        "tram-stop",
        "bus-stop",
        "beach"
      ],
      "description": "Restringe el tipo de entidad cuando ya se conoce."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_current_state(entity_id)

Estado ahora mismo de una entidad concreta ya identificada: plazas libres de un parking, próximas llegadas de una parada de bus, próximas salidas de una estación de TRAM o bandera de una playa. Requiere el `entity_id` devuelto por resolve_entity. Con `bus-stop:<código>` las llegadas se extraen bajo demanda desde la fuente oficial del Ayuntamiento de Alicante / «Alicante se mueve». Si el LIVE no responde, usa únicamente `estimated_eta` del motor predictivo propio y aclara que es ESTIMATED; nunca uses llegadas cacheadas antiguas como estado actual.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "string",
      "minLength": 3,
      "maxLength": 120,
      "description": "Identificador `<tipo>:<id>` devuelto por resolve_entity, p. ej. «parking:mercado»."
    }
  },
  "required": [
    "entity_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢parking_availability

Estado de los aparcamientos públicos de Alicante: plazas libres cuando hay observación de sensores vigente, y ficha (capacidad, dirección, tarifa) cuando solo existe catálogo. `dataType` declara si el dato es LIVE o CATALOG.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢weather_now

Tiempo actual en Alicante (temperatura, viento, humedad, UV), previsión, temperatura del mar y altura de ola, junto con los avisos meteorológicos oficiales de AEMET vigentes.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢next_departures(mode, stop, line, destination, date, ...)

Próximas llegadas o salidas de un servicio concreto de Alicante: autobús urbano por parada, TRAM por estación, Cercanías/ADIF, autobús interurbano por destino, o la línea C6 del aeropuerto. Requiere identificar el servicio y la parada o el destino. Con mode=bus la consulta extrae SIEMPRE el dato bajo demanda desde la fuente oficial del Ayuntamiento de Alicante / «Alicante se mueve» mediante /api/public/v1/bus/live-arrivals. Si falla el LIVE, el único fallback es `estimated_eta` del motor predictivo propio, claramente ESTIMATED.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "bus",
        "tram",
        "train",
        "coach",
        "airport_bus"
      ],
      "description": "Servicio: bus urbano, TRAM, tren, autobús interurbano o C6 del aeropuerto."
    },
    "stop": {
      "type": "string",
      "maxLength": 20,
      "description": "Código de parada de bus (mode=bus) o identificador de estación TRAM (mode=tram)."
    },
    "line": {
      "type": "string",
      "maxLength": 6,
      "description": "Línea concreta, solo para mode=bus."
    },
    "destination": {
      "type": "string",
      "maxLength": 60,
      "description": "Destino, solo para mode=coach."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Fecha YYYY-MM-DD (Europe/Madrid) para tram o coach."
    },
    "type": {
      "type": "string",
      "enum": [
        "departures",
        "arrivals",
        "all",
        "salidas",
        "llegadas"
      ],
      "description": "Solo para mode=train: departures | arrivals | all (alias: salidas, llegadas)."
    }
  },
  "required": [
    "mode"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_transit_stop(network, query, line, limit)

Busca por nombre o línea una parada de autobús urbano o una estación de TRAM de Alicante y devuelve su código, líneas y coordenadas, para después consultar sus próximas salidas con next_departures. Requiere nombre o línea: no devuelve el listado completo.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "network": {
      "type": "string",
      "enum": [
        "bus",
        "tram"
      ],
      "description": "Red: autobús urbano o TRAM."
    },
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 60,
      "description": "Nombre o parte del nombre de la parada."
    },
    "line": {
      "type": "string",
      "maxLength": 6,
      "description": "Línea que pasa por la parada."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "required": [
    "network"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢catch_vehicle_decision(stop, lat, lng, line, walk_speed_ms, ...)

Decide si el usuario llega a tiempo a un autobús en una parada de Alicante cruzando el ETA del vehículo (tiempo real de la fuente oficial o, en su defecto, la estimación del motor propio) con el tiempo a pie desde sus coordenadas. Devuelve decision CATCH, TIGHT, MISS o UNKNOWN, el margen en segundos y el siguiente paso alcanzable.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "stop": {
      "type": "string",
      "maxLength": 60,
      "description": "Código oficial de parada o su nombre. Resuélvelo con find_transit_stop."
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitud actual del usuario."
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitud actual del usuario."
    },
    "line": {
      "type": "string",
      "maxLength": 6,
      "description": "Línea concreta de bus."
    },
    "walk_speed_ms": {
      "type": "number",
      "minimum": 0.5,
      "maximum": 2.5,
      "description": "Velocidad de marcha en m/s. Por defecto 1.35."
    },
    "buffer_seconds": {
      "type": "number",
      "minimum": 0,
      "maximum": 300,
      "description": "Colchón de seguridad en segundos. Por defecto 30."
    }
  },
  "required": [
    "stop",
    "lat",
    "lng"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢favorite_stop(stop)

Ficha completa de una parada de autobús concreta de Alicante (nombre, coordenadas, líneas) junto con sus próximas llegadas. Las llegadas se extraen SIEMPRE bajo demanda desde la fuente oficial del Ayuntamiento de Alicante / «Alicante se mueve» mediante /api/public/v1/bus/live-arrivals. Si no hay respuesta LIVE, el único fallback es `estimated_eta` del motor predictivo propio, claramente ESTIMATED; nunca uses llegadas cacheadas antiguas como dato actual.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "stop": {
      "type": "string",
      "pattern": "^\\d{1,6}$",
      "description": "Código oficial de la parada, p. ej. 1010."
    }
  },
  "required": [
    "stop"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢beach_conditions(beach, municipality, limit)

Bandera vigente y estado de las playas de Alicante (y municipios próximos) con su ficha: servicios, accesibilidad y URL canónica. Acota por nombre de playa o municipio.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "beach": {
      "type": "string",
      "maxLength": 60,
      "description": "Nombre de la playa, p. ej. «Postiguet»."
    },
    "municipality": {
      "type": "string",
      "maxLength": 60,
      "description": "Municipio, p. ej. «Alicante»."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_food(dish, name, cuisine, limit)

Resuelve una necesidad gastronómica concreta en Alicante: un plato («arroz a banda»), una cocina o un local por nombre. Devuelve locales elegibles con dirección, horario publicado y, cuando existe, el plato y su precio en carta. No devuelve cartas completas.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "dish": {
      "type": "string",
      "maxLength": 80,
      "description": "Plato o consulta gastronómica en lenguaje natural."
    },
    "name": {
      "type": "string",
      "maxLength": 80,
      "description": "Nombre del local."
    },
    "cuisine": {
      "type": "string",
      "maxLength": 40,
      "description": "Tipo de cocina, p. ej. «italiana»."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_place(category, query, zone, sector, kind, ...)

Busca un sitio o servicio concreto de Alicante por nombre, zona o categoría: hoteles, comercios y zonas comerciales, copas y ocio nocturno, farmacias (incluida guardia), centros de salud, lugares turísticos, paradas de taxi, consignas de equipaje y oficinas de alquiler de coches. Exige acotar la consulta.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "hotel",
        "shopping",
        "shopping_zone",
        "nightlife",
        "pharmacy",
        "health_center",
        "tourism",
        "taxi_stop",
        "luggage_storage",
        "car_rental"
      ],
      "description": "Tipo de sitio o servicio."
    },
    "query": {
      "type": "string",
      "maxLength": 80,
      "description": "Nombre, marca o parte del nombre."
    },
    "zone": {
      "type": "string",
      "maxLength": 60,
      "description": "Zona o barrio (hoteles y comercios)."
    },
    "sector": {
      "type": "string",
      "maxLength": 60,
      "description": "Sector comercial (solo category=shopping)."
    },
    "kind": {
      "type": "string",
      "maxLength": 40,
      "description": "Subtipo (ocio nocturno o turismo)."
    },
    "onDuty": {
      "type": "boolean",
      "description": "Solo farmacias de guardia (category=pharmacy)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "required": [
    "category"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢flight_status(type, city, date, limit)

Llegadas y salidas del aeropuerto Alicante-Elche (ALC) para una ciudad o fecha concreta, con estado y hora publicada. Acota por ciudad o fecha en lugar de pedir el listado completo del día.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "llegadas",
        "salidas",
        "todos"
      ],
      "description": "Llegadas, salidas o todos los vuelos del día."
    },
    "city": {
      "type": "string",
      "maxLength": 60,
      "description": "Ciudad de origen o destino."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Fecha YYYY-MM-DD en Europe/Madrid."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "required": [
    "type"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢fuel_prices(fuel, query, limit)

Precios oficiales de carburante en gasolineras de Alicante para un carburante concreto, ordenados de más barato a más caro, con rótulo, dirección y fecha de la publicación oficial.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "fuel": {
      "type": "string",
      "maxLength": 30,
      "description": "Carburante. Códigos oficiales: gasolina95E5, gasolina98E5, gasoleoA, gasoleoPremium, glp. También se aceptan nombres comunes («gasolina 95», «diésel», «GLP»)."
    },
    "query": {
      "type": "string",
      "maxLength": 60,
      "description": "Rótulo o zona de la gasolinera."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢whats_on(query, date, limit)

Agenda de actividades y cine en Alicante para una fecha o búsqueda concreta: eventos publicados y sesiones de cine con hora y sala.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 80,
      "description": "Evento, película o palabra clave."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Fecha YYYY-MM-DD en Europe/Madrid."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "description": "Resultados (máx. 10)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_llms_txt

Devuelve el contenido actual de /llms.txt de VamosAlicante como texto plano. Este recurso contiene instrucciones y recursos destinados a agentes de IA.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_llms_full_txt

Devuelve el contenido actual de /llms-full.txt de VamosAlicante como texto plano para agentes de IA.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada18 herramientas
verificadoversión no registrada18 herramientas
verificadoversión no registrada18 herramientas