Agent Pilot
Agent Pilot convierte tu sitio WordPress en un servidor MCP (Model Context Protocol) remoto y seguro. Instálalo, conecta Claude — desde claude.ai en la web, Claude Desktop o Claude Code — y tu sitio pasa a ser algo que Claude puede operar de verdad: buscar entradas y productos, redactar y editar páginas respetando tu identidad de marca, actualizar pedidos de WooCommerce, moderar comentarios, vaciar cachés y mucho más.
Lo difícil de dar a una IA acceso a tu sitio es hacerlo de forma segura. Agent Pilot está construido en torno a ese problema. Cada conexión pasa por un handshake completo de OAuth 2.1, cada token de acceso queda vinculado a un usuario concreto de WordPress y cada herramienta vuelve a comprobar las capacidades de ese usuario antes de ejecutarse. Claude nunca puede hacer más que la persona que lo autorizó — y todo lo que hace queda registrado en un log de auditoría que puedes revisar y revocar en cualquier momento.

Puntos fuertes
- Basado en estándares y agnóstico de cliente. Un servidor MCP conforme sobre el transporte Streamable-HTTP con OAuth 2.1 completo (código de autorización + PKCE + refresh, Dynamic Client Registration). Funciona de inmediato con los conectores personalizados de claude.ai, Claude Desktop y Claude Code.
- Multiusuario y multiinstancia. Conecta varias instancias de Claude — incluso como usuarios distintos de WordPress. Cada token queda vinculado al usuario que lo aprobó y limitado al rol de ese usuario. El conector de un gestor de la tienda solo ve lo que un gestor de la tienda puede hacer.
- 25 herramientas integradas en cuatro ámbitos de permiso — lectura, creación de contenido, WooCommerce y gestión del sitio — más un ámbito opcional de base de conocimiento de Chatbot Pilot y cualquier herramienta que aporten otros plugins Pilot (facturación, correo transaccional, seguridad, SEO, suscripciones).
- Control de herramientas por rol y por usuario. Una pantalla Tools dedicada activa o desactiva cada herramienta — o un ámbito completo — para cualquier rol de WordPress o usuario individual. Los administradores reciben todo de forma predeterminada; cualquier otro rol empieza vacío y se le concede exactamente lo que necesita.
- Ediciones de contenido quirúrgicas.
wp_replace_in_postrealiza ediciones puntuales de buscar y reemplazar, para que Claude pueda corregir una errata en una página de Divi o Elementor sin reescribir miles de líneas del marcado del maquetador. - Defensa en profundidad. Una pantalla de consentimiento, dobles comprobaciones de ámbito contra capacidad, confirmación por llamada para las acciones destructivas, un log de auditoría completo, limitación de tasa, una lista de IP permitidas opcional y rotación de claves con un clic.
- Cifrado en reposo. La clave de firma de OAuth se genera al activar el plugin y se almacena cifrada con tus salts de WordPress (o se guarda en un archivo fuera de la base de datos, si lo prefieres).
- Sin ataduras ni telemetría. Autoalojado. Tus datos y las credenciales de tu proveedor de IA nunca pasan por nuestros servidores.
Cómo funciona
Dos estándares abiertos hacen el trabajo pesado:
- OAuth 2.1 responde a «¿quién tiene permitido entrar y para hacer qué?». Cuando un cliente de Claude llega por primera vez a tu sitio no tiene token, así que se le envía a un flujo de inicio de sesión y consentimiento. Un administrador aprueba un conjunto de ámbitos y el cliente recibe un token de acceso firmado y con tiempo limitado.
- MCP (Model Context Protocol) responde a «¿qué puede hacer realmente el
agente?». Una vez autenticado, Claude llama a un único endpoint que expone
una lista de herramientas —
wp_list_posts,wp_save_post,wc_list_orders, etc. Claude solo ve las herramientas que su token tiene permitido usar.
El descubrimiento, el inicio de sesión, el consentimiento y el intercambio de tokens ocurren todos automáticamente la primera vez que añades el conector. A partir de ahí Claude se reconecta en silencio usando su refresh token.
Requisitos
| Componente | Recomendado |
|---|---|
| WordPress | 5.8 o posterior (probado hasta 7.0) |
| PHP | 8.0 o posterior |
| WooCommerce | 7.0+ (opcional — las herramientas de Woo solo aparecen cuando está activo) |
| Chatbot Pilot | opcional — las herramientas de base de conocimiento solo aparecen cuando está activo |
| HTTPS | Obligatorio para claude.ai web; recomendado en todos los casos |
| Salts de WordPress | AUTH_KEY / SECURE_AUTH_KEY únicos en wp-config.php (se usan para cifrar la clave de firma) |
| Accesibilidad | claude.ai se conecta desde la nube de Anthropic, así que el sitio debe ser accesible públicamente para el cliente web (los clientes locales pueden usar una URL local) |
Instalación
- Abre Plugins → Añadir nuevo → Subir plugin en el administrador de WordPress y sube el archivo ZIP de Agent Pilot.
- Activa Agent Pilot. Al activarse crea sus tablas en la base de datos,
concede la capacidad
manage_agent_pilota los administradores y genera las claves de firma de OAuth automáticamente. - Abre Agent Pilot → Connectors. Copia la URL del MCP endpoint que aparece arriba — esa es la dirección que le das a Claude.
- Añade el conector en tu cliente de Claude (ver más abajo) y completa el inicio de sesión + consentimiento por única vez.
Conectar Claude
Todo lo que un cliente necesita está en la pantalla Connectors: el MCP endpoint, el emisor OAuth y un comando listo para pegar para Claude Code.

claude.ai (web) y Claude Desktop
En Claude, abre Settings → Connectors → Add custom connector y pega tu MCP
endpoint (por ejemplo https://your-site.com/wp-json/agent-pilot/v1/mcp).
Claude abre la página de inicio de sesión de tu sitio, apruebas la pantalla de
consentimiento y el conector queda listo. El cliente web se conecta desde la
nube de Anthropic, así que tu sitio debe ser accesible por HTTPS público.
Claude Code
claude mcp add --transport http agent-pilot https://your-site.com/wp-json/agent-pilot/v1/mcpClaude Code lanza el flujo de OAuth en tu navegador; tras aprobarlo, las
herramientas quedan disponibles en tu sesión. Ejecuta /mcp para verlas, o
simplemente pídele a Claude que haga algo — «lista las últimas cinco entradas
en borrador», «muéstrame los pedidos en procesamiento de esta semana».
Elegir como quién actúa el agente
La pantalla de consentimiento se ejecuta como el usuario de WordPress que ha
iniciado sesión, y el token resultante hereda las capacidades de ese usuario.
Para una conexión con un alcance bien acotado, crea un usuario de WordPress
dedicado con un rol limitado (más la capacidad manage_agent_pilot para que
pueda autorizar) y aprueba el conector con la sesión iniciada como ese usuario.
El agente podrá entonces hacer exactamente lo que ese usuario puede hacer — y
nada más.
Qué puede hacer Claude
Las herramientas se agrupan en cuatro ámbitos. Durante el consentimiento decides qué ámbitos recibe un conector; en el momento de la llamada cada herramienta también verifica la capacidad de WordPress del usuario vinculado. Ambas comprobaciones deben superarse.
Lectura (wp.read)
Inspección de solo lectura del sitio. Seguro de conceder ampliamente.
| Herramienta | Qué hace |
|---|---|
wp_get_site_info | Nombre del sitio, URLs, versiones, tema activo, estado de WooCommerce, recuentos de contenido |
wp_get_site_context | Tema, paleta de colores, tipografía, patrones de bloques y una entrada reciente — para que el contenido generado encaje con tu estilo |
wp_list_posts | Busca y lista entradas, páginas y cualquier custom post type |
wp_get_post | Obtiene una entrada/página con su contenido completo y metadatos |
wp_list_terms | Lista términos de taxonomía (categorías, etiquetas, categorías de productos…) |
wc_list_products / wc_get_product | Busca y lee productos de WooCommerce |
wc_list_orders / wc_get_order | Busca y lee pedidos con sus líneas |
wc_list_customers | Busca clientes con su número de pedidos y gasto total |
Escribir contenido (wp.content.write)
Crea y edita contenido. Las acciones destructivas requieren un flag confirm
explícito.
| Herramienta | Qué hace |
|---|---|
wp_save_post | Crea una nueva entrada/página/CPT o actualiza por completo una existente |
wp_replace_in_post | Buscar y reemplazar dirigido dentro de una página — la forma segura de corregir una errata o una línea en una página de maquetador (ver más abajo) |
wp_delete_post | Envía a la papelera o elimina permanentemente una entrada (requiere confirm) |
wp_upload_media | Carga lateral de una imagen/archivo desde una URL a la biblioteca de medios |
wc_save_product | Crea o actualiza un producto de WooCommerce |
wc_save_order | Actualiza el estado de un pedido o añade una nota al pedido |
wp_comments | Lista y modera comentarios (aprobar, desaprobar, marcar como spam, papelera) |
Gestionar el sitio (wp.manage)
Operaciones administrativas. Cada cambio destructivo requiere confirmación.
| Herramienta | Qué hace |
|---|---|
wp_options | Lee o actualiza una opción de WordPress (las actualizaciones requieren confirm; los secretos de plugins están bloqueados) |
wp_plugins | Lista, activa o desactiva plugins (confirm) |
wp_themes | Lista los temas instalados o cambia el tema activo (confirm) |
wp_users | Lista, lee, crea, actualiza o elimina usuarios — con protecciones contra eliminarte a ti mismo o al último administrador (confirm) |
wp_maintenance | Vacía la caché de objetos, recarga las reglas de reescritura, limpia transients |
Base de conocimiento (wp.kb)
Disponible solo cuando Chatbot Pilot está activo.
| Herramienta | Qué hace |
|---|---|
kb_search | Búsqueda semántica (embeddings) sobre tu base de conocimiento de Chatbot Pilot |
kb_stats | Estadísticas de indexación: archivos escaneados/indexados, fragmentos, última ejecución |
kb_reindex | Lanza una reindexación en segundo plano (requiere la capacidad de gestión) |
Herramientas de otros plugins
Agent Pilot es extensible: cualquier plugin puede registrar sus propios ámbitos y herramientas MCP, que fluyen automáticamente por el descubrimiento, la pantalla de consentimiento y la pantalla Tools. Cada ámbito aportado se asigna a una capacidad de WordPress igual que los integrados, así que se aplica la misma doble comprobación de ámbito y capacidad. En toda la suite Pilot esto ya incluye:
| Plugin | Añade la capacidad de |
|---|---|
| Invoice Pilot | Leer facturas y emitir una a partir de un pedido de WooCommerce |
| Mail Pilot | Consultar el registro de envíos y enviar un correo a través del mailer del sitio |
| Security Pilot | Leer el estado de seguridad y el log de ataques, bloquear o desbloquear una IP |
| AI SEO Pilot | Leer los campos SEO de una entrada y definir su meta descripción, palabra clave principal y schema |
| Subscriptions | Ver las suscripciones de los usuarios, su estado y las fechas de facturación |
La pantalla Tools — acceso por rol y por usuario
Los ámbitos deciden a grandes rasgos lo que un conector puede hacer; la pantalla Agent Pilot → Tools te permite afinar más, activando o desactivando herramientas individuales — o un ámbito completo — para un rol de WordPress o un usuario concreto.

- Valores predeterminados seguros para el admin. Los administradores reciben todas las herramientas de forma predeterminada. Cualquier otro rol empieza con ninguna herramienta — concedes exactamente lo que necesita, por ámbito o por herramienta individual.
- Tres estados por fila. Predeterminado, Activado o Desactivado. Una regla a nivel de herramienta gana a una regla a nivel de ámbito; entre los roles de un usuario, un Desactivado siempre prevalece.
- Anulaciones por usuario. Escribe un nombre o un correo para cargar a un único usuario y ajustar su acceso de forma independiente de su rol.
- Solo restringe, y queda auditado. Esta capa se sitúa sobre el consentimiento de ámbitos de OAuth y las capacidades de WordPress — puede quitar herramientas, nunca conceder algo que el usuario vinculado no pudiera ya hacer. Cada llamada bloqueada se escribe en el log de auditoría.
Editar páginas de maquetador con seguridad
Las páginas creadas con Divi, Elementor, WPBakery y maquetadores similares
almacenan su diseño como miles de líneas de shortcode o JSON dentro de
post_content. Reescribir todo eso solo para corregir una errata es
arriesgado — un solo carácter fuera de lugar puede romper la página.
wp_replace_in_post resuelve esto. En lugar de sobrescribir la página entera,
le das a Claude el texto exacto a buscar y su reemplazo, y solo esos bytes
cambian — el marcado del maquetador circundante se preserva byte por byte.
Admite varias ediciones en una sola llamada (una errata y una línea de
preguntas frecuentes, por ejemplo), se niega a actuar cuando no encuentra el
texto buscado y, por defecto, exige que el fragmento sea único para que nada
cambie por accidente.
Consejo: pídele a Claude que lea primero la página con
wp_get_postpara que copie el texto exacto, y que ejecutewp_maintenancedespués si el maquetador guarda en caché una versión estática de la página.
Modelo de seguridad
Agent Pilot superpone varias protecciones independientes:
- OAuth 2.1, no una clave compartida. Concesión de código de autorización con PKCE y refresh tokens. Los tokens de acceso son JWT firmados de corta duración; no hay ninguna contraseña estática que se pueda filtrar.
- Vinculado a un usuario. Cada token lleva consigo el usuario de WordPress que lo aprobó. Las llamadas a herramientas se ejecutan como ese usuario, así que las reglas de rol y capacidad se aplican exactamente como lo harían en wp-admin.
- Ámbito y capacidad. Un ámbito dice «este conector puede escribir contenido»; la comprobación de capacidad dice «este usuario tiene realmente permiso para ello». Ambas deben superarse, en cada llamada.
- Restricción de herramientas por rol / por usuario. Por encima de los ámbitos, la pantalla Tools puede desactivar herramientas individuales (o ámbitos completos) para un rol o un único usuario. Es una capa que solo restringe — siempre se aplica, y cada llamada bloqueada queda auditada.
- Consentimiento que puedes leer. La pantalla de aprobación nombra el conector, muestra el host solicitante y enumera cada permiso pedido — señalando cualquiera que tu cuenta no pueda conceder de hecho.
- Las acciones destructivas están bloqueadas. Eliminar contenido, cambiar
plugins/temas/usuarios o actualizar opciones requiere un
confirmexplícito en la petición, salvo que marques deliberadamente un conector como de confianza. - Todo queda auditado. Las autorizaciones, los registros, cada llamada a herramienta y cada intento fallido se registran con el usuario, el conector, la marca de tiempo y la IP.
- Limitación de tasa y lista de IP permitidas. Límites de peticiones por conector, más una lista CIDR permitida opcional para despliegues blindados.
- Revoca y rota. Desactiva un conector o un único token con un clic, o rota las claves de firma para invalidar todos los tokens a la vez.
La pantalla Connectors
Agent Pilot → Connectors es el centro de control:
- Connect Claude to this site — el MCP endpoint, el emisor OAuth y la URL de metadatos de recurso protegido, más un comando listo para copiar y pegar para Claude Code.
- Registered connectors — cada cliente que se ha registrado (cada instancia de Claude es su propia entrada), con su tipo y un Revoke con un clic.
- Active access tokens — una fila por conexión en vivo, que muestra el usuario, el conector, los ámbitos concedidos y la expiración, cada uno revocable de forma individual.
- Signing keys — Rotate keys invalida de inmediato todos los tokens emitidos; los conectores simplemente vuelven a autorizar.
- Recent activity — un rastro de auditoría en vivo. Una conexión nueva
normal aparece como
auth_fail(la sonda de descubrimiento inicial) →dcr(registro) →authorize(aprobado) → entradastool_calla medida que Claude trabaja. Las sondas no autenticadas que aparecen comoauth_failson esperables en cualquier endpoint público.
Referencia de ajustes
Configura el comportamiento en Agent Pilot → Settings.

| Ajuste | Propósito |
|---|---|
| Enable MCP server | Interruptor maestro. Cuando está apagado, los endpoints de OAuth y MCP devuelven 503. |
| Accept new connectors | Permite el Dynamic Client Registration. claude.ai web lo necesita para autorregistrarse; desactívalo para congelar la lista de conectores. |
| Trust connectors (skip confirmations) | Cuando está activado, las herramientas destructivas se ejecutan sin el flag confirm por llamada. Déjalo desactivado por seguridad. |
| Access-token lifetime | Cuánto tiempo es válido un token de acceso, en segundos (los refresh tokens extienden la sesión). |
| MCP rate limit | Máximo de peticiones MCP por minuto, por conector. |
| IP allowlist | Lista CIDR opcional. Vacía = permitir todo. Ten en cuenta que claude.ai se conecta desde IP de la nube de Anthropic. |
| Extra redirect hosts | Hosts de redirección OAuth adicionales a aceptar en el registro. claude.ai / claude.com y localhost siempre están permitidos. |
| Audit-log retention | Cuántos días conservar las entradas de auditoría antes de la limpieza automática. |
| Remove all data on uninstall | Cuando está activado, eliminar el plugin descarta sus tablas, opciones y capacidad. |
Multiusuario y multiinstancia
Como cada token está vinculado a un usuario de WordPress, puedes conectar muchos agentes a la vez con alcances distintos:
- Conecta Claude Desktop como editor para el contenido del día a día, y Claude Code como administrador para el mantenimiento del sitio.
- Dale a un compañero su propio conector bajo su propia cuenta de WordPress — el log de auditoría atribuye cada acción a la persona correcta.
- Las conexiones concurrentes están aisladas; la sesión y los permisos de un agente nunca se filtran a los de otro.
Resolución de problemas
El conector autoriza pero Claude nunca lista las herramientas. Casi siempre es una discrepancia de URL. Asegúrate de haber usado el MCP endpoint exacto que aparece en la pantalla Connectors y de que tu sitio sea accesible por HTTPS desde el cliente.
Cada petición muestra auth_fail incluso con un token. Algunas
configuraciones de Apache/nginx eliminan la cabecera Authorization antes de
que llegue a PHP. Añade una regla de reescritura para dejarla pasar (la misma
solución que se usa para las contraseñas de aplicación de WordPress).
claude.ai no puede alcanzar el sitio. El cliente web se conecta desde la
nube de Anthropic — una URL localhost no funcionará. Usa un dominio HTTPS
accesible públicamente.
Una herramienta devuelve «forbidden». Al usuario de WordPress vinculado le falta la capacidad para esa acción. Autoriza como un usuario con el rol adecuado, o concede la capacidad.
Una herramienta destructiva se niega a ejecutarse. Necesita "confirm": true
en la petición (o activa Trust connectors). Pídele a Claude que reintente con
confirmación.
El sitio se quedó en pantalla blanca tras activarlo junto a otro plugin. Limpia el opcache de PHP (o reinicia PHP) una vez tras la activación si el cargador compartido de un plugin hermano quedó cacheado en un estado inconsistente.
Desinstalación
Desactivar detiene el servidor y las tareas programadas. Eliminar el plugin
borra su código; deja tus datos en su sitio salvo que hayas activado Remove
all data on uninstall en los ajustes, en cuyo caso se descartan sus tablas,
opciones y la capacidad manage_agent_pilot.