Laravel MCP推送器
Laravel包通过HTTP API将项目中的经验教训和项目实施细节推送到中央MCP服务器。与合作 MCP服务器经验教训 因此,AI代理(例如Cursor)可以查询您的知识库。
重要:此包推送到 远程MCP服务器 通过HTTP API。确实如此 不 与本地数据库交互或包含Lesson模型类。
需求
- PHP 8.2+
- Laravel 12.x或13.x
- 接受推送的MCP服务器(例如。 MCP服务器经验教训)
安装
composer require ashwinmram/mcp-pusher配置
将MCP配置添加到项目的 config/services.php:
'mcp' => [
'server_url' => env('MCP_SERVER_URL'),
'api_token' => env('MCP_API_TOKEN'),
],将环境变量添加到您的 .env:
MCP_SERVER_URL=https://your-mcp-server.com
MCP_API_TOKEN=your-api-token-here用法
工作流程: 在每个编码会话结束时,填充经验教训和项目详细信息文件(docs/lessons-learned.md, docs/lessons_learned.json, docs/project-details.md, docs/project_details.json)根据需要。在推送之前,每个命令至少需要一个源文件中的内容。 每次成功推送后,源文件都会被截断(清空) --这可以防止重复推送。在下一个会话结束时重新生成文件,然后再次推送。
推荐的AI提示
通用课程
使用此提示生成会话无关的课程:
Let's update lessons-learned.md and lessons_learned.json files and with any lessons learned during this session and save it to the docs folder. Please ensure the json title and summary are AI friendly so that an AI Agent will easily be able to discern whether or not to use the skill.项目具体经验教训
使用此提示捕获存储库/项目实施详细信息:
Let's update two files in the docs folder: project-details.md and project_details.json with any project specific lessons learned during this session. Please ensure the json title and summary are AI friendly so that an AI Agent will easily be able to discern whether or not to use the skill.推送课程
php artisan mcp:push-lessons --source=your-project| 选项 | 描述 |
|---|---|
--source= | 源项目名称(默认:目录名)。必须匹配 project 连接到项目详细信息MCP时的查询参数。 |
--lessons-learned= | 通往 lessons-learned.md (默认值: docs/lessons-learned.md) |
--lessons-json= | 通往 lessons_learned.json (默认值: docs/lessons_learned.json) |
推送项目详细信息
php artisan mcp:push-project-details --source=your-project| 选项 | 描述 |
|---|---|
--source= | 源项目名称(必须匹配 ?project= 在项目详细信息MCP URL中) |
--project-details-file= | markdown文件的路径(默认值: docs/project-details.md) |
--project-details-json-dir= | 目录 project_details.json 或 project_details_*.json (默认值: docs) |
--no-truncate | 成功推送后不要清空源文件 |
文件布局
默认情况下,包从以下位置读取:
your-project/
└── docs/
├── lessons-learned.md ← Markdown lessons (optional)
├── lessons_learned.json ← JSON array of lessons (optional)
├── project-details.md ← Markdown project details (optional)
└── project_details.json ← JSON array of project details (optional)课程 被推到 /api/lessons; 项目详情 到 /api/project-details。您至少需要一个包含每个命令内容的源文件。
运作原理
课程
lessons-learned.md:分类为guidelines带有标签:laravel,lessons-learned,guidelines,best-practices,markdownlessons_learned.json:JSON数组;每个对象都可以具有title,summary,category,subcategory,type,tags,content,metadata.使用对象的类别和标签;内容关键字添加更多标签(例如“害虫”→pest).
项目详情
project-details.md:与学习的课程相同的H2/H3/H4结构.mdproject_details.json或 **project_details_*.json**:与课程字段顺序相同的JSON数组(title,summary,category,subcategory,type,tags,content,metadata).使用type"project_detail"或"ai_output".
API
标准化数据被发布到远程MCP服务器。服务器处理存储、重复数据删除(通过内容哈希)和验证。
MCP服务器
此包推送到MCP服务器,该服务器公开 /api/lessons 和 /api/project-details。有关现成的服务器,请参阅 MCP服务器经验教训.
许可证
麻省理工学院
