Skip to main content
Glama

Laravel 12 Docs MCP Server

by brianirish

Laravel Docs MCP Server

⚠️ 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

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

OptionBeschreibung
--docs-path PATHPfad zum Dokumentationsverzeichnis (Standard: ./docs)
--server-name NAMEServername (Standard: LaravelDocs)
--log-level LEVELProtokollebene: DEBUG, INFO, WARNUNG, FEHLER, KRITISCH (Standard: INFO)
--transport TYPETransportmethode: stdio, websocket, sse (Standard: stdio)
--host HOSTHost, an den eine Bindung erfolgen soll (Netzwerktransport)
--port PORTPort zum Abhören (Netzwerktransport)
--version VERSIONLaravel-Versionszweig (Standard: 12.x)
--update-docsAktualisieren Sie die Dokumentation vor dem Start
--force-updateAktualisierung 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
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Ein Model Context Protocol-Server, der KI-Assistenten und Sprachmodellen Zugriff auf die Laravel 12-Dokumentation bietet und es ihnen ermöglicht, Dokumentationsdateien aufzulisten, zu lesen und zu durchsuchen.

  1. Überblick
    1. Installation
      1. Schnellinstallation über Smithery
      2. Von PyPI installieren
      3. Docker
      4. Manuelle Installation von der Quelle
    2. Verwendung
      1. Starten des Servers
      2. Befehlszeilenoptionen
      3. Dokumentations-Updater
    3. API-Referenz
      1. Client-Beispiel
      2. Verfügbare Tools
      3. Ressourcenzugriff
    4. Automatisierte Workflows
      1. Tägliche Dokumentationsaktualisierungen
      2. Release-Veröffentlichung
      3. Dynamische Versionierung
    5. Funktionen und Roadmap
      1. Lizenz
        1. Beitragen
          1. Danksagung

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server utilizing Claude AI for generating intelligent queries and offering documentation assistance based on API documentation analysis.
              Last updated -
              3
              2
              TypeScript
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that enables AI assistants like Claude to interact with Outline document services, supporting document searching, reading, creation, editing, and comment management.
              Last updated -
              25
              19
              Python
              MIT License
            • A
              security
              F
              license
              A
              quality
              A Model Context Protocol server that enables AI assistants like Claude to access and search Atlassian Confluence content, allowing integration with your organization's knowledge base.
              Last updated -
              5
              319
              8
              TypeScript
              • Apple
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that enables AI assistants to interact with Confluence content, supporting operations like retrieving, searching, creating, and updating pages and spaces.
              Last updated -
              9
              3
              TypeScript
              MIT License

            View all related MCP servers

            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