Rhymix的MCP服务器
______________________________________________________________________
英语
概述
MCP服务器 是可以应用于Rhymix CMS的模型上下文协议(MCP)服务器模块。该模块为AI客户端访问Rhymix的数据和功能提供了一个标准化的接口。
此模块是一个移植 php-mcp/服务器 用于Rhymix。\ 对于MCP工具、提示和插件开发,您应该参考上面的存储库。
\[!重要\] 本模块要求在安装过程中对服务器和Rhymix有深入的了解。\ 更改服务器设置时,您必须知道自己在做什么,并相应地继续操作。
什么是模型上下文协议(MCP)?
MCP是一种开放标准协议,旨在允许AI助手安全地连接到外部工具和数据源。这允许AI客户端利用各种应用程序和服务的功能。
主要特点
- ✨ 标准化MCP协议 支持
- 🔧 可扩展工具系统 -用户可以开发自己的MCP工具
- 🔍 自动目录扫描 -自动扫描来自单独模块的MCP插件
安装要求
- PHP 8.2或更高版本
- Rhymix 2.1或更高版本
- 需要Linux Shell访问权限
安装方法
- 将模块复制到
modules/mcpserverRhymix的目录。 - 在中配置设置 高级 > 已安装的模块 > MCP服务器.
配置选项
服务器设置
- 服务器名称:MCP服务器标识符
- 服务器版本:版本信息
- 主机:服务器将绑定到的IP地址(默认值:127.0.0.1)
- 端口:服务器将使用的端口(默认值:8080)
- MCP路径:MCP端点路径(默认值:/MCP)
通信设置
- 启用SSE:是否使用服务器发送事件
- 无状态模式:是否启用无状态模式
日志记录设置
- 日志输出:启用控制台日志输出
- 日志级别:选择要输出的日志级别(调试、信息、警告、错误等)
正在运行MCP服务器
此模块需要运行与Rhymix分开的服务器。\ 参见 模块>配置手册 运行脚本并在nginx等服务器程序中进行必要的反向代理配置更改。
开发自定义MCP工具
基本结构
自定义MCP工具在 modules/(any module)/mcp/ 目录。所有MCP工具类必须继承自 \Rhymix\Modules\Mcpserver\Models\MCPServerInterface.
示例:计算器工具(ExampleCalculatorElements.php)
$member_srl]);
if (!$output->toBool()) {
throw new \Exception('Cannot get member info: ' . $output->getMessage());
}
$member = $output->data;
return [
'member_srl' => $member->member_srl,
'user_id' => $member->user_id,
'nick_name' => $member->nick_name,
'email_address' => $member->email_address
];
}
/**
* Retrieves document list.
*/
#[McpTool(name: 'get_document_list')]
public function getDocumentList(int $module_srl, int $page = 1): array
{
$args = new \stdClass();
$args->module_srl = $module_srl;
$args->page = $page;
$args->list_count = 10;
$output = executeQueryArray('document.getDocumentList', $args);
if (!$output->toBool()) {
throw new \Exception('Cannot get document list: ' . $output->getMessage());
}
return [
'total_count' => $output->total_count,
'documents' => $output->data
];
}
}架构验证
在MCP工具中,您可以使用 Schema 属性:
#[McpTool(name: 'validated_tool')]
public function validatedMethod(
#[Schema(type: 'string', minLength: 1, maxLength: 100)]
string $text,
#[Schema(type: 'integer', minimum: 1, maximum: 999)]
int $number,
#[Schema(type: 'number', minimum: 0.0, maximum: 100.0)]
float $percentage
): array {
return [
'text' => $text,
'number' => $number,
'percentage' => $percentage
];
}有关更多信息,请参阅 php-mcp/服务器.
调试
日志检查
MCP服务器根据配置输出详细日志。通过日志,您可以查看:
- 客户端连接/断开
- 工具调用和响应
- 错误和异常信息
连接测试
使用管理页面上的“本地连接测试”功能验证MCP服务器是否正常工作。
注意事项
- 在安全关键环境中使用具有适当防火墙设置的MCP服务器。
- 建议在生产环境中禁用DEBUG日志级别。
- 在自定义工具中使用数据库时,执行适当的权限检查。
许可证
此模块根据GPL v2许可证分发。
开发者
- 船票 (waterticket@potatosoft.kr)
- 网站:https://potatosoft.kr
- 模块生成器:https://www.poesis.dev/
技术支持
如果您遇到问题或需要帮助:
- 在 Rhymix官方社区
- 注册GitHub问题(如适用)
______________________________________________________________________
韩语
概述
MCP服务器是可应用于Rhymix CMS的Model Context Protocol(MCP)服务器模块。通过该模块,AI客户端可以访问Remix的数据和功能,提供标准化的界面。
这个模块 php-mcp/服务器移植程序,以便在混搭中使用。\ MCP工具、提示和插件开发应参考上述存储库进行开发。
\[!重要\] 本模块要求您在安装过程中对服务器和混合机有深入的了解。\ 更改服务器设置时,必须了解自己在做什么并继续。
模型上下文协议(MCP)란?
MCP是一种开放式标准协议,旨在让AI助手安全地连接到外部工具和数据源。这使AI客户端可以利用各种应用程序和服务的功能。
主要功能
- ✨ 标准化MCP协议 支持
- 🔧 可扩展的工具系统 -用户可以自行开发MCP工具
- 🔍 自动目录扫描 -自动扫描,以便在单独的模块中使用MCP插件
安装要求
- PHP 8.2或更高版本
- Rhymix 2.1或更高版本
- 必须能够使用Linux Shell
安装方法
- 将模块
modules/mcpserver复制到目录。 - 高级 > 安装的模块 > MCP服务器 在中配置设置。
设置选项
服务器设置
- 服务器名称:MCP服务器的标识名
- 服务器版本:版本信息
- 主机:服务器要绑定的IP地址(默认值:127.0.0.1)
- 端口:服务器要使用的端口(默认为8080)
- MCP路径:MCP端点路径(默认:/mcp)
通信设置
- 启用SSE:是否使用Server-Sent Events
- Stateless模式:是否启用无状态模式
日志记录设置
- 日志输出:启用控制台日志输出
- 日志级别:选择要输出的日志级别(DEBUG、INFO、WARNING、ERROR等)
运行MCP服务器
此模块必须独立于Remix运行服务器。\ 模块>设置手册运行脚本,需要更改服务器程序(如nginx)的反向代理设置。
开发自定义MCP工具
基本结构
定制MCP工具 modules/(임의의 모듈)/mcp/ 在目录中创建。所有MCP工具类 \Rhymix\Modules\Mcpserver\Models\MCPServerInterface必须继承。
示例:计算器工具(Example CalculatorElements.php)
$member_srl]);
if (!$output->toBool()) {
throw new \Exception('회원 정보를 가져올 수 없습니다: ' . $output->getMessage());
}
$member = $output->data;
return [
'member_srl' => $member->member_srl,
'user_id' => $member->user_id,
'nick_name' => $member->nick_name,
'email_address' => $member->email_address
];
}
/**
* 게시물 목록을 조회합니다.
*/
#[McpTool(name: 'get_document_list')]
public function getDocumentList(int $module_srl, int $page = 1): array
{
$args = new \stdClass();
$args->module_srl = $module_srl;
$args->page = $page;
$args->list_count = 10;
$output = executeQueryArray('document.getDocumentList', $args);
if (!$output->toBool()) {
throw new \Exception('게시물 목록을 가져올 수 없습니다: ' . $output->getMessage());
}
return [
'total_count' => $output->total_count,
'documents' => $output->data
];
}
}验证方案
MCP工具包括: Schema 可以使用“属性”设置输入参数的验证:
#[McpTool(name: 'validated_tool')]
public function validatedMethod(
#[Schema(type: 'string', minLength: 1, maxLength: 100)]
string $text,
#[Schema(type: 'integer', minimum: 1, maximum: 999)]
int $number,
#[Schema(type: 'number', minimum: 0.0, maximum: 100.0)]
float $percentage
): array {
return [
'text' => $text,
'number' => $number,
'percentage' => $percentage
];
}如果您想要更多信息 php-mcp/服务器请参考。
调试
检查日志
MCP服务器根据设置输出详细日志。通过日志可以查看以下信息:
- 连接/断开客户端
- 调用和响应工具
- 错误和异常信息
测试连接
在管理员页面上,可以使用“测试本地连接”功能检查MCP服务器是否正常工作。
注意事项
- 在安全性要求较高的环境中,请使用MCP服务器并设置适当的防火墙。
- 建议在生产环境中禁用DEBUG日志级别。
- 在自定义工具中使用数据库时执行适当的权限检查。
许可证
该模块在GPL v2许可下分发。
开发者
- 船票 (waterticket@potatosoft.kr)
- 网站:https://potatosoft.kr
- 模块生成器:https://www.poesis.dev/
技术支持
如果遇到问题或需要帮助:
- LIMIX官方社区在中提问
- GitHub问题注册(如果适用)
