使用说明

项目简介

这是一个基于 Model Context Protocol (MCP) 构建的应用后端,专门为AI助手和语言模型设计。它提供了访问 Laravel 官方文档和获取 Laravel 软件包推荐的能力,使得 AI 能够更深入地理解 Laravel 框架,并提供更准确、更实用的帮助。

主要功能点

  • Laravel 文档访问: 允许 AI 按路径读取特定的文档文件内容。
  • Laravel 文档搜索: 支持在所有同步的文档文件中搜索关键词,快速定位相关信息。
  • 软件包智能推荐: 根据开发者描述的具体用例(如“实现支付功能”),推荐合适的 Laravel 生态系统中的软件包。
  • 软件包详细信息: 提供关于推荐软件包的详细介绍、安装指南和常见使用场景。
  • 文档自动/手动更新: 可以轻松同步最新版本的 Laravel 官方文档,确保信息时效性。

安装步骤

  1. 环境准备: 确保您的系统已安装 Python 3.12 或更高版本。推荐安装 'uv' 包管理器 ('pip install uv') 以加速依赖安装。
  2. 克隆仓库: 打开终端,执行命令 'git clone https://github.com/brianirish/laravel-docs-mcp.git' 下载项目代码。
  3. 进入项目目录: 'cd laravel-docs-mcp'
  4. 设置环境: 创建并激活 Python 虚拟环境。使用 'uv venv',然后根据您的操作系统执行 'source .venv/bin/activate' (Linux/macOS) 或 '.venv\Scripts\activate' (Windows)。
  5. 安装依赖: 在激活的虚拟环境中,执行 'uv pip install .' (使用 'uv') 或 'pip install -e .' (使用 pip) 安装项目所需的所有库。

服务器配置

MCP 客户端需要通过配置来知道如何启动和连接到此服务器。以下是客户端连接此服务器时通常需要提供的配置信息(通常以 JSON 格式表示),请根据实际情况调整路径和参数:

{
  "server_name": "MCP服务器的标识符,例如 'LaravelDocs' 或自定义名称",
  "command": "Python解释器的路径,例如 '/usr/local/bin/python3' 或 'C:\\Python312\\python.exe'",
  "args": [
    "服务器主脚本的路径,例如 '/path/to/your/laravel-docs-mcp/laravel_docs_server.py'",
    "--transport", "AI客户端与服务器的通信方式,可以是 'stdio' (标准输入输出), 'websocket', 或 'sse'。",
    "--docs-path", "(可选)指定存放Laravel文档的本地目录路径,默认会在脚本同级目录下创建 'docs' 文件夹。",
    "--version", "(可选)指定要同步和使用的Laravel文档版本分支,例如 '11.x', '10.x',默认 '12.x'。",
    "--update-docs", "(可选)如果希望服务器启动时检查并更新文档,请添加此参数。",
    "--force-update", "(可选)与 --update-docs 配合使用,强制更新文档,即使已是最新版本。",
    "--host", "(可选)如果 transport 是 websocket 或 sse,指定服务器绑定的主机地址。",
    "--port", "(可选)如果 transport 是 websocket 或 sse,指定服务器监听的端口号。"
  ]
}
  • 说明:
    • 'command' 和 'args[0]' 需要指向您系统中实际的 Python 可执行文件路径和 'laravel_docs_server.py' 脚本文件路径。
    • '--transport' 参数必须与 AI 客户端的配置相匹配。对于基于文件系统的客户端,通常使用 'stdio'。
    • 首次运行或需要获取新版本文档时,建议至少包含 '--update-docs' 参数。

基本使用方法

  1. 启动服务器: 在项目目录下,激活虚拟环境后,运行命令 'python laravel_docs_server.py'。服务器将启动,并根据配置检查或下载文档。
  2. 连接客户端: 使用您的 MCP 兼容 AI 客户端,配置好服务器的 'server_name', 'command', 'args' 及 'transport' 信息,连接到此服务器。
  3. 交互: 一旦连接成功,AI 客户端就可以通过 JSON-RPC 调用服务器暴露的工具(如 'search_docs', 'get_package_recommendations')或访问资源(如读取 'laravel://installation.md')。
  4. 停止服务器: 在服务器运行的终端窗口中按下 'Ctrl+C' 即可优雅地关闭服务器。

信息

分类

开发者工具