Aviasales

io.github.danyasnovPublished by GitHub account danyasnovv0.1.1Updated Oct 24, 2026

Cheap flight search via Aviasales Data API: fares by route, price calendar, cheapest destinations.

Overview

AI-generated overview

A local MCP server that lets an assistant search cheap flights through the Aviasales Data API: fares by route, price calendars and cheapest destinations.

What you can do
Resolve city or airport names to IATA codes, without a token needed for this step only (search_places). Find the cheapest tickets for a route on a given date or month (search_flights). Show the minimum price per day of a month and the three cheapest days (price_calendar). List the cheapest destinations from a city, with an optional price ceiling (cheapest_destinations).
When to use it
Useful when someone wants to explore budget flight options, compare fares across a month, or find cheap places to fly from a given city, and is fine with cached rather than live prices.
Requirements
Runs locally via npx, so Node.js 22 or newer is needed. A free Travelpayouts API token in the TRAVELPAYOUTS_TOKEN environment variable is required for everything except place lookup. AVIA_CURRENCY optionally sets the price currency (default rub). Network access to the Aviasales Data API.
Before you install
The token is a secret passed by environment variable; keep it out of shared configs. Prices come from an Aviasales search cache roughly 48 hours old, not live search, so the fare must be confirmed via the Aviasales link in the response. The server does not buy or book anything.

Installation

In SourceWeft

  1. Open Aviasales in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

avia-mcp

MCP-сервер для поиска дешёвых авиабилетов через Aviasales Data API (Travelpayouts).

Цены берутся из кэша поисков Aviasales примерно за 48 часов — это не живой поиск. Актуальную цену подтверждает ссылка на Aviasales из ответа. Покупки и бронирования через сервер нет.

Инструменты

ИнструментЧто делает
search_placesIATA-код города или аэропорта по названию. Токен не нужен.
search_flightsСамые дешёвые билеты по маршруту на дату или месяц.
price_calendarМинимальная цена по дням месяца и три самых дешёвых дня.
cheapest_destinationsСамые дешёвые направления из города, с потолком цены.

Токен

Бесплатный токен: travelpayouts.com → «Инструменты» → API. Без токена работает только search_places.

Подключение

Нужен Node.js 22 или новее. Сервер запускается через npx, ставить вручную ничего не надо.

Claude Code:

bash
claude mcp add avia --scope user -e TRAVELPAYOUTS_TOKEN=ваш_токен -- npx -y avia-mcp

Claude Desktop, Cursor и другие клиенты — в конфиге MCP-серверов (для Claude Desktop это claude_desktop_config.json):

json
{  "mcpServers": {    "avia": {      "command": "npx",      "args": ["-y", "avia-mcp"],      "env": { "TRAVELPAYOUTS_TOKEN": "ваш_токен" }    }  }}

Переменные окружения

ПеременнаяПо умолчаниюЧто задаёт
TRAVELPAYOUTS_TOKEN—Токен Travelpayouts.
AVIA_CURRENCYrubВалюта цен.

Разработка

bash
git clone https://github.com/danyasnov/avia-mcp.gitcd avia-mcpnpm installnpm run buildcp .env.example .env   # впишите токен

При запуске из клона сервер читает .env в корне проекта; переменные окружения процесса важнее файла. Подключить локальную сборку:

bash
claude mcp add avia --scope user -- node /путь/к/avia-mcp/dist/index.js

Проверка

bash
npm testnpm run smoke

npm run smoke запускает собранный сервер и вызывает каждый инструмент по разу. Без токена отвечает только search_places, остальные возвращают подсказку про токен.

Лицензия

MIT

Source: README.md at commit fe189af

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.1LatestOct 15, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts