Gopaxo

MCP Gopaxo — Подключите ваш ИИ к поисковику поездов, автобусов и самолётов

Публичный Model Context Protocol сервер Gopaxo: подключите Claude, Cursor или вашего ИИ-агента к /api/mcp и сравнивайте поезд, автобус, каршеринг и самолёт на естественном языке.

Доступ защищён токеном : эндпоинт /api/mcp требует персональный Bearer-токен. Запросите его бесплатно через нашу специальную форму. Ответ по e-mail в течение 2 рабочих дней.

Эндпоинт
https://www.gopaxo.com/api/mcp
Транспорт
Streamable HTTP (без состояния)
Версия сервера
gopaxo-mcp@0.1.0

Что такое Model Context Protocol?

Model Context Protocol — открытый стандарт, опубликованный Anthropic в конце 2024 года. Он описывает протокол JSON-RPC 2.0, позволяющий языковой модели вызывать внешние инструменты, обращаться к ресурсам и получать структурированные промпты. Основные клиенты (Claude Desktop, Claude Code, Cursor, VS Code, Cline, Continue…) поддерживают его нативно.

На практике, когда вы просите ассистента «найди мне Paris-Lyon на завтра дешевле 30 €», он вызывает инструмент search_trips нашего сервера, получает структурированный JSON со всеми доступными маршрутами и представляет их в удобочитаемом виде — так же, как на gopaxo.com.

Запросить токен доступа

Доступ к MCP предоставляется через персональный Bearer-токен для защиты наших перевозчиков-партнёров. Токен бесплатный и выдаётся по простому запросу в три шага:

  1. 1

    Заполнить форму

    Имя, рабочий e-mail, организация и описание предполагаемого использования. Запрос отправляется на dev@gopaxo.com.

  2. 2

    Проверка Gopaxo

    Мы рассматриваем заявку, генерируем уникальный токен и добавляем его в реестр авторизованных токенов. Среднее время: менее 2 рабочих дней.

  3. 3

    Получение токена

    Вы получаете токен по e-mail. Вставьте его в заголовок Authorization своего MCP-клиента — подробная конфигурация ниже.

Запросить токен сейчас

Установка

Claude Desktop / Claude.ai

Откройте Настройки → Developer → Edit Config (или вручную ~/Library/Application Support/Claude/claude_desktop_config.json на macOS), затем добавьте:

{
  "mcpServers": {
    "gopaxo": {
      "transport": "http",
      "url": "https://www.gopaxo.com/api/mcp",
      "headers": {
        "Authorization": "Bearer VOTRE_TOKEN_GOPAXO"
      }
    }
  }
}

Перезапустите Claude Desktop — четыре инструмента Gopaxo появятся в меню «Available tools».

Claude Code (CLI)

Одна команда — и MCP добавлен в ваш проект:

claude mcp add --transport http gopaxo https://www.gopaxo.com/api/mcp \
    --header "Authorization: Bearer VOTRE_TOKEN_GOPAXO"

Затем проверьте в Claude Code командой /mcp, чтобы увидеть активные серверы.

Cursor / VS Code

В файле .cursor/mcp.json (Cursor) или в MCP-конфигурации VS Code:

{
  "mcpServers": {
    "gopaxo": {
      "url": "https://www.gopaxo.com/api/mcp",
      "headers": {
        "Authorization": "Bearer VOTRE_TOKEN_GOPAXO"
      }
    }
  }
}

Перезагрузите окно, чтобы агент обнаружил инструменты.

Тестирование через MCP Inspector

Чтобы исследовать сервер без предварительной интеграции, MCP Inspector открывает веб-интерфейс интроспекции:

npx @modelcontextprotocol/inspector https://www.gopaxo.com/api/mcp \
    --header "Authorization: Bearer VOTRE_TOKEN_GOPAXO"

Инструмент показывает список tools, их JSON-Schema и позволяет выполнять тестовые вызовы.

Программное использование — TypeScript

Через официальный SDK @modelcontextprotocol/sdk:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const transport = new StreamableHTTPClientTransport(
  new URL("https://www.gopaxo.com/api/mcp"),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${process.env.GOPAXO_MCP_TOKEN}`,
      },
    },
  },
);
const client = new Client({ name: "my-agent", version: "0.1.0" });
await client.connect(transport);

// Find the cheapest Paris → Lyon for tomorrow
const trips = await client.callTool({
  name: "search_trips",
  arguments: {
    from: "Paris",
    to: "Lyon",
    departureDate: "2026-04-25",
    passengers: "adulte",
  },
});
console.log(trips.structuredContent);

Предоставляемые инструменты

Четыре инструмента покрывают весь поток Gopaxo — от распознавания города до предложения маршрута с ценой. Все операции только для чтения (никаких бронирований на стороне MCP — финализация происходит на сайте партнёра-перевозчика по возвращённой ссылке).

autocomplete_cities

read-onlyidempotentopen-world

Resolve a free-text city query to a list of Gopaxo / Tictactrip stops (city groups). Returns the 1-7 best matches, each with a human-readable label, an ISO-2 country code, and the gpuid needed for precise follow-up calls. Use this tool before `search_trips` whenever the user input is ambiguous or you need the canonical name.

Показать JSON-Schema параметров
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "Free-text search, e.g. 'paris', 'bordeaux', 'london', 'bcn'. The Tictactrip autocomplete is fuzzy and accepts accents and partial names."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

search_trips

read-onlyopen-world

Compare all available outbound (and optional return) trips between two locations on a given date, across train, bus, carpool and plane partners. Returns normalised trips with price in euros, duration, provider, stops and a partner `redirectionLink` to finalise the booking.

Показать JSON-Schema параметров
{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "description": "Origin city or station name (e.g. 'Paris', 'Lyon', 'Londres'). Prefer the label returned by the autocomplete tool for exact matches."
    },
    "to": {
      "type": "string",
      "description": "Destination city or station name."
    },
    "fromId": {
      "type": "string",
      "description": "Optional Tictactrip gpuid for the origin. When absent, the server resolves it via autocomplete."
    },
    "toId": {
      "type": "string",
      "description": "Optional Tictactrip gpuid for the destination."
    },
    "departureDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date of the outbound trip in ISO 8601 (YYYY-MM-DD). Example: '2026-05-03'."
    },
    "returnDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Optional return date (YYYY-MM-DD). When provided, the response includes a `returnTrips` array. Omit for a one-way search."
    },
    "passengers": {
      "type": "string",
      "description": "Comma-separated passenger types. Allowed values: adulte, jeune, senior, enfant. Defaults to 'adulte' (1 adult).",
      "default": "adulte"
    }
  },
  "required": [
    "from",
    "to",
    "departureDate"
  ],
  "additionalProperties": false
}

price_calendar

read-onlyidempotentopen-world

Return the cheapest price per day for a given origin/destination around a pivot date (±3 to ±5 days, as 3, 5, 7 or 11-day windows). Useful when the user wants to know if moving their trip by a day or two changes the price.

Показать JSON-Schema параметров
{
  "type": "object",
  "properties": {
    "from": {
      "type": "string",
      "description": "Origin label."
    },
    "to": {
      "type": "string",
      "description": "Destination label."
    },
    "fromId": {
      "type": "string",
      "description": "Optional origin gpuid."
    },
    "toId": {
      "type": "string",
      "description": "Optional destination gpuid."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Centre date (YYYY-MM-DD)."
    },
    "days": {
      "type": "integer",
      "minimum": 3,
      "maximum": 11,
      "default": 7,
      "description": "Total window size centred on `date` (3, 5, 7 or 11 days)."
    },
    "passengers": {
      "type": "string",
      "default": "adulte",
      "description": "Passenger composition (same format as search_trips)."
    }
  },
  "required": [
    "from",
    "to",
    "date"
  ],
  "additionalProperties": false
}

popular_destinations

read-onlyidempotentopen-world

List the most popular destinations from (or to) a given city, using Gopaxo's curated Tictactrip top-cities dataset. Use this for inspiration when the user has only a starting city in mind.

Показать JSON-Schema параметров
{
  "type": "object",
  "properties": {
    "uniqueName": {
      "type": "string",
      "description": "Tictactrip `unique_name` of the pivot city (for example 'paris', 'lyon', 'berlin'). Use autocomplete_cities to resolve."
    },
    "direction": {
      "type": "string",
      "enum": [
        "from",
        "to"
      ],
      "default": "from",
      "description": "Whether to list popular destinations *from* the city ('from') or popular origins *to* the city ('to')."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 12,
      "description": "Max number of destinations to return (1-50)."
    }
  },
  "required": [
    "uniqueName"
  ],
  "additionalProperties": false
}

Примеры использования на естественном языке

  • «Найди самый дешёвый поезд Paris → Bordeaux на следующую пятницу.»
  • «Сравни предложения Lyon-Barcelona на выходные, поезд и автобус.»
  • «Какие 10 самых популярных направлений из Lyon?»
  • «Дай минимальную цену Paris-Marseille на ближайшие 7 дней.»
  • «Найди round-trip Paris-Milan на TGV, отправление во вторник, возвращение в воскресенье, 2 взрослых.»
  • «Есть ли прямой автобус Lille-Amsterdam завтра? Скажи цену.»

Самые частые вопросы о Gopaxo

Что такое MCP (Model Context Protocol)?

Model Context Protocol — открытый стандарт, опубликованный Anthropic в конце 2024, позволяющий языковой модели (Claude, ChatGPT, Gemini, Mistral и т. д.) структурированно вызывать внешние инструменты.

Как Gopaxo использует MCP?

Gopaxo предоставляет MCP-сервер по адресу /api/mcp через Streamable HTTP, защищённый Bearer-токеном. Доступны четыре инструмента: autocomplete_cities, search_trips, price_calendar, popular_destinations.

Как получить токен доступа?

Перейдите на /mcp/request-token и заполните форму. Команда Gopaxo рассматривает запрос и отправляет токен по email в течение 2 рабочих дней. Бесплатно.

Как передать токен MCP-клиенту?

Токен помещается в заголовок Authorization: Bearer <token>. Claude Desktop, Cursor и VS Code принимают поле headers в их MCP-конфигурации.

Какие MCP-клиенты совместимы?

Любой клиент, поддерживающий транспорт Streamable HTTP MCP: Claude Desktop, Claude Code, Cursor, VS Code, Cline, Continue, а также Claude Agent SDK.

Это бесплатно?

Да. Gopaxo — бесплатный поисковик, а доступ через MCP следует тем же правилам: без сервисных сборов, без наценок. Токен выдаётся бесплатно.

Какие данные возвращает MCP-сервер?

Каждый вызов возвращает структурированный JSON. search_trips возвращает цену, длительность, время, станции, пересадки, перевозчика, CO₂-след и ссылку партнёра.

Что, если токен неверный?

Сервер возвращает 401 Unauthorized с заголовком WWW-Authenticate, указывающим, где запросить токен.

Можно ли использовать MCP в коммерческом продукте?

Да, соблюдая наши Условия использования и заметно указывая «powered by Gopaxo». Цены отображаются как есть.

Как быстро протестировать MCP-сервер?

Откройте MCP Inspector через npx @modelcontextprotocol/inspector и направьте на /api/mcp с вашим токеном.

Нужен выделенный доступ или поддержка для разработчиков?

Напишите нам на contact@gopaxo.com: интеграция продукта, расширенные rate limits, ко-маркетинг или просто отзыв об MCP.

Связаться с нами