← Все инструкции
Отчёты

Отчёты через ChatGPT: подключение JuraSale

Подключение сайта, разрешения пользователей и создание PDF-отчётов в ChatGPT.

1Можно ли использовать прежний чат?

  1. Да, после настройки и установки приложения JuraSale в ChatGPT откройте чат, где создавали отчёты, и выберите JuraSale через @ в поле сообщения.
  2. Подключение настраивается в аккаунте ChatGPT; одна ссылка на сайт в сообщении не даёт доступа к приватной статистике. Если в этом чате приложение выбрать нельзя, начните новый чат с JuraSale и приложите предыдущий PDF.

2Одноразовая настройка администратором сервера

  1. Откройте «Настройки → Обновление» и установите актуальный релиз. Современный обновлятор JuraSale устанавливает Composer-зависимости и выполняет миграции сам. После успешного обновления вручную повторять эти операции не нужно.
  2. Создание OAuth keys пока не вынесено в админку. Откройте SSH или терминал сервера в ISPmanager от имени владельца файлов сайта, затем перейдите в корень проекта: папку, где находятся artisan, .env и storage. Это не папка public и не каталог служебного deploy-репозитория.
  3. Проверьте storage/oauth-private.key и storage/oauth-public.key. Если оба существуют, пропустите генерацию. Если обоих нет, выполните в корне проекта: /opt/php84/bin/php artisan passport:keys. Команда создаёт пару ключей подписи OAuth-токенов, а не ключ OpenAI. Если есть только один файл или команда выдаёт ошибку, сначала устраните причину; не используйте --force.
  4. В файле .env укажите APP_URL=https://jurasale.com и MCP_ENABLED=true. Затем в той же папке выполните /opt/php84/bin/php artisan config:cache. Ключи сохраняются между обновлениями; не публикуйте и не перегенерируйте их.
  5. Обычные пользователи этих команд не выполняют. После настройки администратор JuraSale управляет разрешениями и подключениями через /admin/mcp.

3Кому можно разрешить MCP

  1. MCP может использовать любой пользователь JuraSale, которому администратор разрешил MCP: глобальная роль администратора не обязательна. По умолчанию разрешение выключено у всех.
  2. В /admin/mcp включите разрешение конкретному пользователю, создайте его отдельное подключение и выберите сайты. Доступ ограничен пересечением обычных прав пользователя и сайтов подключения; одно разрешение MCP не открывает чужие сайты.
  3. Каждый пользователь подключает JuraSale в своём аккаунте ChatGPT и входит под своей учётной записью JuraSale. Доступность собственного MCP-приложения дополнительно зависит от возможностей и правил его аккаунта ChatGPT. Доступ можно отозвать в /admin/mcp.

4Деньги и лимиты

  1. Этот MCP читает уже сохранённую статистику из базы JuraSale. Он не вызывает OpenAI API, не расходует ваш API-баланс OpenAI и не изменяет рекламные бюджеты. Отдельная плата за MCP-вызов в коде JuraSale не предусмотрена.
  2. Генерация отчёта в ChatGPT расходует обычные лимиты или кредиты аккаунта/workspace, где пользователь создаёт отчёт. Если пользователь работает в своём отдельном аккаунте, ваши личные лимиты ChatGPT не используются. Использование MCP не делает работу ChatGPT безлимитной.
  3. Сервер обрабатывает запросы с обычными затратами хостинга. По умолчанию лимит MCP — 60 запросов в минуту на пользователя и 366 дней в одном запросе; это настраиваемые технические ограничения, а не денежные списания.

5Подключение в ChatGPT

  1. В веб-интерфейсе ChatGPT откройте Plugins / приложения, выберите добавление собственного MCP-сервера. Доступность и названия пунктов зависят от аккаунта и workspace.
  2. Введите название JuraSale, адрес https://jurasale.com/mcp и OAuth. Используйте заранее зарегистрированный client (Pre-defined): точный callback из ChatGPT внесите в подключение JuraSale, а его Client ID — в ChatGPT. Client secret отсутствует: это public client с PKCE S256.
  3. Scope: advertising:read; resource: https://jurasale.com/mcp. Войдите своим пользователем JuraSale, подтвердите чтение, выполните сканирование и установите приложение. Если интерфейс требует secret или только DCR/CIMD, этот способ ещё нужно адаптировать; не выбирайте режим без авторизации.

6Первый запрос для сайта

  1. Выберите @JuraSale и попросите: «Покажи мой профиль и доступные сайты». В результате list_sites должен быть домен выбранного сайта. ID сайта берите из ответа, а не из примера документации.
  2. Затем попросите: «Используй JuraSale. Получи Google Ads и Meta Ads для моего сайта отдельно за август и сентябрь 2026 года. Сделай PDF по оформлению предыдущего отчёта. Раздели расходы без НДС, НДС, расчётную сумму с НДС и фактические списания. Недоступные показатели объясни».

7Как используется образец PDF

  1. Прежний PDF задаёт оформление: карточки показателей, общие результаты, сравнение месяцев, зелёные и красные изменения, примечания по НДС. Если файл недоступен модели в этом чате, приложите его снова.
  2. Новые цифры берутся из MCP; цифры предыдущего PDF не переносятся. Шаблон не сохранён внутри JuraSale как автоматический генератор. Сейчас PDF создаёт ChatGPT, кнопка на странице сайта остаётся на будущее.

8Проверка результата и ограничения

  1. Для подключения должны обнаружиться get_profile, list_sites, get_advertising_summary, get_meta_audience, get_meta_platforms и get_ad_billing. Данные сверяйте с дашбордом за те же даты, источники и origin=platform_reported.
  2. Фактические списания, демография, площадки Meta и уникальный охват за месяц пока недоступны. Расчётная сумма с НДС не является фактическим списанием. Недоступное значение — null, не ноль.
  3. 404 может означать выключенный MCP или неустановленный маршрут; 401 — нужна авторизация; отказ или отсутствие сайта — проверьте разрешение пользователя и сайты подключения. Ключи, токены и пароли не отправляйте в чат.
Не отправляйте другим пользователям API-токены, OAuth secrets или JSON-ключ сервисного аккаунта.