Skip to main content
Glama
README.md
# Travel MCP orientado a viajes

Este servidor MCP (Model Context Protocol) actua como copiloto para planificar viajes y excursiones. Expone herramientas con datos geograficos, clima, transporte, divisas y contenidos de apoyo para crear experiencias de viaje personalizadas desde un cliente MCP compatible.

## Ideas rapidas de uso

- Planear itinerarios con coordenadas, distancias, tiempos de traslado y clima en destino.
- Preparar al viajero con datos de calidad del aire, tipo de cambio y noticias locales relevantes.
- Producir fichas informativas con resumenes de Wikipedia, imagenes inspiradoras y curiosidades del lugar.
- Automatizar workflows para asistentes que deben responder sobre ubicaciones, rutas y condiciones en tiempo real.

## Herramientas disponibles

### Planificacion y logistica
- `fetch-coordinates`: devuelve latitud y longitud de una ciudad.
- `geocode`: convierte una direccion o punto de interes en coordenadas.
- `reverse-geocode`: transforma coordenadas en una direccion legible.
- `distance`: calcula distancia y tiempo de conduccion entre dos lugares.

### Condiciones del destino
- `fetch-weather`: obtiene pronosticos puntuales para unas coordenadas.
- `air-quality`: consulta el indice de calidad del aire de una ciudad.
- `space-photo`: aporta una imagen astronomica diaria para destinos astro-turisticos o contenido inspirador.

### Finanzas y preparativos
- `exchange-rate`: convierte montos entre monedas.
- `crypto-price`: referencia precios de criptomonedas.
- `get-current-time`: muestra la hora actual del servidor para sincronizar agendas.

### Inspiracion y contexto
- `wiki-summary`: resume articulos de Wikipedia para guias rapidas.
- `book-search`: encuentra libros por titulo o autor relacionados con el destino.
- `search-news-rss`: recupera titulares desde feeds RSS para alertas locales.
- `random-trivia`: genera trivias utiles como rompenieves culturales.
- `get-dog-image`: recurso ligero para mensajes amistosos dentro de un asistente de viajes.
- `spacex-launches`: listado util para experiencias orientadas al turismo espacial.

### Otros recursos
- `fetch-cooking-recipe`: comparte recetas locales para sumergir al viajero en la gastronomia.
- `news-alicante-informacion`: muestra titulares recientes de informacion.es (ejemplo de feed regional).

## Instalacion

```bash
npm install
```

## Ejecucion del inspector MCP

```bash
npx -y @modelcontextprotocol/inspector npx -y tsx src/main.ts
```

### Ejecutar el inspector sin autenticacion (solo si confias en el cliente)

En PowerShell:

```powershell
$env:DANGEROUSLY_OMIT_AUTH="true"
npx -y @modelcontextprotocol/inspector npx -y tsx src/main.ts
```

En CMD:

```cmd
set DANGEROUSLY_OMIT_AUTH=true
npx -y @modelcontextprotocol/inspector npx -y tsx src/main.ts
```

## Manejo de errores

Cada herramienta aplica un timeout de 8 segundos con `AbortController` para las peticiones `fetch`. Si ocurre un error o se supera el limite, la respuesta mantiene un formato consistente:

```json
{ "error": "mensaje descriptivo" }
```

Este mensaje indica fallos de red, codigos HTTP (p. ej. `HTTP 404`) o cancelaciones por timeout.