MoltTravel
MoltTravel
1つのMCPサーバー。すべての旅行ツール。
フライト検索、価格比較、ビザ確認、空港検索、 渡航情報の取得——すべて単一のエンドポイントから。
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)なぜ?
旅行データは多数のAPIに散らばっており、それぞれが独自の認証、フォーマット、癖を持っています。MoltTravelはそれらを単一のModel Context Protocolエンドポイントの背後に集約します:
21以上のツール——4つの上流MCPプロバイダー + 6つの組み込みデータセット
静的データはゼロ設定——空港、航空会社、ビザはAPIキー不要で遅延読み込み
スキーマ透過プロキシ——クライアントは実際の上流JSON Schemaをそのまま参照し、上流サーバーが自身の引数を検証
1行で接続——Claude Desktop、Claude Code、Cursor、または任意のMCPクライアントから
Related MCP server: orizn-visa-mcp
クイックスタート
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サーバーは http://localhost:8000/mcp で起動します。これだけです。
クライアントを接続する
claude_desktop_config.json に追加:
{
"mcpServers": {
"molttravel": {
"url": "http://localhost:8000/mcp"
}
}
}.claude/settings.json に追加:
{
"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"})ツール
フライトと価格
ツール | プロバイダー | 説明 |
| Kiwi.com | ルート、日付、搭乗者数、客室クラスでフライトを検索 |
| Navifare | 自然言語のフライト情報を構造化データに解析 |
| Navifare | 複数の予約サイト間でフライト価格を比較 |
体験とアクティビティ
ツール | プロバイダー | 説明 |
| Peek.com | 世界中の30万件以上の認証済みアクティビティを検索 |
| Peek.com | 体験の詳細情報、レビュー、写真を表示 |
| Peek.com | 特定の日付の空き状況と価格を確認 |
| Peek.com | 名前で地域IDを検索 |
| Peek.com | アクティビティのカテゴリとタグを閲覧 |
| Peek.com | 埋め込み可能なアクティビティウィジェットを描画 |
参照データ (組み込み、APIキー不要)
ツール | データセット | 説明 |
| OurAirports | IATAまたはICAOコードで検索 |
| OurAirports | 名前で検索、国または種類でフィルタ |
| OurAirports | 任意の座標から半径内の空港を検索 |
| OpenFlights | IATAまたはICAOコードで検索 |
| OpenFlights | 名前で検索、国または運航状況でフィルタ |
| Passport Index | 2国間のビザ要件を確認 |
| Passport Index | パスポートに対するビザ免除/VOA/eビザの完全な内訳 |
| REST Countries | 首都、通貨、言語、タイムゾーン、人口 |
| UK FCDO | 安全勧告、入国要件、健康に関する警告 |
| UK FCDO | 渡航勧告のあるすべての国を一覧表示 |
| — | 読み込まれたデータセットとレコード数を確認 |
自然言語 (オプション)
ツール | 説明 |
| 旅行の質問なら何でもどうぞ——Geminiが適切なツールにルーティングし、統合された回答を返します |
GEMINI_API_KEYが必要です。例:「来週チューリッヒからローマへの最安フライトと、ビザが必要かどうかを教えて」
仕組み
1. ツールの検出
起動時に、MoltTravelは各上流MCPサーバーに接続して tools/list を呼び出し、検出されたすべてのツールを {provider}_{tool_name} というプレフィックス付きで登録します:
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)ネイティブツール(空港、航空会社、ビザ、国、FCDO)は直接登録されます。
2. スキーマ透過プロキシ
クライアントは各ツールの 元の上流JSON Schema を参照できます——列挙型、ネストされたオブジェクト、$ref、すべて含めて。内部的には、MoltTravelは寛容なPydanticモデル(すべてのフィールドに Any)を使用するため、引数は情報を失うことなくそのまま通過します。上流のMCPサーバーが自身の引数を検証します。
# 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. 遅延データ読み込み
静的データセット(空港、航空会社、ビザ)は、非同期ロックの下で初回使用時にダウンロードされます。起動時のペナルティはなく、フライトツールのみを使用する場合に帯域幅を無駄にしません。
設定
変数 | デフォルト | 説明 |
|
| サーバーポート |
| — |
|
デプロイ
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サーバーは環境変数 PORT を読み取り、0.0.0.0 にバインドします——任意のコンテナプラットフォームでそのまま動作します。開始コマンドを python molttravel_server.py に設定するだけです。
プロジェクト構成
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拡張
MCPプロバイダーを追加する
providers/__init__.py に1行追加して再起動:
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
}ツールは自動的に your_provider_{tool_name} として検出・登録されます。
ネイティブツールを追加する
@server.tool(name="my_tool")
async def my_tool(query: str) -> str:
"""Description shown to MCP clients."""
return "result"データソースとライセンス
データセット | ソース | ライセンス |
空港 | パブリックドメイン | |
航空会社 | ODbL 1.0 | |
ビザ要件 | MIT | |
国情報 | MPL 2.0 | |
渡航勧告 | OGL v3.0 |
コントリビューション
リポジトリをフォーク
ブランチを作成(
git checkout -b feature/my-feature)変更を加えてテスト(
python molttravel_server.py)プルリクエストを開く
ライセンス
This server cannot be installed
Maintenance
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
- FlicenseCqualityCmaintenanceEnables searching for flights (one-way, round-trip, multi-city) and hotels using the Duffel API, with support for filtering by cabin class, passengers, dates, and viewing accommodation reviews.5
- AlicenseAqualityCmaintenanceCheck visa requirements for 39,585 passport-destination pairs in 15 languages. Returns visa type, required documents, application process, and travel tips from 136 official government sources. Free quick checks without API key.51301MIT
- AlicenseAqualityAmaintenanceEnables travel search workflows including airport lookup, route comparison, travel timing guidance, and external booking links with commission-eligible links.5281MIT
- AlicenseNot gradedqualityDmaintenanceProvides real-time flight status, airport weather, delays, cheap flight deals, and TSA wait times without requiring an API key.17MIT
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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