Laravel MCP Server
Cortex Agent Runtime — MCP-нативный фреймворк для AI-агентов
До: ИИ не понимает ваш проект. После: ИИ может анализировать, генерировать и отлаживать приложения.
Сервер Model Context Protocol (MCP), который превращает любого агента кодирования (Claude, Cursor, Codex, OpenCode и другие) в автономный инженерный мозг для ваших проектов. Среда выполнения не зависит от типа проекта: она загружает набор доменов в зависимости от того, что представляет собой ваш проект, поэтому одна и та же среда работает с приложениями Laravel, проектами Node и всем остальным.
Среда выполнения
Определение типа проекта —
core/detector.tsпроверяет проект и активирует соответствующие домены. Общие инструменты загружаются всегда; домен Laravel активируется при наличииcomposer.json+artisan.Регистрация доменов —
core/registry.tsпредоставляетregisterDomain(manifest);listTools()/callTool()остаются стабильными, поэтому поверхность MCP не меняется между проектами.Безопасно по умолчанию — только локально, офлайн, без телеметрии. Встроены белые списки команд, блокировка опасных команд и редактирование конфиденциальных данных.
Related MCP server: Project Planner MCP
Встроенные домены
Домен | Когда загружается | Инструменты |
Общий | Всегда |
|
Laravel | при наличии | artisan, schema, model, routes, migrations, CRUD/feature/API генераторы, отладочный процесс, intentPlanner, workflowStatus, context и другие |
Общий домен
Инструмент | Описание |
| Сводка статуса Git (ветка, индексированные/неиндексированные изменения) |
| Поиск файлов по glob, исключая |
| Двухуровневое дерево каталогов проекта |
| Список ролей, доступных в этом проекте, и инструментов, которыми владеет каждая роль |
Домен Laravel
Инструмент | Описание |
| Запуск разрешенных команд |
| Статус миграций |
| Информация об окружении (безопасный вариант скрывает секреты) |
| Очистка/кэширование конфигурации, маршрутов, представлений |
| Просмотр значений конфигурации |
| Список таблиц / столбцов |
| Сканирование моделей Eloquent |
| Последние записи журнала |
| Маршруты с фильтрами по имени/URI/методу |
| Запуск тестов PHPUnit |
| Сканирование структуры представлений/js/css |
| Создание классов-заготовок |
| Разбор миграций в схему |
| Зависимости проекта |
| Полный контекст проекта (кэшируется по времени изменения файла) |
| Полный генератор CRUD |
| CRUD + представления Blade |
| Генератор REST API (опциональная аутентификация Sanctum) |
| Локализация ошибок, диагностика, предложения по исправлению |
| Запрос на естественном языке → исполняемый план |
| Список/просмотр/возобновление/откат запусков |
| Показывает, была ли каждая часть контекста проекта получена из кэша или пересобрана в реальном времени |
| Список ролей, доступных в этом проекте, и инструментов, которыми владеет каждая роль |
Почему агенты доверяют своим ответам
Два принципа проектирования, заимствованные из реальной архитектуры системных подсказок:
Роли, а не списки инструментов.
listRolesсообщает агенту, кем он может быть в этом проекте — исследователем (только чтение), инженером (создание и исправление) или сопровождающим (операции и проверка) — и какими инструментами владеет каждая роль. Вместо плоского списка инструментов агент выбирает роль и остается в ее границах. Меньше ошибок, яснее намерения.Знайте, откуда берутся ваши факты.
contextSourceпоказывает, была ли каждая часть контекста проекта получена из кэша или пересобрана в реальном времени, а сам контекст собирается через цепочку приоритетов (cache → live → safe default) вместо того, чтобы «агент сам разбирался». Когда агент отвечает, он знает, насколько свежи факты — и вы тоже.
До: агент смотрит на 29 инструментов и устаревший контекст, который не может проверить по дате. После: он знает свою роль, свой набор инструментов и свежесть всего, что читает.
Быстрый старт
npm install
npm startУкажите путь к проекту, с которым нужно работать:
# Any project (Node, Laravel, ...)
CORTEX_PROJECT_PATH=/path/to/project npm start
# Laravel-specific path resolution (backward compatible)
LARAVEL_PROJECT_PATH=/path/to/laravel-app npm start
# Nothing set → process.cwd()Запустите сервер с одним MCP-запросом, чтобы увидеть, какие инструменты доступны для проекта:
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | \
CORTEX_PROJECT_PATH=/path/to/node-project npx tsx src/index.ts
# → only generic tools
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | \
CORTEX_PROJECT_PATH=/path/to/laravel-app npx tsx src/index.ts
# → generic + laravel toolsС OpenCode
Добавьте в ~/.config/opencode/opencode.jsonc:
{
"mcp": {
"cortex": {
"type": "local",
"command": ["node", "/path/to/cortex-agent-runtime/dist/index.js"],
"environment": { "CORTEX_PROJECT_PATH": "/path/to/project" }
}
}
}С Claude Desktop
Добавьте в ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cortex": {
"command": "node",
"args": ["/path/to/cortex-agent-runtime/dist/index.js"]
}
}
}Переменные окружения
Переменная | По умолчанию | Описание |
| — | Путь к проекту (приоритетный) |
|
| Путь к проекту Laravel для обратной совместимости |
|
| Путь к исполняемому файлу PHP (домен Laravel) |
| (пусто) | Включает семантический слой LLM для |
|
| Базовый URL API, совместимого с OpenAI |
|
| Модель LLM, используемая для анализа намерений |
Архитектура
src/
├── index.ts # entry: detect → load domains → register → start MCP
├── core/ # framework layer — project-type agnostic
│ ├── registry.ts # ToolRegistry: registerDomain / listTools / callTool / roles
│ ├── source-chain.ts # resolveChain: priority fallback chain (cache → live → default)
│ ├── mcp.ts # getConfig / getLogger / runCommand
│ ├── logger.ts # leveled logger
│ ├── detector.ts # detectDomains(projectPath) → DomainManifest[]
│ ├── glob.ts # minimal `*` / `**` glob
│ ├── context/ # generic context interface
│ └── tools/ # shared tools (listRoles)
└── domains/
├── generic/ # always loaded: gitStatus / fileSearch / projectTree / listRoles
└── laravel/ # tools / workflows / context / security / planner / manifestКаждый домен экспортирует DomainManifest (id, name, detect, getTools, getHandlers, getProjectPath?, roles?). Роли объявляют, кем агент может быть в этом проекте (исследователь / инженер / сопровождающий) и какими инструментами владеет каждая роль — агент может вызвать listRoles вместо того, чтобы угадывать. Домен Laravel сохраняет собственную среду выполнения (domains/laravel/mcp.ts), инструменты, рабочие процессы, контекст, безопасность и планировщик — существующая поверхность из 24 инструментов не изменена.
Требования
Node.js 18+
PHP 8.1+ (для домена Laravel)
Расширение Pi (порт инструментов MCP)
Тот же набор инструментов, как расширение pi coding agent: 34 из 35 инструментов перенесены с MCP-сервера на нативные пользовательские инструменты pi, за исключением intentPlanner (pi сам является LLM; преобразование естественного языка в план там избыточно). Исходный код: pi-extension/cortex-laravel/.
Установка
# either copy …
cp -R pi-extension/cortex-laravel ~/.pi/agent/extensions/
# … or symlink (always in sync with this repo)
ln -s "$(pwd)/pi-extension/cortex-laravel" ~/.pi/agent/extensions/cortex-laravelЗатем перезапустите pi (или /reload). Расширение регистрирует 34 инструмента:
Домен | Инструменты |
Общий (5) |
|
Ядро Laravel (5) |
|
Операции Laravel (12) |
|
Рабочие процессы Laravel (7) |
|
Оркестрация (5) |
|
Определение пути к проекту: переменные окружения CORTEX_PROJECT_PATH / LARAVEL_PROJECT_PATH, с возвратом к cwd сессии pi. Инструменты Laravel самозащищаются с понятной ошибкой на не-Laravel проектах; инструменты оркестрации читают/записывают ту же структуру .htask/, что и MCP-сервер (и автономный CLI htask).
Отличия от MCP-сервера
Безопасность — тот же белый список команд + валидатор опасных шаблонов (два уровня), плюс подтверждение на
taskAdvance/taskAccept/workflowStatus(возобновление·откат): установитеCORTEX_CONFIRM_OFF=1, чтобы разрешить в скриптах.Совместимость с Laravel 11+ — удаленный вышестоящий
config:getвозвращается к tinker; API-маршруты автоматически создаются черезartisan install:api, еслиroutes/api.phpотсутствует.Проекты nix flake —
resolvePhpPathпроверяет известные пути установки nix (не толькоnixвPATH).Ошибки — выброшенные ошибки отображаются как ошибки инструментов; результаты инструментов — обычный текст (без обертки MCP JSON-RPC).
Разработка
npm install
npm run typecheck # tsc --noEmit (type-check only)
npm test # run all tests
npm run build # compile to dist/
npm start # node dist/index.js
npm run dev # npx tsx src/index.ts (hot reload)Лицензия
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceIntegrates with the Laravel Forge API to provide comprehensive management of servers and sites. It enables users to perform health checks, monitor logs, create resources, and execute deployment tasks through MCP-compliant tools.202MIT
- AlicenseAqualityDmaintenanceMCP server for structured Laravel project planning. Scans projects, creates tickets, and exports as JSON.313MIT
- FlicenseNot gradedqualityDmaintenanceProvides various developer utilities such as UUID generation, timestamp conversion, Base64 encoding, color conversion, password generation, hash generation, and JSON formatting via MCP.771
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to introspect a Laravel application's routes, models, controllers, migrations, and more through the Model Context Protocol, running locally via php artisan commands and filesystem scanning.16MIT
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
A basic MCP server to operate on the Postman API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dok4everak47/cortex-agent-runtime'
If you have feedback or need assistance with the MCP directory API, please join our Discord server