Skip to main content
Glama
brianirish

Laravel 12 Docs MCP Server

by brianirish

Laravel Docs MCP-сервер

Релиз GitHub (последний по дате) PyPI Версия Python Статус рабочего процесса GitHub Лицензия Образ Докера значок кузнеца Звезды GitHub Форки GitHub

⚠️ Alpha Software — этот проект находится на ранней стадии разработки. Функции могут работать не так, как ожидалось, а критические изменения могут происходить без уведомления.

Помощник ИИ для разработчиков Laravel, который обеспечивает доступ к последней документации Laravel и рекомендациям по интеллектуальным пакетам через Model Context Protocol (MCP). Это позволяет инструментам ИИ помогать вам создавать приложения Laravel с актуальной информацией и лучшими практиками.

Обзор

Этот сервер позволяет помощникам ИИ получать доступ к документации Laravel и рекомендациям по пакетам с использованием Model Context Protocol (MCP). Он позволяет инструментам ИИ:

  • Доступ и поиск в документации Laravel

  • Получайте рекомендации по пакетам на основе конкретных вариантов использования

  • Получите руководство по внедрению популярных пакетов Laravel

  • Автоматически обновлять документацию из репозитория Laravel GitHub

Related MCP server: MPC Docs Server

Установка

Быстрая установка через Smithery

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

Установить из PyPI

pip install laravel-docs-mcp

Докер

# 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

Ручная установка из источника

Предпосылки

  • Питон 3.12+

  • менеджер пакетов uv (рекомендуется)

Шаги

  1. Клонируйте репозиторий:

    git clone https://github.com/brianirish/laravel-docs-mcp.git
    cd laravel-docs-mcp
  2. Настройте среду и установите зависимости:

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

Использование

Запуск сервера

python laravel_docs_server.py

Сервер автоматически загружает документацию Laravel при первом запуске и может быть остановлен с помощью Ctrl+C.

Параметры командной строки

Вариант

Описание

--docs-path PATH

Путь к каталогу документации (по умолчанию: ./docs)

--server-name NAME

Имя сервера (по умолчанию: LaravelDocs)

--log-level LEVEL

Уровень журнала: ОТЛАДКА, ИНФОРМАЦИЯ, ПРЕДУПРЕЖДЕНИЕ, ОШИБКА, КРИТИЧЕСКИЙ (по умолчанию: ИНФОРМАЦИЯ)

--transport TYPE

Метод транспортировки: stdio, websocket, sse (по умолчанию: stdio)

--host HOST

Хост для привязки (сетевой транспорт)

--port PORT

Порт для прослушивания (сетевой транспорт)

--version VERSION

Ветка версии Laravel (по умолчанию: 12.x)

--update-docs

Обновите документацию перед началом

--force-update

Принудительное обновление документации

Пример с пользовательскими параметрами:

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

Обновление документации

Вы можете обновить документацию отдельно:

# 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

Пример клиента

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())

Доступные инструменты

Инструменты документирования

  • list_docs() — список всех файлов документации

  • search_docs(query: str) — Поиск документации по определенным терминам

  • update_docs(version: Optional[str], force: bool) — Обновление документации

  • docs_info() — Получить информацию о версии документации

Инструменты рекомендации пакетов

  • get_package_recommendations(use_case: str) — Получить рекомендации по пакетам для варианта использования

  • get_package_info(package_name: str) — Получить сведения о конкретном пакете

  • get_package_categories(category: str) — список пакетов в определенной категории

  • get_features_for_package(package: str) — Получить доступные функции для пакета

Доступ к ресурсам

Доступ к файлам документации как к ресурсам можно получить с помощью:

laravel://{path}

Примеры:

  • laravel://routing.md

  • laravel://authentication.md

Автоматизированные рабочие процессы

Этот проект включает в себя несколько автоматизированных рабочих процессов GitHub Actions:

Ежедневные обновления документации

  • Триггер : каждый день в полночь по всемирному координированному времени (также можно запустить вручную)

  • Процесс : Проверка обновлений документации Laravel → Создание PR → Автоматическое слияние → Создание тега версии патча

  • Результат : автоматический выпуск патчей при обновлении документации Laravel.

Выпуск публикации

  • Триггер : при отправке тегов версии (например, v0.1.4 )

  • Процесс : Сборка пакетов → Публикация в PyPI → Сборка и отправка образов Docker в GHCR

  • Результат : синхронизированные релизы через PyPI и Docker Hub.

Динамическое управление версиями

  • Источник версии : Автоматически получен из тегов git с помощью hatch-vcs

  • Сборки для разработки : получите уникальные идентификаторы (например, 0.1.3.dev1+g75aec71 )

  • Сборки релизов : чистые номера версий, соответствующие тегам (например, 0.1.4 )

Особенности и дорожная карта

Текущие возможности:

  • Ежедневные обновления документации : автоматическая синхронизация с репозиторием Laravel GitHub каждый день

  • Динамическое управление версиями : автоматическое управление версиями на основе тегов git

  • Автоматизированные выпуски : выпуски исправлений, вызванные обновлениями документации

  • Несколько вариантов развертывания : пакет PyPI, образы Docker и торговая площадка Smithery

  • Рекомендации по пакетам : интеллектуальные предложения, основанные на конкретных вариантах использования

  • Руководство по внедрению : подробная информация по распространенным пакетам Laravel

  • Гибкая конфигурация : поддержка нескольких версий Laravel и методов транспортировки

  • Мягкое выключение : правильная очистка и обработка сигналов

Планируемые функции:

  • 🔄 Поддержка нескольких версий (доступ к документации для нескольких версий Laravel одновременно)

  • 🔍 Анализ пользовательских проектов для индивидуальных рекомендаций

  • 🚀 Расширенные возможности поиска с семантическим соответствием

  • 📊 Аналитика использования и идеи

  • 🔗 Дополнительные интеграции экосистемы Laravel

Лицензия

Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.

Внося вклад

Вклады приветствуются! Смотрите CONTRIBUTING.md для инструкций.

Благодарности

  • Laravel за их прекрасную документацию

  • Авторам пакетов Laravel за их вклад в экосистему

-
license - not tested
-
quality - not tested
A
maintenance

Maintenance

Maintainers
10dResponse time
1dRelease cycle
188Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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