Используйте Laravel для создания собственного MCP-сервера
Claude может работать с вашим приложением на Laravel. Вам не нужно создавать REST API или писать кастомный клиент. Вы можете предоставить доступ к инструментам через Model Context Protocol (MCP).
Пакет laravel/mcp упрощает эту задачу. Вы сможете собрать MCP-сервер всего за один вечер.
MCP-сервер предоставляет ИИ три вещи: • Инструменты (Tools): действия, которые вызывает модель, например, поиск заказов. • Ресурсы (Resources): данные только для чтения, которые модель извлекает для контекста. • Промпты (Prompts): многоразовые шаблоны.
Как это сделать:
- Настройка
Установите пакет через Composer:
composer require laravel/mcp
Опубликуйте ваши маршруты:
php artisan vendor:publish --tag=ai-routes
- Создание сервера
Сервер объединяет ваши инструменты и ресурсы. Создайте его командой:
php artisan make:mcp-server OrdersServer
Зарегистрируйте его в routes/ai.php. Вы можете запустить веб-сервер для удаленных клиентов или локальный сервер для таких инструментов, как Claude Code.
- Создание инструментов
Инструменты выполняют основную работу. Создайте инструмент командой:
php artisan make:mcp-tool SearchOrdersTool
Инструменту необходимы два метода: • Schema: определяет аргументы, которые отправляет модель. • Handle: выполняет логику и возвращает ответ.
Пишите четкие описания. Модель использует эти описания, чтобы решить, когда именно нужно использовать ваш инструмент.
Использование аннотаций Используйте атрибуты для описания поведения инструмента: • IsReadOnly: инструмент не изменяет данные. • IsDestructive: инструмент изменяет или удаляет данные. • IsIdempotent: повторный запуск дает тот же результат, что и первый.
Защита сервера Веб-серверы MCP являются публичными эндпоинтами. Относитесь к ним так же, как к любому другому API. Используйте middleware для их защиты. Laravel Sanctum или Passport отлично подходят для аутентификации.
Тестирование работы Используйте MCP Inspector для ручного тестирования сервера:
php artisan mcp:inspector orders
Вы также можете писать стандартные тесты PHPUnit, чтобы убедиться, что ваши инструменты работают правильно.
Теперь у вас есть стандартный интерфейс для взаимодействия ИИ с вашим приложением. Вам не нужно писать код протокола. Просто добавляйте инструменты, четко описывайте их и защищайте с помощью middleware.
К чему вы уже подключали MCP-сервер? Расскажите в комментариях.
Источник: https://dev.to/accreditly/use-laravel-to-create-your-own-mcp-server-251g