项目简介
'laravel-mcp-apps' 是一个基于 Laravel 框架的开发套件,旨在帮助开发者快速构建符合模型上下文协议 (MCP) 标准的服务器端应用,以及与 OpenAI 兼容的智能应用。它利用官方的 'laravel/mcp' 包,提供了一个完整的开发环境,包括用户认证(通过 Passport)、前端界面(基于 Vue.js),并内置了一个天气工具的 MCP 服务器示例。
主要功能点
- LLM 后端服务: 提供了一个完整的 Laravel 项目结构,用于开发和托管符合 MCP 规范的后端服务,能够响应 LLM 客户端的上下文请求、工具调用和 Prompt 模板渲染。
- OpenAI 兼容集成: 包含一个基于 Vue.js 的前端应用示例,展示了如何与 MCP 服务器交互,并兼容 OpenAI 的插件/工具调用机制。
- 可扩展的工具和资源: 通过 MCP 服务器提供数据访问能力,并注册可供 LLM 调用的外部功能(例如示例中的天气工具)。
- 会话管理与能力声明: 服务器端负责处理客户端会话,并声明其提供的能力清单。
- 多种传输协议支持: 示例配置中使用了 SSE (Server-Sent Events) 协议进行通信,符合 MCP 协议定义,支持 LLM 客户端与服务器的实时交互。
- 安全认证与授权: 集成了 Laravel Passport 用于 OAuth 认证,确保 MCP 服务器及其提供的上下文服务的安全访问。
安装步骤
- 克隆仓库:
在您的本地开发环境中,通过 Git 克隆项目仓库:
git clone https://github.com/zacksmash/laravel-mcp-apps.git cd laravel-mcp-apps - 运行安装脚本:
执行以下命令,完成项目的所有初始设置:
此命令将自动执行以下操作:composer setup- 安装 PHP 依赖(通过 Composer)。
- 如果 '.env' 文件不存在,将 '.env.example' 复制为 '.env'。
- 生成应用程序密钥。
- 运行数据库迁移,创建所需的数据库表。
- 安装 Node.js 依赖(通过 npm 或 Yarn)。
- 启动开发服务器:
启动 MCP 开发流程并打开 MCPJam 检查器(一个用于测试 MCP 服务器的客户端工具):
此命令将启动 Laravel 开发服务器,并尝试在浏览器中打开 MCPJam。在 MCPJam 启动界面,您可以选择创建账户、登录,或点击右上角的 "X" 直接进入仪表板。composer dev:mcp
MCP 服务器配置 (供 MCP 客户端使用)
MCP 客户端需要以下配置信息来连接并使用本 MCP 服务器。请注意,以下是 JSON 格式的配置示例,您不需要将其作为代码运行,只需将其提供给 MCP 客户端(如 MCPJam、ChatGPT 自定义连接器等)进行配置:
{ "mcpServers": { "laravel-mcp-apps": { "type": "sse", "url": "http://laravel-mcp-apps.test/mcp" } } }
配置参数说明:
- 'server name': MCP 服务器的唯一标识名称,此处建议使用 'laravel-mcp-apps'。
- 'type': 服务器支持的传输协议类型,此处为 'sse' (Server-Sent Events),表示服务器通过事件流方式与客户端通信。
- 'url': MCP 服务器的访问地址。在开发环境中,这通常是您本地 Laravel 应用的 MCP 路由地址,例如 'http://laravel-mcp-apps.test/mcp'。请确保您的 Laravel 应用已正确配置域名解析(例如使用 Laravel Valet 或 Homestead)。
基本使用方法
- 在 MCPJam 中导入配置: 在 'composer dev:mcp' 命令启动后打开的 MCPJam 检查器中,找到 "Import JSON" 选项并点击。然后,将上述 MCP 服务器配置粘贴到导入框中,确认导入。
- 测试天气工具: 成功导入配置后,您可以在 MCPJam 的界面中导航到 "Tools" (工具) 部分。您应该会看到示例中包含的 'weather-tool'。点击该工具,然后点击 "Execute" (执行) 按钮。MCPJam 将模拟一个 LLM 客户端调用此天气工具,并显示返回的结果,验证 MCP 服务器功能是否正常运行。
信息
分类
开发者工具