Principais destaques
- 🔌 O MCP Adapter é um plugin oficial do WordPress, parte da iniciativa “AI Building Blocks for WordPress”, que conecta a Abilities API do WordPress ao Model Context Protocol (MCP), permitindo que assistentes de IA descubram e executem funcionalidades do WordPress de forma padronizada.
- 🖥️ O plugin suporta duas formas de conexão: via STDIO (usando comandos WP-CLI, ideal para desenvolvimento local) e via HTTP (usando um endpoint REST, ideal para conectar assistentes remotamente através de um proxy).
- 🔐 A autenticação, na conexão via HTTP, usa Senhas de Aplicativo nativas do WordPress, e cada habilidade exposta ao MCP passa por controle de permissão granular, então o assistente só consegue fazer o que a conta usada tiver autorização para fazer.
Se você já quis que o Claude, o ChatGPT ou o Gemini conseguissem ler, criar ou organizar conteúdo diretamente no seu WordPress, sem você precisar copiar e colar tudo manualmente, existe agora um caminho oficial para isso.
O MCP Adapter, mantido pela própria equipe do WordPress como parte da iniciativa “AI Building Blocks for WordPress”, conecta o site ao Model Context Protocol (MCP), o padrão aberto que permite a assistentes de IA descobrir e executar ações em sistemas externos de forma estruturada.
Este guia explica o que o MCP Adapter faz, como instalá-lo, como conectar diferentes assistentes de IA a ele, e traz prompts prontos para testar a conexão.
🧩 O que o MCP Adapter realmente faz
O MCP Adapter funciona como uma ponte entre a Abilities API do WordPress (um sistema que permite a plugins, temas e ao próprio núcleo do WordPress registrar “habilidades”, ou seja, funções específicas e bem definidas que podem ser executadas programaticamente) e o Model Context Protocol, o padrão que assistentes como o Claude usam para descobrir e chamar ferramentas externas.
Na prática, isso significa que qualquer habilidade registrada no WordPress, seja para buscar posts, atualizar configurações, gerenciar comentários, ou qualquer outra ação que um plugin decida expor, pode se tornar automaticamente uma ferramenta, um recurso ou um prompt utilizável por um assistente de IA conectado. O adaptador inclui suporte a transporte via HTTP e via STDIO, tratamento robusto de erros, controle de permissão granular, e uma arquitetura extensível para integrações personalizadas.
Vale um esclarecimento importante: o MCP Adapter, por si só, não dá acesso irrestrito a arquivos e banco de dados. Ele é o framework que permite que habilidades específicas, registradas por plugins (incluindo plugins que você mesmo desenvolve ou instala), sejam expostas de forma segura a assistentes de IA. O que exatamente um assistente consegue fazer depende de quais habilidades estão registradas e de quais permissões a conta usada na conexão possui.
✅ Pré-requisitos
Antes de instalar, confirme que seu ambiente atende aos requisitos mínimos: PHP 7.4 ou superior, e WordPress 6.9 ou superior. O adaptador também depende do pacote php-mcp-schema, instalado automaticamente via Composer.
📦 Como instalar o MCP Adapter
Como plugin do WordPress (recomendado), baixando a versão estável mais recente na página de releases do GitHub e instalando como qualquer outro plugin. Via WP-CLI, o comando é:
bash
wp plugin install https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip --activate
Se você usa wp-env para ambiente de desenvolvimento local, basta adicionar ao arquivo de configuração:
json
{
"$schema": "https://schemas.wp.org/trunk/wp-env.json",
"plugins": [
"https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip"
]
}
Como biblioteca via Composer, se você é desenvolvedor de plugins e quer integrar a funcionalidade MCP dentro do seu próprio plugin:
bash
composer require wordpress/mcp-adapter
Quando vários plugins usam o MCP Adapter ao mesmo tempo, é altamente recomendado usar o Jetpack Autoloader, para evitar conflitos de versão entre eles:
bash
composer require automattic/jetpack-autoloader
🛠️ Registrando uma habilidade para o assistente usar
O adaptador cria automaticamente um servidor padrão, que expõe habilidades registradas com a flag meta.mcp.public definida como true. Veja como registrar uma habilidade simples, que permite ao assistente buscar posts do site:
php
add_action( 'wp_abilities_api_init', function() {
wp_register_ability( 'my-plugin/get-posts', [
'label' => 'Buscar Posts',
'description' => 'Recupera posts do WordPress com filtros opcionais',
'category' => 'site',
'input_schema' => [
'type' => 'object',
'properties' => [
'numberposts' => [
'type' => 'integer',
'description' => 'Número de posts a recuperar',
'default' => 5,
'minimum' => 1,
'maximum' => 100
],
'post_status' => [
'type' => 'string',
'description' => 'Status do post para filtrar',
'enum' => ['publish', 'draft', 'private'],
'default' => 'publish'
]
]
],
'execute_callback' => function( $input ) {
return get_posts( [
'numberposts' => $input['numberposts'] ?? 5,
'post_status' => $input['post_status'] ?? 'publish'
] );
},
'permission_callback' => function() {
return current_user_can( 'read' );
},
'meta' => [
'mcp' => [
'public' => true, // Necessário para acesso pelo servidor MCP padrão
],
],
]);
});
Note o campo permission_callback: é ele quem garante que o assistente só executa essa habilidade se o usuário autenticado tiver a capacidade necessária no WordPress, no caso do exemplo, a capacidade de leitura (read).
🔗 Conectando o Claude ao seu WordPress
Existem dois caminhos principais de conexão, dependendo se você está testando localmente ou conectando a um site já publicado.
Via STDIO, para desenvolvimento local, usando comandos WP-CLI diretamente, sem precisar de nenhuma configuração de rede:
bash
# Lista todos os servidores MCP disponíveis
wp mcp-adapter list
# Testa a descoberta de habilidades disponíveis
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-discover-abilities","arguments":{}}}' | wp mcp-adapter serve --user=admin --server=mcp-adapter-default-server
Para conectar o Claude Desktop, o Claude Code, o VS Code ou o Cursor a um site local via STDIO, a configuração no arquivo de MCP servers do cliente fica assim:
json
{
"mcpServers": {
"wordpress-default": {
"command": "wp",
"args": [
"--path=/caminho/para/seu/site/wordpress",
"mcp-adapter",
"serve",
"--server=mcp-adapter-default-server",
"--user=admin"
]
}
}
}
Via HTTP, para sites remotos, usando um proxy oficial (@automattic/mcp-wordpress-remote), que roda localmente e traduz a comunicação MCP baseada em STDIO do cliente de IA em chamadas REST que o WordPress entende. A autenticação usa Senhas de Aplicativo nativas do WordPress:
json
{
"mcpServers": {
"wordpress-http-default": {
"command": "npx",
"args": [
"-y",
"@automattic/mcp-wordpress-remote@latest"
],
"env": {
"WP_API_URL": "http://seu-site.test/wp-json/mcp/mcp-adapter-default-server",
"LOG_FILE": "/caminho/para/logs/mcp-adapter.log",
"WP_API_USERNAME": "seu-usuario",
"WP_API_PASSWORD": "sua-senha-de-aplicativo"
}
}
}
}
Essa configuração de servidor MCP no formato JSON é reconhecida nativamente pelo Claude Desktop e pelo Claude Code. Vale destacar que o Model Context Protocol, embora tenha se originado em um padrão da Anthropic, já foi adotado de forma mais ampla pelo setor: o ChatGPT já suporta conectores baseados em MCP através de configurações próprias, e o Gemini também vem incorporando suporte a MCP em ferramentas como o Gemini CLI. A lógica de conexão é semelhante entre eles, embora cada plataforma tenha sua própria tela ou arquivo de configuração para declarar o servidor.
💬 Prompts prontos para testar a conexão
Depois de conectado, alguns prompts simples ajudam a confirmar que o assistente está de fato “enxergando” seu WordPress:
Prompt para descobrir o que está disponível:
Liste todas as habilidades do WordPress disponíveis através do servidor
MCP conectado, agrupadas por categoria, e explique brevemente o que cada
uma faz.
Prompt para buscar conteúdo real do site:
Busque os 5 posts mais recentes publicados no meu WordPress e me dê um
resumo de uma frase para cada um, incluindo o título e a data de
publicação.
Prompt para uma tarefa editorial combinando leitura e ação:
Verifique se existe algum post em rascunho no meu WordPress há mais de
30 dias sem atualização. Para cada um encontrado, me diga o título e
sugira se ele deveria ser publicado, editado ou excluído.
🖥️ Criando um servidor MCP personalizado
Para casos de uso mais avançados, é possível criar servidores MCP personalizados, com um conjunto específico de habilidades expostas, em vez de depender apenas do servidor padrão:
php
add_action( 'mcp_adapter_init', function( $adapter ) {
$adapter->create_server(
'meu-servidor-id', // Identificador único do servidor
'meu-namespace', // Namespace da REST API
'mcp', // Rota da REST API
'Meu Servidor MCP', // Nome do servidor
'Descrição do meu servidor', // Descrição
'v1.0.0', // Versão do servidor
array(
\WP\MCP\Transport\HttpTransport::class,
),
\WP\MCP\Infrastructure\ErrorHandling\ErrorLogMcpErrorHandler::class,
\WP\MCP\Infrastructure\Observability\NullMcpObservabilityHandler::class,
array( 'meu-plugin/minha-habilidade' ), // Habilidades expostas como ferramentas
array(), // Recursos (opcional)
array() // Prompts (opcional)
);
} );
Isso permite, por exemplo, criar um servidor MCP exclusivo para uma agência editorial, expondo apenas habilidades relacionadas à publicação de conteúdo, sem dar acesso a configurações administrativas mais sensíveis.
🔐 Segurança e controle de permissão
Alguns pontos que vale ter em mente antes de conectar um assistente de IA ao seu site de produção:
- 🔑 Use Senhas de Aplicativo dedicadas: crie uma senha de aplicativo específica para a conexão MCP, em vez de reutilizar sua senha principal, e revogue-a se não for mais necessária
- 👤 Escolha o usuário com cuidado: a conexão roda com as permissões do usuário especificado (
--user=admin, no exemplo); considere criar um usuário com um papel mais restrito, se o assistente não precisar de acesso administrativo completo - 🧱 Cada habilidade tem seu próprio
permission_callback: revise as habilidades expostas por plugins de terceiros antes de conectar um assistente, garantindo que cada uma valida corretamente a capacidade do usuário antes de executar
Prompt para auditar rapidamente o escopo de acesso antes de conectar um assistente:
Com base na lista de habilidades abaixo, expostas pelo meu WordPress via
MCP, identifique quais delas permitem ações destrutivas ou de
configuração sensível (excluir conteúdo, alterar usuários, mudar
configurações do site), e sugira quais deveriam ficar restritas a um
servidor MCP separado, com um usuário de permissões mais limitadas.
Habilidades disponíveis:
[COLE A LISTA RETORNADA PELA FERRAMENTA DE DESCOBERTA]
O MCP Adapter transforma a conexão entre assistentes de IA e o WordPress de uma série de plugins fragmentados e não padronizados em um protocolo aberto e oficial, mantido pela própria comunidade WordPress como parte da iniciativa “AI Building Blocks for WordPress”.
Com suporte a conexão local via STDIO e remota via HTTP, autenticação usando Senhas de Aplicativo nativas, e um sistema de permissão granular por habilidade, o adaptador dá a times editoriais e desenvolvedores um caminho seguro para conectar Claude, ChatGPT ou Gemini diretamente ao conteúdo e às funcionalidades do site, sem depender de gambiarras ou integrações fechadas de terceiros.
O ponto mais importante antes de ativar essa conexão em um site de produção é revisar com cuidado quais habilidades estão expostas e com qual nível de permissão, garantindo que o assistente só consiga fazer exatamente o que você pretendia permitir.
