Laravel MCP Server
Cortex Agent Runtime — MCP-natives KI-Agenten-Framework
Vorher: KI versteht dein Projekt nicht. Nachher: KI kann Anwendungen analysieren, generieren und debuggen.
Ein Model Context Protocol (MCP)-Server, der jeden Coding-Agenten (Claude, Cursor, Codex, OpenCode und weitere) in ein autonomes Engineering-Gehirn für die Projekte verwandelt, an denen du arbeitest. Die Runtime ist projekttyp-agnostisch: sie lädt eine Reihe von Domänen basierend darauf, was dein Projekt ist, sodass dieselbe Runtime in Laravel-Apps, Node-Projekten und allem anderen funktioniert.
Runtime
Projekttyp-Erkennung —
core/detector.tsinspiziert das Projekt und aktiviert die passenden Domänen. Generische Tools werden immer geladen; die Laravel-Domäne aktiviert sich, wenncomposer.json+artisanvorhanden sind.Domänenregistrierung —
core/registry.tsstelltregisterDomain(manifest)bereit;listTools()/callTool()bleiben stabil, sodass sich die MCP-Oberfläche zwischen Projekten nicht ändert.Standardmäßig sicher — nur lokal, offline, keine Telemetrie. Befehls-Whitelists, die Blockierung gefährlicher Befehle und die Schwärzung sensibler Daten sind integriert.
Related MCP server: Project Planner MCP
Integrierte Domänen
Domäne | Wird geladen, wenn | Tools |
Generisch | Immer |
|
Laravel |
| artisan, schema, model, routes, migrations, CRUD-/Feature-/API-Generatoren, Debug-Workflow, intentPlanner, workflowStatus, context und mehr |
Generische Domäne
Tool | Beschreibung |
| Git-Statusübersicht (Branch, indexierte/nicht indexierte Änderungen) |
| Dateien per Glob durchsuchen, unter Ausschluss von |
| Zweistufiger Verzeichnisbaum des Projekts |
| Die in diesem Projekt verfügbaren Rollen und die Tools, die jede Rolle besitzt, auflisten |
Laravel-Domäne
Tool | Beschreibung |
| In der Whitelist enthaltene |
| Migrationsstatus |
| Umgebungsinformationen (die sichere Variante schwärzt Geheimnisse) |
| Konfiguration, Routen und Ansichten leeren/cachen |
| Konfigurationswerte anzeigen |
| Tabellen / Spalten auflisten |
| Eloquent-Modelle scannen |
| Letzte Log-Einträge |
| Routen mit Name-/URI-/Methoden-Filtern |
| PHPUnit-Tests ausführen |
| Struktur von Views/js/css scannen |
| Klassen generieren (Scaffolding) |
| Migrationen in ein Schema parsen |
| Projektabhängigkeiten |
| Vollständiger Projektkontext (anhand der Datei-mtime gecacht) |
| Vollständiger CRUD-Generator |
| CRUD + Blade-Views |
| REST-API-Generator (optionale Sanctum-Authentifizierung) |
| Fehlerlokalisierung, Diagnose, Korrekturvorschläge |
| Natürlichsprachliche Anfrage → ausführbarer Plan |
| Läufe auflisten/anzeigen/fortsetzen/zurücksetzen |
| Anzeigen, ob jeder Teil des Projektkontexts aus dem Cache stammt oder live neu erstellt wurde |
| Die in diesem Projekt verfügbaren Rollen und die Tools, die jede Rolle besitzt, auflisten |
Warum Agenten ihren Antworten vertrauen
Zwei Designprinzipien, die aus realer System-Prompt-Architektur übernommen wurden:
Rollen, keine Werkzeuglisten.
listRolessagt dem Agenten, wer er in diesem Projekt sein kann — ein explorer (nur lesende Untersuchung), ein engineer (bauen und reparieren) oder ein maintainer (Betrieb und Verifikation) — und welche Tools jede Rolle besitzt. Statt vor einer flachen Wand aus Tools zu stehen, wählt der Agent eine Rolle und bleibt innerhalb ihrer Grenzen. Weniger Fehltritte, klarere Absicht.Wisse, woher deine Fakten kommen.
contextSourcezeigt, ob jedes Modul des Projektkontexts aus dem Cache bedient oder in Echtzeit neu erstellt wurde, und der Kontext selbst wird über eine Prioritätskette (cache → live → safe default) zusammengesetzt, statt dass „der Agent es schon herausfindet“. Wenn der Agent antwortet, weiß er, wie frisch die Fakten sind — und du auch.
Vorher: Ein Agent starrt auf 29 Tools und veralteten Kontext, dessen Datum er nicht prüfen kann. Nachher: Er kennt seine Rolle, sein Toolset und die Frische von allem, was er liest.
Schnellstart
npm install
npm startLege den Projektpfad fest, an dem gearbeitet werden soll:
# 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()Führe den Server mit einer einzigen MCP-Anfrage aus, um zu sehen, welche Tools ein Projekt bereitstellt:
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 toolsMit OpenCode
Füge zu ~/.config/opencode/opencode.jsonc hinzu:
{
"mcp": {
"cortex": {
"type": "local",
"command": ["node", "/path/to/cortex-agent-runtime/dist/index.js"],
"environment": { "CORTEX_PROJECT_PATH": "/path/to/project" }
}
}
}Mit Claude Desktop
Füge zu ~/Library/Application Support/Claude/claude_desktop_config.json hinzu:
{
"mcpServers": {
"cortex": {
"command": "node",
"args": ["/path/to/cortex-agent-runtime/dist/index.js"]
}
}
}Umgebungsvariablen
Variable | Standard | Beschreibung |
| — | Projektpfad (hat Priorität) |
|
| Abwärtskompatibler Laravel-Projektpfad |
|
| Pfad zur PHP-Ausführungsdatei (Laravel-Domäne) |
| (leer) | Aktiviert die semantische LLM-Schicht für |
|
| OpenAI-kompatible API-Basis-URL |
|
| LLM-Modell für die Absichtsanalyse |
Architektur
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 / manifestJede Domäne exportiert ein DomainManifest (id, name, detect, getTools, getHandlers, getProjectPath?, roles?). Rollen deklarieren, wer der Agent in diesem Projekt sein kann (explorer / engineer / maintainer) und welche Tools jede Rolle besitzt — der Agent kann listRoles aufrufen, statt zu raten. Die Laravel-Domäne behält ihre eigene Runtime (domains/laravel/mcp.ts), Tools, Workflows, Kontext, Sicherheit und ihren eigenen Planner — die bestehende Oberfläche mit 24 Tools bleibt unverändert.
Anforderungen
Node.js 18+
PHP 8.1+ (für die Laravel-Domäne)
Pi-Erweiterung (Port der MCP-Tools)
Dasselbe Toolset als Erweiterung für pi coding agent: 34 der 35 Tools wurden vom MCP-Server auf native pi-Custom-Tools migriert, minus intentPlanner (pi ist selbst ein LLM; natürliche Sprache → Plan ist dort redundant). Quelle: pi-extension/cortex-laravel/.
Installation
# 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-laravelStarte dann pi neu (oder /reload). Die Erweiterung registriert 34 Tools:
Domäne | Tools |
Generisch (5) |
|
Laravel-Core (5) |
|
Laravel-Ops (12) |
|
Laravel-Workflows (7) |
|
Orchestrierung (5) |
|
Projektpfad-Auflösung: die Env-Variablen CORTEX_PROJECT_PATH / LARAVEL_PROJECT_PATH, mit Fallback auf das cwd der pi-Sitzung. Laravel-Tools schützen sich selbst mit einer klaren Fehlermeldung bei Nicht-Laravel-Projekten; Orchestrierungs-Tools lesen/schreiben dasselbe .htask/-Layout wie der MCP-Server (und die eigenständige htask-CLI).
Unterschiede zum MCP-Server
Sicherheit — dieselbe Befehls-Whitelist + Validator für gefährliche Muster (zwei Ebenen), plus eine Bestätigungsabfrage bei
taskAdvance/taskAccept/workflowStatus(resume·rollback): setzeCORTEX_CONFIRM_OFF=1, um das in Skripten zu erlauben.Laravel-11+-Kompatibilität — das upstream entfernte
config:getfällt auf tinker zurück; API-Routen werden automatisch überartisan install:apierstellt, wennroutes/api.phpfehlt.nix-flake-Projekte —
resolvePhpPathtestet bekannte nix-Installationspfade (nicht nurniximPATH).Fehler — geworfene Fehler erscheinen als Tool-Fehler; Tool-Ergebnisse sind reiner Text (kein MCP-JSON-RPC-Wrapper).
Entwicklung
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)Lizenz
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