MCP
MCP (Model Context Protocol) — открытый стандарт от Anthropic для подключения AI-агентов к внешним системам. Templite предоставляет MCP-сервер на Node.js, который позволяет AI-клиентам (Claude Code, Claude Desktop, Cursor, Windsurf) управлять CMS через естественный язык.
Пакет: @templite/mcp-server на npm. Исходный код — в директории mcp-server/ репозитория Templite.
Что такое MCP
- Спецификация Anthropic для двусторонней связи AI-агентов и приложений.
- Агент видит каталог tools (функций) и prompts (готовых workflow), вызывает их и получает результаты.
- Templite MCP-сервер реализует протокол поверх REST API CMS — не работает с БД напрямую.
Возможности
Templite MCP экспортирует более 120 tools (на момент актуальной версии — около 140), сгруппированных по доменам:
| Группа | Содержит |
|---|---|
| Блоки и поля | CRUD блоков, поля, вкладки/секции, копирование, версии данных, кэш |
| Страницы | CRUD страниц, блоки на странице, типы страниц, атрибуты |
| Шаблоны | CRUD шаблонов, поля шаблонов, код Blade/SCSS/JS |
| Компоненты и библиотеки | Blade-компоненты, внешние JS/CSS-библиотеки |
| Actions | PHP-классы бизнес-логики, привязка к блокам |
| Глобальные настройки | Pages → Sections → Fields, значения, переводы |
| Города | Города, городские страницы, материализация |
| Языки | CRUD языков, дефолтный язык, порядок |
| Переводы | Страниц, блоков, глобальных настроек |
| Пользователи | Frontend User модель, типы, кастомные поля |
| Медиа | Загрузка, список, удаление файлов |
| Кэш и ассеты | Очистка, компиляция, ребилд |
| Пресеты | Локальные и глобальные пресеты блоков |
Полный справочник — Tools.
Архитектура
AI-клиент (Claude Code / Cursor / Windsurf / Claude Desktop)
↕ stdio
@templite/mcp-server (Node.js)
↕ HTTPS + Bearer token
Templite REST API (/api/cms/*)
↕
БД (MySQL / PostgreSQL)Ключевое:
- Транспорт — только stdio (запуск как дочерний процесс AI-клиента).
- Авторизация — статический Bearer-токен. Refresh-потока нет, токен выпускается из UI или REST API.
- Все запросы идут через REST API CMS под префиксом
/api/cms/*. См. REST API. - Стандартный таймаут запроса — 30 секунд.
Совместимые клиенты
| Клиент | Конфиг |
|---|---|
| Claude Code (CLI) | ~/.claude/settings.json или .mcp.json в проекте |
| Cursor | .cursor/mcp.json в проекте |
| Windsurf | .windsurf/mcp.json в проекте |
| Claude Desktop | claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\) |
Все используют одинаковый формат конфигурации с командой запуска и env-переменными.
Что можно
- Создание сайта по описанию (
/site-pipeline). - Декомпозиция HTML-прототипов в CMS-сущности (
/backend-decompose). - Создание блоков, шаблонов, компонентов с кодом.
- Управление контентом: страницы, блоки, глобальные настройки.
- Импорт городов, добавление языков, переводы.
- Управление файлами (загрузка, удаление).
- Управление пользователями (frontend
Userмодель). - Пресеты блоков, версии данных, кэш.
Что нельзя
Ограничения
- Прямое выполнение SQL — недоступно.
- Изменение PHP-кода Laravel (контроллеры, миграции, конфиги) — недоступно. Только контент CMS и код блоков/компонентов/actions/шаблонов через API CMS.
- Выполнение Artisan-команд за пределами публичного API — недоступно. Для очистки кэша есть отдельные tools.
- Чтение
.envили секретов — недоступно. Через REST API эти данные не отдаются. - MCP-токен даёт полный доступ к админ-API. Не публикуйте конфиги с токеном в публичных репозиториях.