PHPackages                             jose-chan/laravel-mcp-server - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. jose-chan/laravel-mcp-server

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jose-chan/laravel-mcp-server
============================

A mcp server for laravel

v0.1.2(5mo ago)01MITPHPPHP ^7.1.3

Since Nov 29Pushed 5mo agoCompare

[ Source](https://github.com/ILoveJoseM/mcp-server)[ Packagist](https://packagist.org/packages/jose-chan/laravel-mcp-server)[ RSS](/packages/jose-chan-laravel-mcp-server/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (7)Versions (4)Used By (0)

Laravel MCP Server
==================

[](#laravel-mcp-server)

一个用于 Laravel 框架的 MCP (Model Context Protocol) 服务器实现，提供标准化的工具调用、资源管理和提示词功能。

功能特性
----

[](#功能特性)

- 🛠️ **工具管理**: 支持注册和调用自定义工具
- 📁 **资源管理**: 提供资源列表、读取和模板功能
- 💬 **提示词管理**: 支持提示词列表和获取
- 🔧 **灵活配置**: 通过环境变量和配置文件灵活调整
- 🌐 **HTTP 接口**: 提供 RESTful API 和 SSE 支持
- 📝 **标准协议**: 完全兼容 MCP 协议规范 (2024-11-05)

系统要求
----

[](#系统要求)

- PHP &gt;= 7.1.3
- Laravel Framework &gt;= 5.6
- Symfony YAML Component &gt;= 5.3

安装说明
----

[](#安装说明)

### 1. 使用 Composer 安装

[](#1-使用-composer-安装)

```
composer require jose-chan/laravel-mcp-server
```

### 2. 发布配置文件

[](#2-发布配置文件)

安装完成后，发布配置文件到您的应用中：

```
php artisan vendor:publish --provider="JoseChan\McpServer\Providers\McpServerServiceProvider" --tag="mcp-server"
```

这将在 `config/` 目录下创建 `mcp-server.php` 配置文件。

### 3. 配置环境变量

[](#3-配置环境变量)

在您的 `.env` 文件中添加以下配置（可选，所有配置项都有默认值）：

```
# 服务器基本信息
MCP_SERVER_NAME=laravel-mcp-server
MCP_SERVER_VERSION=1.0.0

# 资源和提示词存储目录
MCP_RESOURCE_DIRECTORY=storage/mcp_resources
MCP_PROMPTS_DIRECTORY=storage/mcp_prompts

# 功能开关
MCP_CAPABILITY_RESOURCES=true
MCP_CAPABILITY_RESOURCES_SUBSCRIBE=true
MCP_CAPABILITY_RESOURCES_LIST_CHANGED=true
MCP_CAPABILITY_TOOLS=true
MCP_CAPABILITY_TOOLS_LIST_CHANGED=true
MCP_CAPABILITY_TOOLS_CALL=true
MCP_CAPABILITY_PROMPTS=true
MCP_CAPABILITY_PROMPTS_LIST_CHANGED=true
MCP_CAPABILITY_LOGGING=false
MCP_CAPABILITY_EXPERIMENTAL=false

# SSE 配置
MCP_SSE_TIMEOUT=30
MCP_SSE_RETRY=3000
```

配置发布说明
------

[](#配置发布说明)

### 配置文件说明

[](#配置文件说明)

配置文件位于 `config/mcp-server.php`，包含以下主要部分：

#### 1. 服务器信息

[](#1-服务器信息)

```
'server' => [
    'name' => env('MCP_SERVER_NAME', 'laravel-mcp-server'),
    'version' => env('MCP_SERVER_VERSION', '1.0.0'),
],
```

#### 2. 协议版本

[](#2-协议版本)

```
'protocol_version' => '2024-11-05',
```

#### 3. 存储目录

[](#3-存储目录)

```
'resource_directory' => env('MCP_RESOURCE_DIRECTORY', storage_path('mcp_resources')),
'prompts_directory' => env('MCP_PROMPTS_DIRECTORY', storage_path('mcp_prompts')),
```

#### 4. 功能能力配置

[](#4-功能能力配置)

```
'capabilities' => [
    'resources' => [
        'enabled' => env('MCP_CAPABILITY_RESOURCES', true),
        'subscribe' => env('MCP_CAPABILITY_RESOURCES_SUBSCRIBE', true),
        'list_changed' => env('MCP_CAPABILITY_RESOURCES_LIST_CHANGED', true),
    ],
    'tools' => [
        'enabled' => env('MCP_CAPABILITY_TOOLS', true),
        'list_changed' => env('MCP_CAPABILITY_TOOLS_LIST_CHANGED', true),
        'call' => env('MCP_CAPABILITY_TOOLS_CALL', true),
    ],
    // ... 更多配置
],
```

#### 5. 路由配置

[](#5-路由配置)

```
'route' => [
    'prefix' => 'mcp',
    'middleware' => ['api'],
],
```

#### 6. 工具注册

[](#6-工具注册)

```
'tools' => [
    // 在这里添加更多工具类
    // App\\Tools\\MyTool::class,
],
```

配置项说明
-----

[](#配置项说明)

环境变量默认值说明MCP\_SERVER\_NAMElaravel-mcp-serverMCP 服务器名称MCP\_SERVER\_VERSION1.0.0服务器版本MCP\_RESOURCE\_DIRECTORYstorage/mcp\_resources资源存储目录MCP\_PROMPTS\_DIRECTORYstorage/mcp\_prompts提示词存储目录MCP\_CAPABILITY\_RESOURCEStrue是否启用资源功能MCP\_CAPABILITY\_TOOLStrue是否启用工具功能MCP\_CAPABILITY\_PROMPTStrue是否启用提示词功能MCP\_CAPABILITY\_LOGGINGfalse是否启用日志功能MCP\_SSE\_TIMEOUT30SSE 超时时间（秒）MCP\_SSE\_RETRY3000SSE 重连间隔（毫秒）使用说明
----

[](#使用说明)

### 1. 命令行模式

[](#1-命令行模式)

您可以通过STDIO模式启动 MCP 服务器：

```
php artisan mcp:server
```

该命令将启动标准输入输出模式的 MCP 服务器，适用于与支持标准输入输出的 MCP 客户端集成。

### 2. HTTP API 模式

[](#2-http-api-模式)

服务器也提供 HTTP API 接口，可通过以下端点访问：

- `POST /mcp` - MCP 初始化和请求处理
- `GET /mcp/sse` - Server-Sent Events 实时通信

### 3. 添加自定义工具

[](#3-添加自定义工具)

1. 创建工具类：

框架将读取所有注册的工具类下的静态方法作为工具返回给MCP-Client调用。 方法的注释将按照标准的PHPDoc格式解析后，提取工具的描述和参数信息传递给MCP-Client

```
