Skip to content

Установка MCP-сервера

Templite MCP-сервер опубликован на npm как @templite/mcp-server. Подключается одной строкой через npx — клонировать репозиторий не нужно.

Требования

  • Node.js ≥ 18.0.0 на машине, где работает AI-клиент.
  • Доступ к Templite CMS API (домен с публично доступным /api/cms/).
  • API-токен — создаётся в админке Templite.

Получение API-токена

Два пути:

Вариант 1. Через UI

  1. В админке открыть Настройки ядра (/cms/core-settings) → раздел MCP.
  2. Нажать «Сгенерировать новый токен».
  3. Скопировать токен сразу — он показывается один раз.

Вариант 2. Через REST API

bash
curl -X POST https://your-site.com/api/cms/core-settings/mcp/generate-token \
  -H "Authorization: Bearer <admin-token>" \
  -H "Accept: application/json"

Ответ содержит свежий токен — сохраните его для конфигурации MCP-клиента.

Безопасность токена

Токен даёт полный доступ к админ-API CMS. Храните его как секрет:

  • Не коммитьте конфиги MCP с токеном в публичные репозитории.
  • Используйте .gitignore или подстановку из переменных окружения.
  • Для разных AI-клиентов / окружений выпускайте отдельные токены — отозвать конкретный можно через DELETE /api/cms/core-settings/mcp/revoke-token.

Запуск

Через npx (рекомендуется)

Без установки локально:

bash
TEMPLITE_API_URL=https://your-site.com \
TEMPLITE_API_TOKEN=your-token \
npx -y @templite/mcp-server

AI-клиенты обычно вызывают эту команду сами при подключении — описано в конфигах ниже.

Глобальная установка

bash
npm install -g @templite/mcp-server

TEMPLITE_API_URL=https://your-site.com TEMPLITE_API_TOKEN=your-token templite-mcp

Локальная установка в проект

bash
npm install @templite/mcp-server

TEMPLITE_API_URL=https://your-site.com TEMPLITE_API_TOKEN=your-token npx templite-mcp

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

ПеременнаяОбязательноНазначение
TEMPLITE_API_URLДаБазовый URL CMS (например https://your-site.com). Сервер сам добавит префикс /api/cms/ к запросам.
TEMPLITE_API_TOKENДаBearer-токен, выпущенный в админке (см. выше).
TEMPLITE_DEBUGНет1 — логировать HTTP-запросы в stderr. По умолчанию 0.

Других env-переменных у MCP-сервера нет. Таймаут запроса фиксированный — 30 секунд.


Конфигурация AI-клиентов

Claude Code (CLI)

Файл .mcp.json в корне проекта (или ~/.claude/settings.json для глобальной конфигурации):

json
{
  "mcpServers": {
    "templite": {
      "command": "npx",
      "args": ["-y", "@templite/mcp-server"],
      "env": {
        "TEMPLITE_API_URL": "https://your-site.com",
        "TEMPLITE_API_TOKEN": "your-token-here"
      }
    }
  }
}

После сохранения claude CLI обнаружит сервер автоматически.

Cursor

Файл .cursor/mcp.json в корне проекта:

json
{
  "mcpServers": {
    "templite": {
      "command": "npx",
      "args": ["-y", "@templite/mcp-server"],
      "env": {
        "TEMPLITE_API_URL": "https://your-site.com",
        "TEMPLITE_API_TOKEN": "your-token-here"
      }
    }
  }
}

Windsurf

Файл .windsurf/mcp.json (тот же формат, что у Cursor).

Claude Desktop

Файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
json
{
  "mcpServers": {
    "templite": {
      "command": "npx",
      "args": ["-y", "@templite/mcp-server"],
      "env": {
        "TEMPLITE_API_URL": "https://your-site.com",
        "TEMPLITE_API_TOKEN": "your-token-here"
      }
    }
  }
}

После сохранения перезапустите Claude Desktop. В чате появится индикатор подключения к MCP.


Проверка подключения

В AI-клиенте выполните тестовый запрос:

Покажи список всех блоков Templite

AI-агент должен вызвать tool list_blocks и вернуть список. Если ничего не происходит или приходит ошибка:

  • Проверить TEMPLITE_API_TOKEN — не отозван ли, актуален ли.
  • Проверить TEMPLITE_API_URL — доступен ли с машины, где работает AI-клиент.
  • Включить отладку: TEMPLITE_DEBUG=1 — в stderr появятся подробные логи HTTP-запросов.

Особенности транспорта

  • Только stdio. MCP-сервер запускается как дочерний процесс AI-клиента и общается через стандартные потоки. Отдельного HTTP-режима / SSE-сервера в текущей версии нет.
  • Без авто-перезапуска. Если сервер падает (например, при Fatal error: ... в stderr) — AI-клиент должен перезапустить его сам.
  • Один сервер на токен. Каждое подключение использует один Bearer-токен. Для разных доступов запускайте отдельные mcpServer-записи с разными именами и токенами.

Подводные камни

Подводные камни

  • Команды php artisan cms:mcp:token нет. Токен выпускается через UI («Настройки ядра → MCP») или REST API (POST /api/cms/core-settings/mcp/generate-token).
  • Только stdio-транспорт. Если ищете SSE или HTTP-эндпоинт для веб-агентов — в текущей версии не реализовано.
  • Токен показывается один раз. Если потеряли — выпустите новый, старый отзовите через DELETE /api/cms/core-settings/mcp/revoke-token.
  • При смене APP_KEY Sanctum инвалидирует все токены — MCP-токен придётся выпустить заново.
  • @templite/mcp-server тянется через npx -y при каждом запуске AI-клиента, если нет глобальной установки. Для production-агентов лучше установить глобально (npm install -g).
  • TEMPLITE_API_URL должен быть достижим из машины с AI-клиентом. Для локальной разработки — http://localhost:8080 (или порт templite-nginx).

Связанные разделы

Распространяется под лицензией MIT.