From b6ab672f42544562e176a7e16e348aef508e784e Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Mon, 11 May 2026 02:07:24 +0200 Subject: [PATCH] Debug v24 --- htdocs/ai/server/mcp_server.php | 16 +++++++++++----- {htdocs/ai/scripts => scripts/ai}/purge_logs.php | 0 2 files changed, 11 insertions(+), 5 deletions(-) rename {htdocs/ai/scripts => scripts/ai}/purge_logs.php (100%) diff --git a/htdocs/ai/server/mcp_server.php b/htdocs/ai/server/mcp_server.php index ef002c569d5..b7fd42c1821 100644 --- a/htdocs/ai/server/mcp_server.php +++ b/htdocs/ai/server/mcp_server.php @@ -41,6 +41,11 @@ if (!defined('NOCSRFCHECK')) { define('NOLOGIN', 1); require '../../main.inc.php'; +/** + * @var DoliDB $db + * @var Conf $conf + * @var User $user + */ require_once DOL_DOCUMENT_ROOT . '/ai/class/mcp_protocol.class.php'; while (ob_get_level()) { @@ -57,7 +62,10 @@ if (!isModEnabled('ai') || !getDolGlobalString('AI_MCP_ENABLED')) { exit; } -global $db, $conf, $user; + +/* + * View + */ // Headers header('Content-Type: application/json'); @@ -80,6 +88,7 @@ if (!empty($storedKey)) { // Authorization: Bearer if (!$valid && !empty($authHeader)) { + $matches = array(); if (preg_match('/^Bearer\s+(.+)$/i', $authHeader, $matches)) { $token = trim($matches[1]); $valid = hash_equals($storedKey, $token); @@ -88,10 +97,7 @@ if (!empty($storedKey)) { } if (!$valid) { - dol_syslog( - '[MCP Server] Unauthorized access attempt. IP=' . ($_SERVER['REMOTE_ADDR'] ?? 'unknown'), - LOG_WARNING - ); + dol_syslog('[MCP Server] Unauthorized access attempt. IP=' . ($_SERVER['REMOTE_ADDR'] ?? 'unknown'), LOG_WARNING); http_response_code(401); echo json_encode([ diff --git a/htdocs/ai/scripts/purge_logs.php b/scripts/ai/purge_logs.php similarity index 100% rename from htdocs/ai/scripts/purge_logs.php rename to scripts/ai/purge_logs.php