El desarrollo de esta version ha costado 2.140 euros. El coste acumulado para este año es de 17.599 euros. El coste acumulado desde la primera version es de 17.599 euros, pero el coste para ti es solo la licencia de 30€.
Nueva version 4.0.x del plugin MCP Content Manager Premium para WordPress y WooCommerce. Esta version introduce el Hub Snapshot para monitorización multi-sitio sin coste de tokens, un Vulnerability Scanner basado en Wordfence Intelligence con 137 MB de feed CVE, cobertura MCP completa del Hub con ~30 nuevas abilities, Worker/IWP Parity para detección de migraciones de BD y logging nativo de WordPress, y un módulo bancario Enable Banking en modo READ-ONLY para reconciliación PSD2 de pedidos WooCommerce, incorporando ~35 nuevas abilities (de 346 a ~380).
Versiones de la rama
4.0.0
Hub Snapshot (v3.1)
- Nuevo: Polling de snapshot sin coste de tokens — la ability mcm/site-snapshot del lado hijo devuelve el estado completo del sitio en JSON.
- Nuevo: Abilities mcm/hub-site-snapshot y mcm/hub-updates-summary en el hub para una vista multi-sitio cacheada.
- Nuevo: TTL configurable del snapshot (6h por defecto, opción mcm_hub_snapshot_ttl, rango 5min-7d).
- Nuevo: Endpoints REST /mcm-hub/v1/dashboard/sites/<id>/snapshot[/refresh] y /updates-overview.
Vulnerability Scanner (Wordfence Intelligence)
- Nuevo: Scanner de CVE basado en el feed Wordfence Intelligence v3 (137 MB, más de 35000 entradas, TTL 12h).
- Nuevo: 11 abilities principales (mcm/vuln-refresh-feed, vuln-scan, vuln-list, vuln-get, vuln-summary, vuln-report, vuln-resolve, vuln-deactivate-plugin [CONFIRMACION], vuln-update-item [CONFIRMACION], vuln-remediate, vuln-history).
- Nuevo: 8 abilities de hub (mcm/hub-vuln-scan, hub-vuln-list, hub-vuln-summary, hub-vuln-report, hub-vuln-deactivate-plugin [CONFIRMACION], hub-vuln-update-item [CONFIRMACION], hub-vuln-remediate, hub-vuln-history).
- Nuevo: Tabla de base de datos mcm_vulnerabilities con UNIQUE sobre (item_type, item_slug, vuln_id).
- Nuevo: Penalización de puntuación de la auditoría de seguridad por hallazgos abiertos (crítico -20, alto -10, medio -5, bajo -1).
- Nuevo: Hooks de Action Scheduler para refresco de feed (12h) + scan (24h) + scan asíncrono post-actualización.
- Nuevo: Almacenamiento de API key via constante MCM_WORDFENCE_API_KEY o MCM_Credential_Store (AES-256-GCM).
- Nuevo: Página Vulnerabilities en el dashboard con modal de remediación masiva y sparkline de 30 días.
- Nuevo: Badges de CVE en páginas globales de Plugins/Themes y pestañas de SiteDetail.
Hub MCP Coverage (v4.5 — ~30 abilities cerrando la brecha de paridad MCP)
- Nuevo: Conexión de sitio y OAuth — hub-site-oauth-start, hub-site-token-refresh, hub-site-update-metadata, hub-site-reset-connection.
- Nuevo: Actividad y agregación — hub-activity-stats, hub-aggregate (kind: plugins|themes|users|updates), hub-available-owners.
- Nuevo: Ajustes del hub — hub-settings-get, hub-settings-update [CONFIRMACION].
- Nuevo: Grupos de sitios granulares — hub-group-create, hub-group-update, hub-group-assign-site, hub-group-remove-site, hub-group-delete [CONFIRMACION].
- Nuevo: Gestión de clientes — hub-update-client, hub-delete-client [CONFIRMACION].
- Nuevo: Programación de mantenimiento — hub-schedule-preview, hub-plan-delete [CONFIRMACION].
- Nuevo: Alertas — hub-alerts-list, hub-alerts-stats, hub-alerts-acknowledge.
- Nuevo: Seguimiento de tiempo y costes — hub-timer-current, hub-timer-start, hub-timer-stop, hub-timer-pause-resume, hub-cost-add, hub-cost-list, hub-cost-delete, hub-time-report.
- Nuevo: Allowlist del instalador — hub-installer-allowlist-get, hub-installer-allowlist-set.
Worker / IWP Parity (4 sprints independientes)
- Nuevo: Detección de upgrade de BD post-actualización de plugin — MCM_DB_Upgrade_Detector detecta migraciones de BD pendientes tras actualizar plugins (WooCommerce, Elementor, etc.) y devuelve additional_updates en la respuesta.
- Nuevo: Registro de actividad desde hooks de WP — MCM_Activity_Hooks engancha ~15 eventos nativos de WordPress (login, logout, activación de plugin, cambio de tema, cambios de opciones, etc.) en MCM_Action_Logger con source=’hook’.
- Nuevo: Iterador de archivos reanudable — MCM_File_Iterator con checkpoints duraderos en la tabla mcm_iterator_checkpoints. Recorrido de árbol en chunks con tamaño configurable. Usado por Time Machine para snapshots grandes de plugins/themes.
- Nuevo: Capa de compatibilidad de plugins — registro MCM_Plugin_Compat para conflictos conocidos de plugins y sus workarounds.
Módulo Bancario — Enable Banking (credenciales propias, modo restringido, READ-ONLY)
- Nuevo: Integración PSD2 AIS de extremo a extremo. Cada instalación usa su propio App ID de Enable Banking y su clave RSA. Sin PIS (iniciación de pagos). Sin escrituras al banco. Nunca.
- Nuevo: Almacenamiento cifrado de App ID y clave privada RSA via MCM_Credential_Store (AES-256-GCM, clave derivada de AUTH_SALT).
- Nuevo: Cliente PHP puro de Enable Banking que firma JWTs RS256 mediante openssl_sign (sin dependencias externas).
- Nuevo: Registro de consents PSD2 con seguimiento de expiración a 90 días, cálculo de estado y avisos admin a los 10 / 2 / 0 días.
- Nuevo: Caché de respuestas basada en transients (cuentas 1h, balance 15m, transacciones 30m).
- Nuevo: Rate limiter para llamadas iniciadas por TPP que aplica el límite PSD2 de 4 llamadas / cuenta / día (transients con rotación diaria). Las llamadas activadas por admin cuentan como PSU-initiated y no tienen límite.
- Nuevo: Scopes OAuth banking:read y banking:write. banking:write solo autoriza escrituras al estado de pedidos WooCommerce — nunca al banco.
- Nuevo: Helper MCM_OAuth_Interceptor::current_token_has_scope() para la aplicación de scopes por ability.
Abilities Bancarias (9)
- Nuevo: mcm/banking-list-connections — lista los bancos conectados con información de expiración.
- Nuevo: mcm/banking-list-accounts — lista las cuentas visibles con IBANs enmascarados.
- Nuevo: mcm/banking-get-balance — balance contable de una cuenta.
- Nuevo: mcm/banking-list-transactions — transacciones contables con filtros por fecha, importe y descripción.
- Nuevo: mcm/banking-find-payment-for-order — escanea cuentas conectadas buscando candidatos para un pedido WooCommerce con puntuación de confianza (alta/media/baja).
- Nuevo: mcm/banking-unmatched-incoming — transferencias entrantes que no coinciden con ningún pedido WooCommerce en la ventana.
- Nuevo: mcm/banking-missing-payments — pedidos bacs en on-hold sin transacción bancaria correspondiente.
- Nuevo: mcm/banking-mark-order-paid-from-transaction — marca un pedido WooCommerce como processing con una nota privada de referencia bancaria (requiere confirmación).
- Nuevo: mcm/banking-reconcile-pending-orders — reconciliador por lotes con umbral de auto-aplicación y mínimo de confianza (requiere confirmación).
Reconciliación y Automatización
- Nuevo: Puntuación del reconciliador: alta (importe exacto + número de pedido en la remittance), media (importe exacto único en la ventana), baja (importe exacto con colisiones).
- Nuevo: Auto-reconciliación opt-in via Action Scheduler (manual / cada 12h / cada 6h). Bloqueo basado en transient que previene ejecuciones solapadas.
- Nuevo: Callback de redirección PSD2 en /wp-json/mcm-banking/v1/callback que intercambia el código de autorización por una sesión y persiste el consent.
Pestaña Admin del Módulo Bancario
- Nuevo: Settings → MCP Content Manager Premium → Banking. Credenciales, guía de onboarding, tabla de bancos conectados con acción Revoke, ajustes de cron, disclaimer legal y un banner permanente “READ-ONLY — este módulo no puede mover dinero”.
- Nuevo: Avisos admin a los 10 y 2 días antes de la expiración del consent; aviso de error en consent expirado.
- Nuevo: Logger que enmascara IBANs (MCM_Banking_Logger::scrub) y redacta bloques PEM, tokens Bearer y cadenas tipo JWT en los logs.
Garantías de Seguridad
- El cliente HTTP de Enable Banking (includes/banking/class-mcm-banking-enable-client.php) implementa únicamente endpoints AIS: /application, /auth, /sessions, /accounts/{uid}/details, /balances, /transactions. Ningún endpoint de PIS se importa, llama o referencia.
- Todas las respuestas devueltas a los clientes MCP usan IBANs enmascarados; los IBANs completos nunca salen de la capa del proveedor.
- La descripción de cada ability bancaria termina con la frase de salvaguarda “Read-only AIS operation on the bank. Does not initiate payments or move funds.” para que los LLMs vean el límite en el catálogo de herramientas MCP.
Correcciones
- Fix: hub-emergency-login — error de transporte causado por 3 problemas: objeto pasado en lugar de int al proxy, falta de comprobación WP_Error en el resultado del proxy y required en input_schema bloqueando la ejecución antes del handler. Reescrito para imitar el patrón de hub-wp-admin-link (sin schema requerido, parámetros site_id/domain, validación manual).
- Fix: hub-emergency-login — el proxy enviaba el parámetro duration_minutes pero la ability remota security-emergency-login espera minutes.
- Fix: wc-performance-kpis — WC 10.x mezcla objetos OrderRefund en consultas de pedidos; añadida comprobación de tipo para omitir refunds en calculate_kpis().
- Fix: create-snapshot — archivos ZIP vacíos no escritos a disco por algunas versiones de libzip; añadida entrada placeholder .mcm-snapshot + clearstatcache() + diagnósticos de error mejorados (estado de ZipArchive, disk_free_space, is_writable).
- Fix: create-login-token — añadida restricción explícita de solo-Hub con mensaje de error claro cuando se invoca directamente.
- Fix: list-rest-routes — el parámetro limit era aceptado por el handler pero faltaba en input_schema.
- Fix: manage-action-scheduler — la acción stats faltaba en la descripción del input_schema.
- Fix: Unificación de parámetros SAT — sat-translate-post-async y sat-store-term-translation ahora usan target_language como nombre principal del parámetro (con alias por compatibilidad hacia atrás).
- Fix: Documentados alias de parámetros en 5 schemas de abilities (manage-post-meta, read-template, builder-compare, db-table-info, hub-emergency-login).
Puedes adquirir la licencia de MCP Content Manager Premium en la pagina del producto.







