Кейс: дашборд с аналитикой для блога на серверных скриптах через MCP

Кейс: дашборд с аналитикой для блога на серверных скриптах через MCP

Кейс: как сделать для своего блога на uCoz дашборд с аналитикой, которой нет в панели управления. Всё собрал ИИ-агент по сообщениям в чате, через MCP uCoz, «Серверные скрипты» и uAPI.

У каждой записи в блоге на uCoz есть счётчик просмотров и комментарии. А общей картины нет. Какие записи читают лучше всего, какие старые до сих пор приводят людей, где читатели задают вопросы и дождались ли ответа, кто регистрируется и возвращается ли потом. Чтобы это узнать, пришлось бы открывать записи по одной.

Такой экран можно собрать самому. Данные блога отдаёт uAPI. В «Серверных скриптах» работает ваш собственный серверный код: он сам забирает свежие данные, хранит историю в базе MySQL и показывает всё на отдельной странице. Писать этот код не нужно, достаточно объяснить ИИ-агенту, что вы хотите видеть.

В этом кейсе покажем, как за 7 промптов сделать дашборд для своего блога, на примере официального блога uCoz. В нём есть сводка, топ записей, обсуждения, пользователи, рубрики, карточка каждой записи и уведомления в Telegram. Сам блог при этом не изменился: дашборд только читает его данные. Промпты идут ниже по порядку, вы можете скопировать их и отправить своему агенту, заменив адреса на свои.

Рис. 1. Сводка uCoz Blog Dashboard: главные цифры блога, просмотры по годам публикации и самые читаемые записи.
Рис. 1. Сводка блога на одном экране: просмотры, комментарии, пользователи, просмотры по годам публикации и самые читаемые записи.

Что внутри дашборда

Раздел «Сводка»
СводкаГлавные цифры блога на одном экране.
Раздел «Записи»
ЗаписиВсе записи блога: поиск, рубрики, сортировка.
Карточка записи
Карточка записиПросмотры, место в рубрике, комментарии.
Раздел «Топ материалов»
Топ материаловЗа всё время, прирост, тренды, вечнозелёные, просевшие.
Раздел «Обсуждения»
ОбсужденияЧто обсуждают, кто пишет чаще всех, как отвечает команда.
Раздел «Пользователи»
ПользователиНовые регистрации и кто вернулся после них.
Раздел «Ритм публикаций»
Ритм публикацийВ какие дни и часы выходят записи.
Раздел «Рубрики»
РубрикиКакие темы читают и где давно не было записей.
Раздел «Уведомления»
УведомленияTelegram-бот: что и когда присылать.

1. Подготовка к работе

Понадобится:

  • Блог на uCoz. Отсюда дашборд берёт данные. Сам блог он только читает: записи, шаблоны и настройки остаются как были.
  • Сайт на uCoz с услугой «Серверные скрипты». В нём работает собственный серверный код на PHP, Node.js или Python, с базой данных MySQL и задачами по расписанию. Здесь будет жить дашборд. Мы взяли для него отдельный сайт, чтобы блог вообще не трогать. Услугу включают в панели управления: агент проверит, подключена ли она, но включить её за вас не сможет.
  • ИИ-агент, которому вы ставите задачи в чате. У нас был Claude Code.
  • MCP uCoz. Через него агент создаёт файлы дашборда на сайте, базу данных и задачи по расписанию.
  • Ключ uAPI блога только для чтения. По нему дашборд забирает записи, комментарии и пользователей. Изменить что-то в блоге этим ключом нельзя. Ключ хранится на сервере и на страницах не показывается.

Как подключить агента к сайту, рассказано на странице MCP uCoz.

Ещё агенту понадобится скилл «Разработка серверных скриптов для сайта». В нём собраны правила и проверенные решения для этой услуги: где хранить ключи, когда делать резервные копии, как проверять результат на живом сайте.

Разработка серверных скриптов для сайта

Скилл для запуска своего кода на сайте uCoz через MCP: приложения на PHP, Node.js и Python, базы MySQL и задачи по расписанию.

Скачать скилл

2. Идея: что показать администратору

Начали не с кода. Сначала агент должен был разобраться, какие данные блога вообще доступны и что из них пригодится тому, кто блог ведёт.

Промпт 1. Придумать, что показать администратору

У меня блог на uCoz: https://ваш-блог.ucoz.ru. Записей в нём много, комментариев и пользователей тоже. Но как администратор я почти ничего про него не знаю: что читают прямо сейчас, какие старые записи до сих пор приносят просмотры, где читатели спорят и ждут ответа, кто регистрируется и возвращается ли потом.

Изучи, какие данные блога можно получить через uAPI:
— записи: название, рубрика, дата, просмотры, число комментариев;
— комментарии: текст, автор, дата, ответы на них и кто ответил;
— пользователи: дата регистрации, группа, последний визит, аватар;
— рубрики и сколько в них записей.
Сделай несколько пробных запросов ключом только для чтения и посмотри, что реально приходит в ответ, а не только что написано в документации.

Предложи дашборд для администратора: какие разделы, какие цифры и графики на каждом и на какой мой вопрос отвечает каждый блок.
Отдельно скажи, чего uAPI не даёт напрямую, например просмотров за вчера или за неделю, и как это всё-таки посчитать.
Прикинь, как часто можно забирать данные, чтобы не нагружать блог.

Пока только план. Ничего не создавай и блог не трогай.

Агент разобрал, что отдаёт блог, и предложил разделы: сводка, список записей, топ материалов, обсуждения, пользователи, ритм публикаций и рубрики.

Одна деталь сразу повлияла на устройство дашборда. Блог знает, сколько всего раз прочитана запись, но не знает, сколько из этого пришлось на вчера. Поэтому дашборд будет сам раз в час записывать просмотры каждой записи, и цифры за сутки и неделю начнут копиться со дня запуска.

3. Основа: данные и сводка

Главное правило проекта: блог не трогать. Поэтому дашборд собирали на отдельном сайте, а из блога только читали данные.

Промпт 2. Собрать основу: данные и сводку

Делаем «uCoz Blog Dashboard» на моём отдельном сайте https://ваш-дашборд.ucoz.net, там подключены «Серверные скрипты». Работай по скиллу «Разработка серверных скриптов для сайта».

Главное правило: блог https://ваш-блог.ucoz.ru только читаем. Никаких правок шаблонов, записей и настроек блога. Данные берём через uAPI ключом только для чтения. Ключ храни на сервере, в коде страниц его быть не должно.

Сборщик данных:
— заведи базу MySQL и задачу по расписанию раз в 10 минут;
— при первом запуске загрузи все записи, рубрики и всю историю комментариев, дальше подтягивай только новое;
— раз в час сохраняй снимок просмотров каждой записи: из разницы снимков потом считаются просмотры за сутки, неделю и месяц;
— последние регистрации пользователей тоже обновляй сам;
— если uAPI не ответил, не затирай старые данные, просто попробуй в следующий раз.

Первый экран — «Сводка»:
— просмотры за всё время, комментарии и пользователи, длинные числа коротко: «14,6 млн»;
— график просмотров по годам публикации: записи какого года читают лучше всего;
— самые читаемые записи за всё время со ссылкой в блог;
— прирост за сутки показывай, только когда снимков накопилось на полные сутки, а до этого пиши, с какого дня идёт счёт.

Доступ: открывать дашборд могут только администраторы моего сайта, через обычный вход uCoz, без отдельного пароля. E-mail, IP и телефоны читателей не сохраняй вообще.
Проверь всё в браузере и пришли ссылку.

Агент завёл базу данных и настроил сборщик: задачу, которая сама запускается каждые 10 минут. При первом запуске он загрузил записи, рубрики и всю историю комментариев, а дальше берёт только новое. Раз в час сборщик запоминает просмотры каждой записи, и из этих снимков потом считаются цифры за сутки и неделю.

Первым экраном стала сводка, её видно на рис. 1. Открыть дашборд может только администратор сайта после обычного входа, личные данные читателей не хранятся. В блоге за всё время не поменялось ничего.

4. Оформление в стиле uCoz

Данные пошли, теперь дашборду нужен был свой вид. Хотелось, чтобы он смотрелся частью uCoz, а не чужой админкой.

Промпт 3. Сделать дизайн как в панели uCoz

Хочу, чтобы дашборд выглядел как родная часть uCoz, а не как сторонняя админка.
Возьми за образец панель управления uCoz:
— тёмная шапка с логотипом uCoz и названием «uCoz Blog Dashboard», справа переключатель светлой и тёмной темы;
— белое меню слева с иконками разделов, активный раздел подсвечен. Внизу меню аватар или инициалы вошедшего администратора, его имя и кнопка «Выйти»;
— светлый серый фон и белые карточки со скруглёнными углами и мягкой тенью;
— фирменный синий для кнопок, ссылок и графиков, без кислотных цветов;
— шрифт компактный, как в панели. Крупные цифры только в главных карточках;
— иконки из готового набора с одинаковой толщиной линий, самодельные не рисуй. У рубрики, даты и числа комментариев в списках маленькие серые иконки;
— графики плавные линейные, с подсказкой точного значения при наведении. Столбики только там, где сравниваются отдельные значения.
Тёмную тему продумай отдельно, а не просто переверни цвета, и запоминай выбор.
На телефоне меню прячется за кнопку, карточки встают в одну колонку, таблицы не вылезают за экран.
Сделай скриншоты разделов в обеих темах и на телефоне и покажи мне.

Агент перенёс в дашборд цвета и характер панели управления uCoz: тёмная шапка с логотипом, светлое меню слева, синие акценты, белые карточки, аккуратные иконки. Внизу меню видно, кто вошёл, и есть кнопка «Выйти». Тема переключается одной кнопкой в шапке.

Рис. 2. Одна и та же сводка в светлой и тёмной теме.
Рис. 2. Одна и та же сводка: слева светлая тема, справа тёмная.

5. Разделы: что читают, где спорят, кто приходит

Дальше дашборд оброс разделами. Каждый отвечает на свой вопрос администратора, поэтому и в промпте они описаны так же.

Промпт 4. Добавить разделы

Добавь в дашборд разделы. Каждый отвечает на свой вопрос.

«Топ материалов» — что читают:
— самые читаемые записи за всё время;
— прирост за сутки, неделю и месяц, когда накопится история;
— тренды: записи, которые сейчас набирают быстрее обычного;
— вечнозелёные: старые записи, которые до сих пор стабильно читают;
— просевшие: раньше читали хорошо, теперь почти нет.

«Обсуждения» — где спорят и отвечают ли читателям:
— записи с самыми горячими обсуждениями;
— самые активные комментаторы и когда каждый писал последний раз;
— в какой доле обсуждений ответила команда блога и сколько обычно проходит до ответа;
— последние комментарии и очередь модерации.

«Пользователи» — кто приходит:
— сколько всего пользователей и сколько новых за месяц;
— последние регистрации с аватаркой, группой и датой последнего визита;
— какая доля новичков вернулась после регистрации и какая загрузила аватар;
— график регистраций по месяцам за всё время.

«Ритм публикаций» — тепловая карта дней недели и часов, сколько записей вышло за год и обычный интервал между ними.

«Рубрики» — средние просмотры на запись по каждой рубрике и таблица: сколько записей, сколько просмотров, когда вышла последняя.

У пользователей храни только то, что нужно для экранов. Каждый раздел проверь в браузере на настоящих данных блога.

Агент собрал пять разделов:

  • «Топ материалов» показывает не только самые читаемые записи, но и движение: что сейчас набирает, какие старые записи читают годами и какие просели.
  • «Обсуждения» показывают, где читатели спорят, кто пишет чаще всех и как быстро им отвечают.
  • «Пользователи»: свежие регистрации с аватарками и график по месяцам. Самые полезные здесь две цифры: какая доля новичков вернулась после регистрации и какая загрузила аватар.
  • «Ритм публикаций»: в какие дни и часы выходят записи и как часто.
  • «Рубрики»: какие темы читают лучше и где давно ничего не выходило.
Рис. 3. Раздел «Топ материалов» с фильтром «За всё время»: самые читаемые записи блога с рубрикой, датой и числом комментариев.
Рис. 3. «Топ материалов» с фильтром «За всё время»: самые читаемые записи за всю историю блога. Рядом вкладки с приростом, трендами, вечнозелёными и просевшими записями.
Рис. 4. Раздел «Пользователи»: сколько всего пользователей, доля вернувшихся после регистрации и график регистраций по месяцам.
Рис. 4. «Пользователи»: новые регистрации, кто вернулся после регистрации и график регистраций по месяцам.
Рис. 5. Раздел «Ритм публикаций»: карта дней недели и часов, когда выходили записи блога.
Рис. 5. «Ритм публикаций»: тепловая карта показывает, в какие дни и часы чаще всего выходили записи блога.
Рис. 6. Раздел «Рубрики»: средние просмотры на запись по рубрикам и таблица всех рубрик.
Рис. 6. «Рубрики»: какие темы читают лучше всего и в каких рубриках давно не было записей.

6. Карточка каждой записи

Разделы отвечают на вопросы про весь блог. Следующий шаг: чтобы по любой отдельной записи можно было за секунду понять, как у неё дела.

Промпт 5. Добавить список записей и карточку записи

Сделай раздел «Записи»: все записи блога с поиском по названию, фильтром по рубрике и сортировкой по дате, просмотрам и комментариям. Список должен быстро листаться и на телефоне.

И карточку записи. Клик по любой записи в списке, топе, сводке или обсуждениях открывает её страницу в дашборде.
Что в карточке:
— название, рубрика и дата публикации;
— сколько у записи просмотров, какое место она занимает во всём блоге и в своей рубрике, во сколько раз она лучше или хуже среднего по рубрике;
— график, на котором все записи рубрики выстроены по просмотрам, а эта выделена цветом;
— прирост просмотров за сутки и неделю, когда история накопится;
— комментарии по месяцам за всю жизнь записи;
— ответила ли команда блога читателям, как быстро и сколько вопросов осталось без ответа;
— последние комментарии с датой;
— кнопки «Открыть в блоге» и «Редактировать», обе ведут в сам блог.
Кнопка «Назад» возвращает туда, откуда пришёл.

В разделе «Записи» теперь собраны все записи блога: их можно найти по названию, отфильтровать по рубрике и отсортировать.

Рис. 7. Раздел «Записи»: список записей с поиском, фильтром по рубрикам и сортировкой.
Рис. 7. «Записи»: поиск по названию, фильтр по рубрикам и сортировка: новые, по просмотрам, по комментариям.

А клик по любой записи открывает её карточку. В ней:

  • просмотры и место записи во всём блоге и внутри рубрики;
  • график сравнения: все записи рубрики по убыванию просмотров, эта выделена, и сразу видно, где она стоит;
  • комментарии по месяцам с самого первого;
  • ответы команды блога: сколько обсуждений получили ответ и сколько ждут до сих пор;
  • последние комментарии и кнопки «Открыть в блоге» и «Редактировать».
Рис. 8. Открытая карточка записи: просмотры, место в рубрике и график сравнения с другими записями рубрики.
Рис. 8. Карточка записи: место в рубрике и сравнение с соседями видно с первого взгляда.

7. Уведомления в Telegram

Дашборд удобно открыть утром. А о новом комментарии или внезапном интересе к старой записи хочется узнавать сразу, в Telegram.

Промпт 6. Подключить уведомления в Telegram

Хочу узнавать о событиях в блоге без захода в дашборд, через Telegram-бота. Сделай раздел «Уведомления».

Какие уведомления нужны:
— новый комментарий: текст, автор, название записи и ссылка прямо на обсуждение;
— запись резко пошла в рост: «+N просмотров за час», когда это заметно больше её обычного часа. Подбери порог так, чтобы бот не спамил;
— зарегистрировался новый пользователь;
— каждое утро в 9:00 по Москве короткая сводка за сутки.
Если за один раз событий накопилось много, собери их в одно сообщение.

Подключение прямо в дашборде, без правки кода: вставляю токен от @BotFather и имя бота, нажимаю «Подключить», дашборд даёт ссылку, в Telegram жму Start, и чат привязан.
Токен нигде не показывай и не храни в коде страниц. Менять настройки бота может только администратор.
Старые события при подключении не присылай, только новые.

В разделе: переключатель для каждого вида уведомлений, кнопки «Отправить тест» и «Отправить отчёт» (отчёт — красивая сводка со статистикой блога), история отправленных уведомлений с кнопкой очистки и кнопка отключения бота.
Когда всё настроишь, пришли мне тестовое сообщение.

Агент добавил раздел «Уведомления». Подключение обходится без кода: создаёте бота у @BotFather в Telegram, копируете его токен (это секретный ключ бота) и вставляете в дашборд. Токен остаётся на сервере и больше нигде не показывается.

Затем дашборд даёт одноразовую ссылку. Открываете её в Telegram, нажимаете Start, и чат подключён. Что присылать, выбирается переключателями: новые комментарии, всплески просмотров, новые пользователи и утренняя сводка. Всплеском считается час, когда запись набрала в несколько раз больше просмотров, чем обычно.

Рис. 9. Раздел «Уведомления»: подключённый Telegram-бот, кнопки отчёта и теста, переключатели событий и история отправленных уведомлений.
Рис. 9. Раздел «Уведомления»: бот на связи, отчёт уходит в Telegram одной кнопкой, а что присылать, решают переключатели.
Рис. 10. Отчёт от бота в Telegram: главные цифры блога, самая читаемая запись и ссылка на дашборд.
Рис. 10. Так отчёт выглядит в Telegram: главные цифры блога и ссылка на дашборд одним сообщением, по кнопке или каждое утро.

8. Проверка результата

Вот что теперь видит администратор блога:

Что хочется знатьГде это в дашборде
Что читают«Топ материалов»: самые читаемые записи за всё время, прирост, тренды, вечнозелёные и просевшие записи
Как дела у конкретной записиКарточка записи: место в блоге и в рубрике, сравнение с соседями, комментарии по месяцам
Где обсуждают«Обсуждения»: горячие записи за год, самые активные комментаторы, очередь модерации
Отвечают ли читателямБлок «Ответы команды»: доля обсуждений с ответом и обычное время ответа
Кто приходит«Пользователи»: новые регистрации с аватарками, график по месяцам, кто вернулся после регистрации
Когда и о чём писать«Ритм публикаций» и «Рубрики»: дни и часы выхода записей, темы, в которых давно ничего не было
Что происходит прямо сейчасTelegram: новый комментарий, всплеск просмотров, новый пользователь, утренняя сводка
  • Данные обновляются сами каждые 10 минут, просмотры записей запоминаются раз в час.
  • Блог не изменён: шаблоны не тронуты, ключ доступа только для чтения.
  • E-mail, IP-адреса и телефоны пользователей не хранятся.
  • Дашборд видят только администраторы сайта после входа.

Дашборд проверен и на телефоне. Меню прячется за кнопку, карточки с цифрами встают друг под другом, графики и списки подстраиваются под ширину экрана.

Посмотреть, как дела у нужной записи, можно в любой момент, не открывая компьютер. А если в блоге что-то случилось, Telegram напишет сам.

Одно ограничение: прирост просмотров за сутки, неделю и месяц считается со дня запуска дашборда. Чем дольше он работает, тем точнее эти цифры.

Карточка записи на экране телефона
Рис. 11. Карточка записи на телефоне.

9. Готовый дашборд

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

Вся работа прошла в чате примерно за один рабочий день. Задачи ставились обычными словами, а агент строил, проверял на настоящих данных и показывал результат.

Промпт 7. Принять результат

Проведи финальную проверку дашборда перед тем, как я покажу его команде:
— пройди все разделы и несколько карточек записей на компьютере и телефоне, в светлой и тёмной теме. Ничего не должно наезжать друг на друга и вылезать за экран;
— убедись, что задача по расписанию отработала несколько раз подряд без ошибок и данные свежие;
— проверь, что блог за всё это время ни разу не изменился: шаблоны, записи, настройки;
— сверь несколько цифр дашборда с тем, что видно в самом блоге;
— отправь в мой Telegram тестовое уведомление и отчёт со статистикой;
— проверь, что без входа под администратором дашборд не открывается, а ключ и токен не видны в коде страниц;
— убери временные файлы и тестовые доступы, если они остались.
В конце напиши коротко: что сделано, где что лежит, что работает само по расписанию и что мне нужно сделать самому.

Если у вас блог, новости или каталог статей на uCoz, такой дашборд можно сделать и у себя. Подключите агента, установите скилл и отправляйте промпты из кейса по очереди, заменив адреса на свои. Разделы меняйте под себя: попросите агента добавить нужное и убрать лишнее.

Так же делаются и другие вещи, которых нет в панели управления: умный поиск с подсказками, Telegram-бот по материалам сайта, рассылка о новых записях.

Начать свой проект: MCP uCoz и скилл «Разработка серверных скриптов для сайта».

Материал был полезен?

Оценка сохранится только в этом браузере.

Автор статьи

Техническая команда uCoz
Техническая команда uCoz
Поделиться статьёй