PluginProbe ʕ •ᴥ•ʔ
Atarim – AI Agency for WordPress: Edit Pages, Fix Code, Update Plugins, SEO & Client Feedback / trunk
Atarim – AI Agency for WordPress: Edit Pages, Fix Code, Update Plugins, SEO & Client Feedback vtrunk
5.1.3 5.1.2 5.1.1 5.1 5.0 trunk 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.2.0 3.2.1 3.22 3.22.1 3.22.2 3.22.3 3.22.4 3.22.5 3.22.6 3.3.0 3.3.1 3.3.2 3.3.2.1 3.3.2.2 3.3.3 3.30 3.31 3.32 3.4 3.4.1 3.4.3 3.4.4 3.5 3.5.1 3.6 3.6.1 3.7 3.8 3.9 3.9.1 3.9.2 3.9.3 3.9.4 3.9.6 3.9.6.1 4.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.2 4.1.3 4.2 4.2.1 4.2.2 4.3 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.4
atarim-visual-collaboration / doit / class-avcf-mcp-auth.php
atarim-visual-collaboration / doit Last commit date
abilities 1 day ago avcf-cluster-loader.php 1 day ago class-avcf-diagnostic.php 3 weeks ago class-avcf-mcp-auth.php 3 weeks ago class-avcf-mcp.php 1 day ago
class-avcf-mcp-auth.php
40 lines
1 <?php
2 if ( ! defined('ABSPATH') ) {
3 exit;
4 }
5
6 class AVCF_MCP_Auth {
7
8 private $function;
9
10 public function __construct() {
11 $this->function = new AVCF_Functions();
12 }
13
14 /**
15 * Get the MCP token saved by Atarim backend during site connection.
16 */
17 public function avcf_mcp_get_token() {
18 return $this->function->avcf_get_setting_data( 'avc_atarim_secret_token' );
19 }
20
21 /**
22 * Validate the incoming MCP request.
23 * Checks X-Atarim-Token header against token saved during site connection.
24 */
25 public function avcf_mcp_validate_request() {
26 $incoming_token = '';
27 if ( isset( $_SERVER['HTTP_X_ATARIM_TOKEN'] ) ) {
28 $incoming_token = sanitize_text_field( wp_unslash( $_SERVER['HTTP_X_ATARIM_TOKEN'] ) );
29 }
30
31 $stored_token = $this->avcf_mcp_get_token();
32
33 if ( empty( $incoming_token ) || empty( $stored_token ) ) {
34 return false;
35 }
36
37 return hash_equals( $stored_token, $incoming_token );
38 }
39
40 }