Laravel 12 Docs MCP Server
Laravel Docs MCP 服务器
⚠️ Alpha Software - 本项目尚处于早期开发阶段。功能可能无法按预期运行,且可能会发生重大变更,恕不另行通知。
面向 Laravel 开发者的 AI 助手,通过模型上下文协议 (MCP) 提供最新的 Laravel 文档和智能软件包推荐。这使得 AI 工具能够帮助您使用最新信息和最佳实践构建 Laravel 应用程序。
概述
该服务器使 AI 助手能够使用模型上下文协议 (MCP) 访问 Laravel 文档和软件包推荐。它允许 AI 工具:
访问和搜索 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-mcpDocker
# 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从源代码手动安装
先决条件
Python 3.12+
uv包管理器(推荐)
步骤
克隆存储库:
git clone https://github.com/brianirish/laravel-docs-mcp.git cd laravel-docs-mcp设置环境并安装依赖项:
# 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) |
| 服务器名称(默认:LaravelDocs) |
| 日志级别:DEBUG、INFO、WARNING、ERROR、CRITICAL(默认:INFO) |
| 传输方式:stdio、websocket、sse(默认:stdio) |
| 绑定到的主机(网络传输) |
| 监听端口(网络传输) |
| Laravel 版本分支(默认:12.x) |
| 开始之前更新文档 |
| 强制文档更新 |
自定义选项的示例:
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 --forceAPI 参考
客户端示例
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.mdlaravel://authentication.md
自动化工作流程
该项目包括几个自动化的 GitHub Actions 工作流程:
每日文档更新
触发方式:每天 UTC 午夜(也可手动触发)
流程:检查 Laravel 文档更新 → 创建 PR → 自动合并 → 创建补丁版本标签
结果:Laravel 文档更新时自动发布补丁
发布出版
触发器:当推送版本标签时(例如,
v0.1.4)流程:构建软件包 → 发布到 PyPI → 构建并将 Docker 镜像推送到 GHCR
结果:PyPI 和 Docker Hub 上的同步发布
动态版本控制
版本来源:使用
hatch-vcs自动从 git 标签派生开发版本:获取唯一标识符(例如,
0.1.3.dev1+g75aec71)发布版本:清除与标签匹配的版本号(例如
0.1.4)
功能和路线图
当前功能:
✅每日文档更新:每天自动与 Laravel 的 GitHub 存储库同步
✅动态版本控制:基于 git 标签的自动版本管理
✅自动发布:由文档更新触发的补丁发布
✅多种部署选项:PyPI 包、Docker 镜像和 Smithery 市场
✅软件包推荐:根据具体用例的智能建议
✅实施指南:常见 Laravel 软件包的详细信息
✅灵活的配置:支持多个 Laravel 版本和传输方法
✅优雅关闭:适当的清理和信号处理
计划功能:
🔄 多版本支持(同时访问多个 Laravel 版本的文档)
🔍 用户项目分析,提供定制化推荐
🚀 通过语义匹配增强搜索功能
📊 使用情况分析和见解
🔗 其他 Laravel 生态系统集成
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
贡献
欢迎贡献!请参阅 CONTRIBUTING.md 获取相关指南。
致谢
Laravel 的优秀文档
Laravel 软件包作者对生态系统的贡献
This server cannot be installed
Maintenance
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