saying "Logs" and a line restating the tab's // purpose only pushed the content down. echo '
'; // F096 — the same React app the global Activity page mounts, filtered to // this server with the Server column hidden. One component, two mount // points; the only difference is this bootstrap payload. ActivityLogPage::instance()->enqueue_bundle( array( 'serverId' => $server_id, 'showServer' => false, 'rootId' => 'acrossai-mcp-activity-root', ) ); echo '
'; // The third-party plugin this tab used to advertise. Kept as a // secondary note rather than an install CTA: both logs can run at once // (different tables, no interference), and an operator who already has // it should be told why they are seeing two. if ( defined( 'WPVMCPT_PLUGIN_VERSION' ) || class_exists( 'WPVMCPT\\Plugin' ) ) { $tracker_url = admin_url( 'admin.php?page=wpvmcpt-requests-list&server=' . rawurlencode( $server_slug ) ); printf( '

%s %s

', esc_html__( 'MCP Tracker is also active on this site and logs the same traffic independently.', 'acrossai-mcp-manager' ), esc_url( $tracker_url ), esc_html__( 'Open MCP Tracker', 'acrossai-mcp-manager' ) ); } echo '
'; } }