# MCP-сервер

Подключите SkyLink к Claude Desktop, Cursor или любому MCP-клиенту: каждый эндпоинт v3.1 доступен как инструмент для ИИ.



Подключите SkyLink к любому клиенту &#x2A;*Model Context Protocol (MCP)** — Claude Desktop, Cursor, Cline, Windsurf и другим — и откройте весь набор данных SkyLink v3.1 в виде инструментов, которые может вызывать ваша модель. Разворачивать какие-либо бинарные файлы не нужно.

После подключения запросы на естественном языке, например &#x2A;«Какой [METAR](https://en.wikipedia.org/wiki/METAR) сейчас в KJFK?»&#x2A; или &#x2A;«Оцени блочное время из SFO в JFK на 737»*, автоматически направляются к нужным эндпоинтам SkyLink. Ваш ключ передаётся в заголовке транспорта и никогда не встраивается в промпты.

Настройка MCP различается для двух каналов, поэтому выберите свой: <ApiProviderToggle />

## Конфигурация [#configuration]

<ForProvider only="direct">
  MCP-сервер SkyLink — это **эндпоинт streamable HTTP**: `POST https://data.skylinkapi.com/mcp`, без сохранения состояния, с аутентификацией через тот же заголовок `x-api-key`, что и REST API. Большинство клиентов принимают URL и объект заголовков:

  ```json
  {
    "mcpServers": {
      "skylink": {
        "url": "https://data.skylinkapi.com/mcp",
        "headers": { "x-api-key": "YOUR_API_KEY" }
      }
    }
  }
  ```

  Замените `YOUR_API_KEY` лицензионным ключом, полученным при покупке через [Polar](https://polar.sh), — см. [Начало работы](/docs/getting-started).

  ### Поля конфигурации [#config-fields]

  | Поле                  | Значение                          | Описание                                                 |
  | --------------------- | --------------------------------- | -------------------------------------------------------- |
  | `url`                 | `https://data.skylinkapi.com/mcp` | MCP-эндпоинт streamable HTTP                             |
  | Заголовок `x-api-key` | Ваш лицензионный ключ             | Аутентифицирует вызовы инструментов в рамках вашей квоты |
</ForProvider>

<ForProvider only="rapidapi">
  На маркетплейсе сервер размещён в **MCP Hub RapidAPI** и доступен через stdio-мост `mcp-remote`. Добавьте следующий блок в конфигурационный файл вашего MCP-клиента, заменив `YOUR_RAPIDAPI_KEY` своим ключом со страницы [Начало работы](/docs/getting-started):

  ```json
  {
    "mcpServers": {
      "RapidAPI Hub - SkyLink API": {
        "command": "npx",
        "args": [
          "mcp-remote",
          "https://mcp.rapidapi.com",
          "--header",
          "x-api-host: skylink-api.p.rapidapi.com",
          "--header",
          "x-api-key: YOUR_RAPIDAPI_KEY"
        ]
      }
    }
  }
  ```

  **Важно:** требуется Node.js &#x2A;*18+** (для `npx mcp-remote`). При первом подключении `mcp-remote` загружается по требованию.

  ### Поля конфигурации [#config-fields-1]

  | Поле                   | Значение                     | Описание                                                 |
  | ---------------------- | ---------------------------- | -------------------------------------------------------- |
  | `command`              | `npx`                        | Запускает удалённый MCP-мост                             |
  | `args[1]`              | `https://mcp.rapidapi.com`   | Эндпоинт MCP Hub RapidAPI                                |
  | Заголовок `x-api-host` | `skylink-api.p.rapidapi.com` | Направляет вызовы инструментов в RapidAPI-прокси SkyLink |
  | Заголовок `x-api-key`  | Ваш ключ RapidAPI            | Аутентифицирует вызовы инструментов в рамках вашей квоты |
</ForProvider>

| Клиент                 | Куда вставлять                                                                             |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| **Claude Desktop**     | Settings → Developer → Edit Config → `mcpServers` → перезапустите                          |
| **Cursor**             | Settings → MCP → Add MCP Server → Manual config → перезапустите                            |
| **Другие MCP-клиенты** | Используйте расположение конфигурационного файла MCP вашего клиента — структура JSON та же |

## Ответ [#response]

MCP не возвращает единое тело JSON, как REST, — сервер предоставляет **инструменты**, которые может вызывать модель. Каждый инструмент соответствует эндпоинту SkyLink. Вызовы инструментов возвращают структурированный JSON, идентичный ответам соответствующих эндпоинтов REST API, описанным в этом справочнике.

<ForProvider only="direct">
  Инструменты **фильтруются по вашему тарифу** — вы видите только те инструменты, которые может вызывать ваш ключ, поэтому ассистент не потратит ход на то, что ваш тариф не включает:

  | Тариф        | Доступно инструментов      |
  | ------------ | -------------------------- |
  | Basic        | 46                         |
  | Pro          | 52 (+ история за 90 дней)  |
  | Ultra / Mega | 58 (+ история за 365 дней) |

  Имена инструментов формируются из базовой операции, например `search_airport_airports_search_get` или `ultra_flights_ultra_history_flights_get`. Вызовите `tools/list`, чтобы увидеть точный набор, доступный вашему ключу. Запрос инструмента за пределами вашего тарифа возвращает `MCP error -32602: Tool <name> not found` — такой инструмент просто не регистрируется для вашего ключа, а не завершается ошибкой в момент вызова.

  ### Прямой вызов [#calling-directly]

  Протокол обрабатывает ваш клиент, но для тестирования можно так:

  ```bash
  curl -X POST "https://data.skylinkapi.com/mcp" \
    -H "x-api-key: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json, text/event-stream" \
    -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
  ```

  Ответы приходят в виде server-sent events (`event: message` / `data: {...}`).

  |                            |                                                                                          |
  | -------------------------- | ---------------------------------------------------------------------------------------- |
  | Заголовок `Accept`         | **Должен** включать и `application/json`, и `text/event-stream`, иначе вы получите `406` |
  | Пакетные запросы JSON-RPC  | Не поддерживаются — отправляйте один запрос на вызов (`400`)                             |
  | `GET` / `DELETE` на `/mcp` | `405 Method not allowed`                                                                 |
  | Отсутствует API-ключ       | `401 missing_api_key`                                                                    |
</ForProvider>

<ForProvider only="rapidapi">
  Примеры имён инструментов, доступных через хаб:

  | Инструмент (примеры) | Возможность SkyLink                               |
  | -------------------- | ------------------------------------------------- |
  | `weather.metar`      | Текущий METAR по коду ICAO                        |
  | `airports.search`    | Поиск аэропортов по тексту/местоположению         |
  | `flight_status`      | Статус рейса в реальном времени от гейта до гейта |
  | `adsb.aircraft`      | Позиции ADS-B в реальном времени                  |
  | `carbon.estimate`    | Оценка CO₂ по методике ICAO                       |
  | `ml.flight_time`     | ML-прогноз блочного времени                       |
  | `charts`             | Аэронавигационные карты (схемы аэродрома)         |
  | `notams`             | Поиск NOTAM                                       |
  | `history.flights`    | Исторические данные ADS-B (зависит от тарифа)     |
</ForProvider>

Точные имена инструментов и схемы параметров отображаются в вашем MCP-клиенте после успешного подключения.

## Клиентские типы [#client-types]

<DocClientTypes id="v31/mcp-server/config-types" />

## Интеграция [#integration]

Пример ниже собирает объект конфигурации MCP из переменных окружения, чтобы его можно было вставить в Claude Desktop или Cursor.

<ForProvider only="direct">
  <DocExample id="v31/mcp-server/setup-fetch-direct" />
</ForProvider>

<ForProvider only="rapidapi">
  <DocExample id="v31/mcp-server/setup-fetch" />
</ForProvider>

### Примечания по реализации [#implementation-notes]

**Хранение ключа.** Храните ключ в связке ключей ОС или в `.env` — конфигурация MCP передаёт его через заголовок, а не вставляет в текст переписки.

**Важно:** каждый MCP-запрос учитывается в вашем тарифе так же, как прямой REST-запрос, — включая `initialize` и `tools/list`, а не только `tools/call`. См. [Ограничения частоты запросов](/docs/rate-limits).

**Инструменты, зависящие от тарифа.** Исторические данные [ADS-B](https://www.faa.gov/air_traffic/technology/adsb), вебхуки и другие премиальные эндпоинты подчиняются тем же ограничениям тарифа, что и в REST, — слой MCP не обходит квоты.

<ForProvider only="direct">
  **Устранение неполадок.** Если инструменты не появляются, убедитесь, что заголовок `x-api-key` передаётся, а URL заканчивается на `/mcp`, перезапустите клиент после изменения конфигурации и проверьте, что нужные инструменты входят в ваш тариф.
</ForProvider>

<ForProvider only="rapidapi">
  **Устранение неполадок.** Если инструменты не появляются, убедитесь, что установлен Node 18+, перезапустите клиент после изменения конфигурации и проверьте, что передаются оба заголовка — `x-api-host` и `x-api-key`.
</ForProvider>

## Ответы с ошибками [#error-responses]

Сбои подключения MCP отображаются в интерфейсе клиента (ошибки аутентификации или завершение процесса stdio-моста). HTTP-ошибки, возвращаемые в результатах инструментов, описаны в разделе [Обработка ошибок](/docs/errors) — их структура совпадает с прямыми REST-запросами.

***

См. также: [Начало работы](/docs/getting-started) · [Обзор API v3.1](/docs/v31/overview) · [Ограничения частоты запросов](/docs/rate-limits)
