Skip to main content
Glama
navifare
by navifare

MoltTravel

Ein MCP-Server. Jedes Reise-Tool.

Flüge suchen, Preise vergleichen, Visa prüfen, Flughäfen nachschlagen, Reisehinweise abrufen — über einen einzigen Endpunkt.

MCP Protocol Python 3.12+ License: MIT

  Kiwi.com    Navifare     Peek.com    LastMinute
  (flights)   (prices)   (experiences)  (flights)
      \          |           |          /
       \         |           |         /
        +--------+-----------+--------+
        |                             |
        |    MoltTravel MCP Server    |
        |                             |
        |  Airports  Airlines  Visas  |
        |  Countries  FCDO  Gemini AI |
        |                             |
        +-------------|---------------+
                      |
               MCP over HTTP
                      |
              Any MCP Client
        (Claude, Cursor, your app)

Warum?

Reisedaten sind über Dutzende von APIs verstreut, jede mit eigener Authentifizierung, eigenem Format und Eigenheiten. MoltTravel bündelt sie hinter einem einzigen Model Context Protocol-Endpunkt:

  • 21+ Tools von 4 vorgeschalteten MCP-Anbietern + 6 integrierte Datensätze

  • Null Konfiguration für statische Daten — Flughäfen, Fluggesellschaften und Visa werden lazy ohne API-Schlüssel geladen

  • Schema-transparenter Proxy — Clients sehen das echte vorgelagerte JSON Schema; vorgelagerte Server validieren ihre eigenen Argumente

  • Eine Zeile zum Verbinden von Claude Desktop, Claude Code, Cursor oder jedem MCP-Client

Related MCP server: orizn-visa-mcp

Schnellstart

git clone https://github.com/navifare/moltravel-mcp.git
cd moltravel-mcp
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
python molttravel_server.py

Der Server startet unter http://localhost:8000/mcp. Das war's.

Client verbinden

Zu claude_desktop_config.json hinzufügen:

{
  "mcpServers": {
    "molttravel": {
      "url": "http://localhost:8000/mcp"
    }
  }
}

Zu .claude/settings.json hinzufügen:

{
  "mcpServers": {
    "molttravel": {
      "url": "http://localhost:8000/mcp"
    }
  }
}
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client

async with streamablehttp_client("http://localhost:8000/mcp") as (r, w, _):
    async with ClientSession(r, w) as session:
        await session.initialize()
        tools = await session.list_tools()
        result = await session.call_tool("airports_lookup", {"code": "ZRH"})

Tools

Flüge & Preise

Tool

Anbieter

Was es tut

kiwi_search-flight

Kiwi.com

Flüge nach Route, Datum, Passagieren und Kabinenklasse suchen

navifare_format_flight_pricecheck_request

Navifare

Flugdetails aus natürlicher Sprache in strukturierte Daten parsen

navifare_flight_pricecheck

Navifare

Den Preis eines Fluges über mehrere Buchungsseiten vergleichen

Erlebnisse & Aktivitäten

Tool

Anbieter

Was es tut

peek_search_experiences

Peek.com

300.000+ verifizierte Aktivitäten weltweit suchen

peek_experience_details

Peek.com

Vollständige Details, Bewertungen und Fotos für ein Erlebnis

peek_experience_availability

Peek.com

Verfügbarkeit und Preise für bestimmte Daten prüfen

peek_search_regions

Peek.com

Region-IDs nach Namen finden

peek_list_tags

Peek.com

Aktivitätskategorien und Tags durchsuchen

peek_render_activity_tiles

Peek.com

Einbettbare Aktivitäts-Widgets rendern

Referenzdaten (integriert, keine API-Schlüssel nötig)

Tool

Datensatz

Was es tut

airports_lookup

OurAirports

Nach IATA- oder ICAO-Code nachschlagen

airports_search

OurAirports

Nach Name suchen, nach Land oder Typ filtern

airports_near

OurAirports

Flughäfen innerhalb eines Radius um beliebige Koordinaten finden

airlines_lookup

OpenFlights

Nach IATA- oder ICAO-Code nachschlagen

airlines_search

OpenFlights

Nach Name suchen, nach Land oder Aktivstatus filtern

visa_check

Passport Index

Visapflicht zwischen zwei Ländern prüfen

visa_summary

Passport Index

Vollständige Aufschlüsselung visumfrei/VOA/e-visa für einen Reisepass

restcountries_country_info

REST Countries

Hauptstadt, Währungen, Sprachen, Zeitzonen, Bevölkerung

fcdo_travel_advice

UK FCDO

Sicherheitswarnungen, Einreisebestimmungen, Gesundheitswarnungen

fcdo_list_countries

UK FCDO

Alle Länder mit Reisehinweisen auflisten

data_status

Prüfen, welche Datensätze geladen sind und Anzahl der Einträge

Natürliche Sprache (optional)

Tool

Was es tut

travel_agent

Beliebige Reisefrage stellen — Gemini leitet an die richtigen Tools weiter und liefert eine kombinierte Antwort

Erfordert GEMINI_API_KEY. Beispiel: „Günstigste Flüge von Zürich nach Rom nächste Woche, und brauche ich ein Visum?"

So funktioniert es

1. Tool-Erkennung

Beim Start verbindet sich MoltTravel mit jedem vorgeschalteten MCP-Server, ruft tools/list auf und registriert jedes erkannte Tool mit einem {provider}_{tool_name}-Präfix:

kiwi       → kiwi_search-flight, kiwi_feedback-to-devs
navifare   → navifare_flight_pricecheck, navifare_format_flight_pricecheck_request
peek       → peek_search_experiences, peek_experience_details, ...
lastminute → (discovered at runtime)

Native Tools (Flughäfen, Fluggesellschaften, Visa, Länder, FCDO) werden direkt registriert.

2. Schema-transparenter Proxy

Clients sehen das ursprüngliche vorgelagerte JSON Schema für jedes Tool — Enums, verschachtelte Objekte, $ref, alles. Intern verwendet MoltTravel ein permissives Pydantic-Modell (Any für alle Felder), sodass Argumente ohne verlustbehaftete Validierung durchgereicht werden. Der vorgelagerte MCP-Server validiert seine eigenen Argumente.

# Client sees the real schema
parameters = input_schema          # original from upstream

# Server doesn't re-validate types — just passes through
fields[prop_name] = (Any, Field(default=None))

3. Lazy-Datenladen

Statische Datensätze (Flughäfen, Fluggesellschaften, Visa) werden bei erster Nutzung hinter asynchronen Sperren heruntergeladen. Kein Startnachteil, keine verschwendete Bandbreite, wenn Sie nur Flug-Tools verwenden.

Konfiguration

Variable

Standard

Beschreibung

PORT

8000

Serverport

GEMINI_API_KEY

Aktiviert das travel_agent-Tool zur Weiterleitung natürlicher Sprache

Bereitstellung

FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["python", "molttravel_server.py"]
docker build -t molttravel .
docker run -p 8000:8000 molttravel

Der Server liest PORT aus der Umgebung und bindet an 0.0.0.0 — er funktioniert sofort auf jeder Container-Plattform. Weisen Sie einfach den Startbefehl auf python molttravel_server.py.

Projektstruktur

moltravel-mcp/
├── molttravel_server.py        # Server core — proxy logic, native tools, routing
├── requirements.txt            # mcp[cli], httpx
├── test_search.py              # Integration test client
└── providers/
    ├── __init__.py             # MCP_PROVIDERS registry + exports
    ├── mcp_client.py           # Generic HTTP client for upstream MCP servers
    ├── data_loader.py          # CSV downloader + haversine distance
    ├── airports.py             # 45K airports from OurAirports
    ├── airlines.py             # 7K airlines from OpenFlights
    ├── visas.py                # Visa requirements from Passport Index
    ├── restcountries.py        # REST Countries API
    ├── fcdo.py                 # UK FCDO travel advisories
    └── gemini.py               # Gemini Flash tool router

Erweitern

Einen MCP-Anbieter hinzufügen

Eine Zeile zu providers/__init__.py hinzufügen und neu starten:

MCP_PROVIDERS = {
    "kiwi": McpClient("https://mcp.kiwi.com/mcp"),
    "navifare": McpClient("https://mcp.navifare.com/mcp"),
    "peek": McpClient("https://mcp.peek.com/mcp"),
    "your_provider": McpClient("https://mcp.example.com/mcp"),  # new
}

Tools werden automatisch als your_provider_{tool_name} erkannt und registriert.

Ein natives Tool hinzufügen

@server.tool(name="my_tool")
async def my_tool(query: str) -> str:
    """Description shown to MCP clients."""
    return "result"

Datenquellen & Lizenzen

Datensatz

Quelle

Lizenz

Flughäfen

OurAirports

Public Domain

Fluggesellschaften

OpenFlights

ODbL 1.0

Visabestimmungen

Passport Index

MIT

Länderinformationen

REST Countries

MPL 2.0

Reisehinweise

UK FCDO

OGL v3.0

Beitragen

  1. Repo forken

  2. Einen Branch erstellen (git checkout -b feature/my-feature)

  3. Änderungen vornehmen und testen (python molttravel_server.py)

  4. Einen Pull Request eröffnen

Lizenz

MIT

F
license - not found
Not graded
quality - not tested
F
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • AI marketplace — flights, tours, activities, transport & more via MCP. No auth required.

  • Flight search & booking for AI agents. 400+ airlines, $20-50 cheaper than OTAs.

  • Live flight prices and working booking links for AI agents and travel apps.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/navifare/moltravel-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server