hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Automatically fetches and updates Laravel documentation from GitHub repository, supporting different Laravel versions and providing version control integration for documentation updates.
Provides access to Laravel documentation, enabling search and retrieval of Laravel docs across different versions. Includes tools for listing documentation files, searching documentation for specific terms, and automatically fetching and updating documentation from Laravel's GitHub repository.
Laravel Docs MCP Server
A Model Context Protocol (MCP) server that provides access to Laravel documentation and package recommendations for AI assistants and language models.
Overview
This server enables AI assistants to access Laravel documentation and package recommendations using the Model Context Protocol (MCP). It allows AI tools to:
- Access and search Laravel documentation
- Receive package recommendations based on specific use cases
- Get implementation guidance for popular Laravel packages
- Automatically update documentation from Laravel's GitHub repository
Installation
Quick Install via Smithery
Manual Installation
Prerequisites
- Python 3.12+
uv
package manager (recommended)
Steps
- Clone the repository:Copy
- Set up environment and install dependencies:Copy
Usage
Starting the Server
The server automatically fetches Laravel documentation on first run and can be stopped with Ctrl+C.
Command Line Options
Option | Description |
---|---|
--docs-path PATH | Documentation directory path (default: ./docs) |
--server-name NAME | Server name (default: LaravelDocs) |
--log-level LEVEL | Log level: DEBUG, INFO, WARNING, ERROR, CRITICAL (default: INFO) |
--transport TYPE | Transport method: stdio, websocket, sse (default: stdio) |
--host HOST | Host to bind to (network transport) |
--port PORT | Port to listen on (network transport) |
--version VERSION | Laravel version branch (default: 12.x) |
--update-docs | Update documentation before starting |
--force-update | Force documentation update |
Example with custom options:
Documentation Updater
You can update the documentation separately:
API Reference
Client Example
Available Tools
Documentation Tools
list_docs()
- List all documentation filessearch_docs(query: str)
- Search documentation for specific termsupdate_docs(version: Optional[str], force: bool)
- Update documentationdocs_info()
- Get documentation version information
Package Recommendation Tools
get_package_recommendations(use_case: str)
- Get package recommendations for a use caseget_package_info(package_name: str)
- Get details about a specific packageget_package_categories(category: str)
- List packages in a specific categoryget_features_for_package(package: str)
- Get available features for a package
Resource Access
Documentation files can be accessed as resources using:
Examples:
laravel://routing.md
laravel://authentication.md
Features and Roadmap
Current Features:
- ✅ Dynamic documentation updates from Laravel's GitHub repository
- ✅ Graceful shutdown handling
- ✅ Version flexibility through command-line options
- ✅ Package recommendations based on use cases
- ✅ Implementation guidance for common Laravel packages
- ✅ Docker deployment support
Planned Features:
- Multi-version support (access documentation for multiple Laravel versions simultaneously)
- User project analysis for tailored recommendations
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Acknowledgements
- Laravel for their excellent documentation
- Laravel package authors for their contributions to the ecosystem
This server cannot be installed
A Model Context Protocol server that provides AI assistants and language models with access to Laravel 12 documentation, allowing them to list, read, and search through documentation files.