Skip to main content
Glama
brianirish

Laravel 12 Docs MCP Server

by brianirish

Laravel Docs MCP Server

GitHub-Version (aktuellste nach Datum) PyPI Python-Version GitHub-Workflow-Status Lizenz Docker-Image Schmiedeabzeichen GitHub Stars GitHub-Forks

⚠️ Alpha-Software – Dieses Projekt befindet sich in der frühen Entwicklungsphase. Funktionen funktionieren möglicherweise nicht wie erwartet und es können ohne vorherige Ankündigung schwerwiegende Änderungen auftreten.

Ein KI-Assistent für Laravel-Entwickler, der über das Model Context Protocol (MCP) Zugriff auf die neueste Laravel-Dokumentation und intelligente Paketempfehlungen bietet. Dadurch unterstützen KI-Tools Sie beim Erstellen von Laravel-Anwendungen mit aktuellen Informationen und Best Practices.

Überblick

Dieser Server ermöglicht KI-Assistenten den Zugriff auf Laravel-Dokumentation und Paketempfehlungen über das Model Context Protocol (MCP). KI-Tools können damit:

  • Zugriff auf und Suche in der Laravel-Dokumentation

  • Erhalten Sie Paketempfehlungen basierend auf bestimmten Anwendungsfällen

  • Erhalten Sie Implementierungsanleitungen für beliebte Laravel-Pakete

  • Automatische Aktualisierung der Dokumentation aus dem GitHub-Repository von Laravel

Related MCP server: MPC Docs Server

Installation

Schnellinstallation über Smithery

npx -y @smithery/cli install @brianirish/laravel-docs-mcp --client claude

Von PyPI installieren

pip install laravel-docs-mcp

Docker

# Pull and run the latest version docker run -p 8000:8000 ghcr.io/brianirish/laravel-docs-mcp:latest # Or run a specific version docker run -p 8000:8000 ghcr.io/brianirish/laravel-docs-mcp:v0.1.4

Manuelle Installation von der Quelle

Voraussetzungen

  • Python 3.12+

  • uv -Paketmanager (empfohlen)

Schritte

  1. Klonen Sie das Repository:

    git clone https://github.com/brianirish/laravel-docs-mcp.git cd laravel-docs-mcp
  2. Umgebung einrichten und Abhängigkeiten installieren:

    # Create and activate virtual environment uv venv source .venv/bin/activate # Linux/macOS # or .venv\Scripts\activate # Windows # Install dependencies uv pip install .

Verwendung

Starten des Servers

python laravel_docs_server.py

Der Server ruft beim ersten Start automatisch die Laravel-Dokumentation ab und kann mit Strg+C gestoppt werden.

Befehlszeilenoptionen

Option

Beschreibung

--docs-path PATH

Pfad zum Dokumentationsverzeichnis (Standard: ./docs)

--server-name NAME

Servername (Standard: LaravelDocs)

--log-level LEVEL

Protokollebene: DEBUG, INFO, WARNUNG, FEHLER, KRITISCH (Standard: INFO)

--transport TYPE

Transportmethode: stdio, websocket, sse (Standard: stdio)

--host HOST

Host, an den eine Bindung erfolgen soll (Netzwerktransport)

--port PORT

Port zum Abhören (Netzwerktransport)

--version VERSION

Laravel-Versionszweig (Standard: 12.x)

--update-docs

Aktualisieren Sie die Dokumentation vor dem Start

--force-update

Aktualisierung der Dokumentation erzwingen

Beispiel mit benutzerdefinierten Optionen:

python laravel_docs_server.py --docs-path /path/to/docs --version 11.x --update-docs --transport websocket --host localhost --port 8000

Dokumentations-Updater

Sie können die Dokumentation separat aktualisieren:

# Update documentation python docs_updater.py --target-dir ./docs --version 12.x # Check if update is needed python docs_updater.py --check-only # Force update python docs_updater.py --force

API-Referenz

Client-Beispiel

import asyncio from fastmcp import Client async def main(): client = Client("path/to/laravel_docs_server.py") async with client: # List documentation result = await client.call_tool("list_docs", {}) print(result) # Search documentation result = await client.call_tool("search_docs", {"query": "routing"}) print(result) # Get package recommendations result = await client.call_tool("get_package_recommendations", {"use_case": "implementing subscription billing"}) print(result) # Read documentation resource = await client.read_resource("laravel://routing.md") print(resource) if __name__ == "__main__": asyncio.run(main())

Verfügbare Tools

Dokumentationstools

  • list_docs() - Listet alle Dokumentationsdateien auf

  • search_docs(query: str) – Dokumentation nach bestimmten Begriffen durchsuchen

  • update_docs(version: Optional[str], force: bool) – Dokumentation aktualisieren

  • docs_info() - Informationen zur Dokumentationsversion abrufen

Paketempfehlungstools

  • get_package_recommendations(use_case: str) – Paketempfehlungen für einen Anwendungsfall abrufen

  • get_package_info(package_name: str) – Details zu einem bestimmten Paket abrufen

  • get_package_categories(category: str) – Pakete in einer bestimmten Kategorie auflisten

  • get_features_for_package(package: str) – Verfügbare Features für ein Paket abrufen

Ressourcenzugriff

Auf Dokumentationsdateien kann wie folgt als Ressource zugegriffen werden:

laravel://{path}

Beispiele:

  • laravel://routing.md

  • laravel://authentication.md

Automatisierte Workflows

Dieses Projekt umfasst mehrere automatisierte GitHub Actions-Workflows:

Tägliche Dokumentationsaktualisierungen

  • Auslöser : Jeden Tag um Mitternacht UTC (kann auch manuell ausgelöst werden)

  • Prozess : Sucht nach Aktualisierungen der Laravel-Dokumentation → Erstellt PR → Automatische Zusammenführung → Erstellt Patch-Versions-Tag

  • Ergebnis : Automatische Patch-Releases, wenn Laravel-Dokumente aktualisiert werden

Release-Veröffentlichung

  • Auslöser : Wenn Versions-Tags gepusht werden (z. B. v0.1.4 )

  • Prozess : Erstellt Pakete → Veröffentlicht auf PyPI → Erstellt und überträgt Docker-Images an GHCR

  • Ergebnis : Synchronisierte Releases über PyPI und Docker Hub

Dynamische Versionierung

  • Versionsquelle : Automatisch aus Git-Tags mithilfe von hatch-vcs abgeleitet

  • Entwicklungs-Builds : Erhalten Sie eindeutige Kennungen (z. B. 0.1.3.dev1+g75aec71 ).

  • Release Builds : Saubere Versionsnummern, die mit den Tags übereinstimmen (z. B. 0.1.4 )

Funktionen und Roadmap

Aktuelle Funktionen:

  • Tägliche Dokumentationsaktualisierungen : Automatische tägliche Synchronisierung mit dem GitHub-Repository von Laravel

  • Dynamische Versionierung : Automatische Versionsverwaltung basierend auf Git-Tags

  • Automatisierte Releases : Patch-Releases werden durch Dokumentationsaktualisierungen ausgelöst

  • Mehrere Bereitstellungsoptionen : PyPI-Paket, Docker-Images und Smithery-Marktplatz

  • Paketempfehlungen : Intelligente Vorschläge basierend auf spezifischen Anwendungsfällen

  • Implementierungsanleitung : Detaillierte Informationen zu gängigen Laravel-Paketen

  • Flexible Konfiguration : Unterstützung für mehrere Laravel-Versionen und Transportmethoden

  • Ordentliches Herunterfahren : Ordnungsgemäße Bereinigung und Signalverarbeitung

Geplante Funktionen:

  • 🔄 Unterstützung mehrerer Versionen (gleichzeitiger Zugriff auf die Dokumentation für mehrere Laravel-Versionen)

  • 🔍 Benutzerprojektanalyse für maßgeschneiderte Empfehlungen

  • 🚀 Erweiterte Suchfunktionen mit semantischem Matching

  • 📊 Nutzungsanalysen und Einblicke

  • 🔗 Zusätzliche Integrationen des Laravel-Ökosystems

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE.

Beitragen

Beiträge sind willkommen! Richtlinien finden Sie unter CONTRIBUTING.md.

Danksagung

  • Laravel für die hervorragende Dokumentation

  • Autoren von Laravel-Paketen für ihre Beiträge zum Ökosystem

-
security - not tested
-
license - not tested
-
quality - not tested

Latest Blog Posts

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/brianirish/laravel-docs-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server