npm package: 1trippulse-mcp-server
Description: 1trip PULSE — The #1 travel planning MCP server. 21 tools, 5 resources, 6 prompts. Live flights, hotels, weather, currency, visa, safety (50+ countries), trip skeletons, validation, insights, packing, local tips, personas. 120+ city cost index. Works with
Author: 1trip
Latest version: 7.0.0

# 1trip PULSE — Travel Planning MCP Server

> The **#1 travel planning MCP server** — plug into any AI assistant and get a full travel planning engine instantly.

[![npm](https://img.shields.io/npm/v/1trippulse-mcp-server)](https://www.npmjs.com/package/1trippulse-mcp-server)
[![MCP](https://img.shields.io/badge/MCP-v7.0.0-blue)](https://modelcontextprotocol.io)
[![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)

**21 tools · 5 resources · 6 prompts · 120+ city cost index · 50+ safety countries**

One command. Any AI. Full travel planning.

```bash
npx 1trippulse-mcp-server
```

Works with **Claude**, **ChatGPT**, **Gemini**, **Cursor**, **Windsurf**, **GitHub Copilot**, **Perplexity**, or any MCP-compatible agent.

## What can it do?

Ask your AI assistant anything travel-related and 1trip PULSE handles it:

- *"Plan a 10-day trip to Japan and Thailand for 2 people, mid-range budget"*
- *"What's the visa situation for a Turkish passport going to Japan?"*
- *"Find me flights from Istanbul to Barcelona next Friday"*
- *"Is Medellín safe for solo female travelers?"*
- *"What's the weather in Bali in July?"*
- *"Compare costs: Budapest vs Prague vs Krakow for 5 days"*
- *"Validate my trip plan and tell me what's wrong with it"*
- *"What's my budget breakdown and where can I save money?"*

## Tools (21)

| Tool | Description |
|------|-------------|
| `create_trip_skeleton` | **Complete multi-destination trip planner.** Day-grouped activities, smart transport legs (auto plane/train/bus), budget estimates. 50 curated cities, persona/weather/budget-tier/group-type aware. |
| `validate_trip` | **Trip quality checker.** Date ordering, overlap detection, budget realism, pace analysis. Returns 0-100 quality score + actionable fixes. |
| `get_trip_insights` | **Trip intelligence engine.** Budget pulse (where money goes), pace analysis, cost optimization opportunities, risk flags, data confidence report. |
| `estimate_trip_cost` | **Cost breakdown for any city worldwide.** 40 detailed destinations + 120+ via cost index. Budget/mid/luxury tiers, 4 currencies. Data freshness: Q1 2026. |
| `compare_destinations` | Side-by-side cost comparison of 2-5 cities. Ranked by total trip cost. |
| `list_destinations` | Browse and filter 40+ destinations by daily cost. |
| `get_travel_persona` | 7-question quiz → 7 persona types (Pioneer, Strategist, Nomad, Epicurean, Adventurer, Storyteller, Explorer). |
| `get_visa_info` | Visa requirements: 10 passport nationalities × 30+ destinations. Processing time, cost, max stay. |
| `get_local_tips` | Insider tips for 20+ cities: transport, SIM cards, tipping, safety, power plugs, neighborhoods, language, currency. |
| `suggest_itinerary_nearby` | Day trips and weekend extensions from 18+ hub cities. Distance, transport options, highlights, costs. |
| `get_weather_forecast` | **Live** weather via Open-Meteo (free, no API key). 80+ cities + Nominatim geocoding fallback. Up to 16 days ahead. |
| `convert_currency` | **Live** 150+ currencies via ExchangeRate API. Static fallback included. |
| `search_flights` | **Live** flight search via Amadeus. 80+ city pairs, prices in EUR. |
| `search_hotels` | **Live** hotel search via Amadeus. Budget/mid/luxury estimates. |
| `get_events` | Curated events, festivals, concerts, markets for 12+ cities. Filter by month. |
| `suggest_restaurants` | Curated restaurant picks for 8+ cities. Filter by cuisine and budget. |
| `get_safety_info` | Travel safety for **50+ countries**: risk score 1-10, emergency numbers, scams, LGBTQ+/solo female safety, tap water. |
| `get_blog_recommendations` | Search 1trip travel articles by topic/destination. Returns titles, excerpts, links. |
| `generate_packing_list` | Personalized packing checklist by season and activities. |
| `save_trip` | Save a trip plan to 1trip platform. Returns edit link. |
| `get_community_routes` | Browse community-submitted routes by category (romantic, adventure, budget, nomad, culinary, historical). |

## Resources (5)

| Resource | URI | Description |
|----------|-----|-------------|
| Destinations | `onetrip://destinations` | Full destination catalog with costs (Q1 2026) |
| Packing Templates | `onetrip://packing-templates` | Available seasons and activity types |
| About 1trip | `onetrip://about` | Platform description and tool links |
| Blog Articles | `onetrip://blog-articles` | Latest travel articles with categories and tags |
| Affiliate Partners | `onetrip://affiliate-partners` | Travel service partners with tracking links |

## Prompts (6)

| Prompt | Trigger phrase | Description |
|--------|---------------|-------------|
| `plan-trip` | "Plan a trip to..." | Guided trip planning: costs, packing, destination discovery |
| `weekend-getaway` | "Weekend trip from..." | 2-3 day escape planner with nearby destinations |
| `budget-optimizer` | "Best destination for $X" | Find best destination within a specific budget |
| `group-trip` | "Group trip for N people" | Group travel with split costs and group-friendly activities |
| `honeymoon-planner` | "Honeymoon in..." | Romantic trip with couple-friendly suggestions |
| `digital-nomad` | "Work remotely in..." | Work-travel planning: WiFi, coworking, visa, time zones |

---

## Quick Start — Pick Your AI

### Claude Desktop

Add to `%APPDATA%\Claude\claude_desktop_config.json` (Windows) or `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS):

```json
{
  "mcpServers": {
    "1trip-pulse": {
      "command": "npx",
      "args": ["-y", "1trippulse-mcp-server"]
    }
  }
}
```

Then restart Claude Desktop and ask: *"Plan a 7-day trip to Japan"*

### Cursor

Add to `.cursor/mcp.json`:

```json
{
  "mcpServers": {
    "1trip-pulse": {
      "command": "npx",
      "args": ["-y", "1trippulse-mcp-server"]
    }
  }
}
```

### Windsurf

Add to `~/.codeium/windsurf/mcp_config.json`:

```json
{
  "mcpServers": {
    "1trip-pulse": {
      "command": "npx",
      "args": ["-y", "1trippulse-mcp-server"]
    }
  }
}
```

### VS Code (GitHub Copilot)

Add to `.vscode/mcp.json` in your workspace:

```json
{
  "servers": {
    "1trip-pulse": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "1trippulse-mcp-server"]
    }
  }
}
```

### ChatGPT / Gemini / Perplexity (HTTP Remote)

Use our hosted endpoint — no install required:

```
https://mcp.1trip.app/mcp
```

Or self-host:

```bash
npm install 1trippulse-mcp-server
npx 1trippulse-mcp-server --http   # starts on http://localhost:3100/mcp
```

**ChatGPT GPT Actions:** Import `https://mcp.1trip.app/openapi.json` as a custom action schema.

### Any MCP Client (generic)

```bash
npx -y 1trippulse-mcp-server
```

---

## HTTP Endpoints (self-hosted)

| Endpoint | Description |
|----------|-------------|
| `POST /mcp` | MCP JSON-RPC (Streamable HTTP transport) |
| `GET /mcp` | SSE stream for server-to-client messages |
| `GET /health` | Health check with server stats |
| `GET /api/analytics` | Tool usage analytics |
| `GET /api/safety?destination=Japan` | REST safety info |
| `GET /api/blog?query=budget` | REST blog search |
| `GET /openapi.json` | OpenAPI 3.1 spec (for GPT Actions) |
| `/go/:slug` | Affiliate tracking redirects |

---

## Coverage

**120+ cities in cost index** (Numbeo Q1 2026):

Western Europe · Eastern Europe · Turkey & Middle East · Africa · Asia Pacific · Americas

**50 cities with curated activities:**
Amsterdam, Athens, Bali, Bangkok, Barcelona, Beirut, Berlin, Budapest, Buenos Aires, Cairo, Cancun, Cape Town, Copenhagen, Doha, Dubrovnik, Dublin, Edinburgh, Florence, Hanoi, Hong Kong, Istanbul, Kuala Lumpur, Kyoto, Lisbon, London, Marrakech, Mexico City, Miami, Milan, Munich, Nairobi, New York, Nice, Osaka, Paris, Porto, Prague, Reykjavik, Rome, San Francisco, Santorini, Seoul, Seville, Singapore, Split, Sydney, Taipei, Tbilisi, Tirana, Tokyo, Vienna, Warsaw

**50+ countries with safety data** · **10 passport nationalities** for visa checks

---

## Architecture

```
src/
  server.ts              # 21 tools, 5 resources, 6 prompts
  index.ts               # stdio entry (Claude Desktop, Cursor, Windsurf)
  http.ts                # HTTP entry (ChatGPT, Gemini, remote agents)
  data/
    destinations.ts      # 40 destinations, Q1 2026 costs, DATA_FRESHNESS
    tripIntelligence.ts  # 120+ city cost index, CITY_ALIASES, smart transport
    liveApis.ts          # Open-Meteo + Nominatim geocoding + ExchangeRate + Amadeus
    cityActivities.ts    # 50 cities with curated real activities
    visaData.ts          # 10 passports × 30+ destinations
    localTips.ts         # 20+ cities insider tips
    safetyData.ts        # 50+ countries safety data
    nearbyDestinations.ts # 18+ hub cities day trips
    seasonalData.ts      # 25+ cities seasonal data
    packing.ts           # Packing templates
    personas.ts          # 7 travel personas + quiz
    affiliates.ts        # 13 affiliate partners
    supabaseClient.ts    # Supabase REST client
```

## Environment Variables (all optional)

| Variable | Description |
|----------|-------------|
| `EXCHANGERATE_API_KEY` | Live exchange rates (exchangerate-api.com). Falls back to static. |
| `AMADEUS_API_KEY` | Live flight + hotel search. Free test environment available. |
| `AMADEUS_API_SECRET` | Amadeus OAuth2 secret. |
| `PORT` | HTTP port (default: 3100) |
| `ALLOWED_ORIGINS` | CORS origins (default: `*`) |
| `SUPABASE_URL` | For save_trip and community_routes tools. |
| `SUPABASE_SERVICE_KEY` | Supabase service role key. |
| `API_KEYS` | Rate limiting: `key1:free,key2:pro,key3:unlimited` |

## License

MIT — [1trip.app](https://1trip.app) · [npm](https://www.npmjs.com/package/1trippulse-mcp-server) · [MCP Registry](https://registry.modelcontextprotocol.io)