O Model Context Protocol (MCP) é um padrão aberto que estabelece conexões seguras entre ferramentas baseadas em IA e fontes de dados não públicas.

Em outras palavras, o MCP cria uma ponte segura entre assistentes de IA e suas fontes de dados, permitindo que modelos de IA executem operações diretamente nos seus sistemas. Isso elimina para os desenvolvedores as dificuldades de criar uma integração personalizada do zero para cada API ou banco de dados.

O MCP oferece a ferramentas como Claude e ChatGPT acesso direto aos seus dados. Em vez de apenas fazer suposições, a IA pode acessar seus sistemas de arquivos, documentação interna ou bancos de dados para obter informações em tempo real e executar operações nos seus aplicativos preferidos.

Para negócios on-line, isso abre oportunidades sem precedentes, pois permite conectar seu site WordPress a um cliente MCP, como o Claude Desktop, possibilitando a comunicação entre eles e o uso dos recursos agênticos da IA por meio das Abilities registradas no seu site WordPress.

Se isso parecer muito complexo, não se preocupe. Neste tutorial, forneceremos instruções passo a passo para configurar seu site WordPress e o cliente MCP do Claude, além de executar operações no seu site por meio do Claude Desktop.

Mas antes de começarmos com as instruções, vamos definir os principais conceitos do Model Context Protocol.

Principais conceitos e definições do MCP

Se você decidiu permitir que seu site WordPress interaja com um modelo de IA por meio do Model Context Protocol, é importante entender claramente a cadeia de componentes envolvida.

Cliente MCP: É um componente de software que permite que um host de IA se conecte a um servidor MCP. O host de IA é o aplicativo com o qual o usuário interage (como o Claude Desktop), enquanto o cliente é o componente no nível do protocolo que possibilita a conexão efetiva com o servidor.

Servidor MCP: É um aplicativo de software (ou processo) que disponibiliza recursos específicos para um aplicativo de IA por meio de um protocolo padronizado. Alguns exemplos incluem servidores de sistemas de arquivos, servidores de bancos de dados, servidores de calendários e outros.

Adaptador MCP: É a ponte de tradução bidirecional entre o Cliente MCP e o núcleo do seu site WordPress. Sua finalidade é adaptar as Abilities do seu site WordPress aos elementos do Model Context Protocol, permitindo que agentes de IA descubram e executem os recursos do seu site como Ferramentas MCP e leiam seus dados como Recursos MCP.

Abilities API: É a camada de arquitetura que permite que todos os componentes do WordPress, tanto o núcleo quanto os plugins, disponibilizem suas funcionalidades de maneira unificada e compreensível para humanos e máquinas. Ela permite que os desenvolvedores registrem ações padronizadas e autodescritivas, com esquemas rigorosos de entrada e saída, que a IA pode descobrir e executar de forma autônoma.

Diagrama do MCP.
Diagrama do MCP (Fonte da imagem: Model Context Protocol)

O que você pode fazer com o WordPress e o MCP

Ao conectar um agente de IA ao seu site WordPress, você pode aproveitar todo o poder da IA para ler dados ou executar operações complexas diretamente do seu aplicativo host de IA.

Por meio do seu host de IA, você pode gerenciar conteúdo, realizar tarefas de administração e manutenção, monitorar a integridade do site, gerenciar usuários, atualizar catálogos de produtos, analisar pedidos e muito mais. Não se trata apenas de executar ações isoladas; trata-se de gerenciar a infraestrutura do seu site sem precisar abrir o painel de controle do WordPress.

Você pode pedir à IA que crie o rascunho de um artigo com base nas suas diretrizes gerais, especificando o tamanho, o tom e a profundidade da análise. Também pode instruí-la a gerar imagens, realizar cálculos em tempo real e complementar o conteúdo com tabelas de resumo que apresentem porcentagens e valores absolutos.

Considere também a eficiência de automatizar operações: gerenciar a integração de novos usuários atribuindo automaticamente funções com base nas responsabilidades deles dentro da sua organização, analisar o desempenho de vendas por produto no último trimestre ou gerar automaticamente relatórios de resumo para sua equipe.

Mas você pode ir ainda mais longe. Graças à Abilities API, o WordPress se tornou um hub agêntico que se integra perfeitamente a fluxos de trabalho automatizados gerenciados por IA. O agente de IA pode monitorar contextos externos, como tendências de mercado, variações de preços ou condições meteorológicas, consultar o banco de dados para verificar níveis de estoque ou histórico de compras e tomar decisões autônomas baseadas em dados.

O proprietário do site precisará apenas fornecer instruções em linguagem natural ao agente de IA, que então coordenará todo o fluxo de trabalho operacional.

Como conectar um agente de IA ao seu site WordPress via MCP

Antes de começarmos a trabalhar com código e configurações, vamos analisar os requisitos do sistema. Para conectar seu site WordPress a um cliente de IA via MCP, você precisará do seguinte:

  • Um site WordPress de desenvolvimento: A versão mínima necessária é a 6.9, mas a 7.0 ou superior é altamente recomendada.
  • Node.js instalado no seu computador local.
  • Claude Desktop: O aplicativo host MCP oficial da Anthropic.
  • Seu editor de código preferido: Usaremos o VS Code neste tutorial.
  • Um cliente de API, como o Postman, para testes.

Configurar o WordPress

Como trabalharemos com a Abilities API do WordPress, você precisará de um ambiente de teste ou desenvolvimento com o WordPress 6.9 ou superior. Caso esteja trabalhando localmente, certifique-se de que a reescrita de URLs esteja habilitada.

Etapa 1: Instalar o plugin WordPress MCP Adapter

Primeiro, baixe o arquivo .zip do plugin MCP Adapter no GitHub e instale-o no seu site WordPress. Ao ativá-lo, o plugin registra automaticamente um servidor MCP padrão que pode ser acessado no seguinte endereço:

https://yoursite.com/wp-json/mcp/mcp-adapter-default-server

O servidor exige solicitações autenticadas. Caso envie essa solicitação sem autenticação, você receberá o seguinte objeto de resposta:

{"code":"rest_forbidden","message":"Sorry, you are not allowed to do that.","data":{"status":401}}

Voltaremos a isso em instantes.

Agora você precisa verificar se o namespace mcp está registrado corretamente. Para fazer isso, envie a seguinte solicitação pelo navegador ou pelo Postman:

https://yoursite.com/wp-json/

Na resposta, procure pelo namespace mcp:

{
	"name": "WordPress 7.0",
	"description": "",
	"url": "http://yoursite.com",
	"home": "https://yoursite.com",
	"gmt_offset": "0",
	"timezone_string": "",
	"page_for_posts": 0,
	"page_on_front": 345,
	"show_on_front": "page",
	"namespaces": [
		"oembed/1.0",
		"mcp",
		"wp/v2",
		"wp-site-health/v1",
		"wp-block-editor/v1",
		"wp-abilities/v1"
	],
	...
}

Caso ele apareça, significa que o servidor MCP está funcionando conforme o esperado. Caso contrário, verifique se o plugin está ativo ou se você está usando a versão correta do WordPress.

Agora que você transformou seu site WordPress em um servidor MCP, vamos registrar a Ability necessária para permitir que o MCP Client do Claude Desktop se comunique com seu site e execute ações. Em nosso exemplo, você criará um rascunho de artigo.

Etapa 2: Registrar suas Abilities com um plugin

Abra seu editor de código preferido, crie um novo arquivo e escreva o seguinte código

<?php
/**
 * Plugin Name: My MCP Test Plugin
 * Description: Demonstration plugin for creating posts via MCP.
 * Version: 1.0.0
 */

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

add_action( 'wp_abilities_api_init', 'kinsta_mcp_register_simple_draft_ability' );

/**
 * Registers a minimal ability to create post drafts.
 * This acts as a formal contract between the underlying PHP logic and the AI client.
 *
 * @return void
 */
function kinsta_mcp_register_simple_draft_ability(): void {

	if ( ! function_exists( 'wp_register_ability' ) ) {
		return;
	}

	wp_register_ability(
		'kinsta-plugin/create-draft',
		array(
			'category'	=> 'post',
			'label'	   => __( 'Create Post Draft', 'kinsta-mcp-draft' ),
			'description' => __( 'Creates a new post draft with a title and content provided by the AI agent.', 'kinsta-mcp-draft' ),
			'input_schema'  => array(
				'type'	   => 'object',
				'properties' => array(
					'title'   => array(
						'type'		=> 'string',
						'description' => __( 'The headline or title of the post draft.', 'kinsta-mcp-draft' ),
					),
					'content' => array(
						'type'		=> 'string',
						'description' => __( 'The body text or content generated for the draft.', 'kinsta-mcp-draft' ),
					),
				),
				'required'   => array( 'title', 'content' ), // Mandatory fields for the AI payload
			),
			'permission_callback' => function(): bool {
				return current_user_can( 'edit_posts' );
			},
			'execute_callback'	=> function( array $args ): array {
				$post_id = wp_insert_post( array(
					'post_title'   => sanitize_text_field( $args['title'] ),
					'post_content' => wp_kses_post( $args['content'] ),
					'post_status'  => 'draft',
					'post_type'	=> 'post',
				) );

				if ( is_wp_error( $post_id ) ) {
					return array( 
						'success' => false, 
						'error'   => $post_id->get_error_message() 
					);
				}

				return array( 
					'success' => true, 
					'message' => __( 'Draft saved successfully!', 'kinsta-mcp-draft' ),
					'post_id' => $post_id 
				);
			},

			// Explicitly flag this ability as public to expose it through the default MCP Server
			'meta' => array(
				'mcp' => array(
					'public' => true, 
				),
				// Also expose within the native WordPress REST API
				'show_in_rest' => true,
			),
		)
	);
}

Estes são os principais pontos desse plugin:

  • Para registrar sua Ability, você vinculará a função wp_register_ability() à ação wp_abilities_api_init.
  • O primeiro argumento da função especifica o nome da Ability, incluindo o namespace (kinsta-plugin/create-draft).
  • O segundo argumento define os parâmetros de configuração da Ability.
  • input_schema é um array que define o contrato de entrada da Ability. Nesse caso, a Ability espera receber um objeto com duas strings de texto obrigatórias: title e content.
  • permission_callback é uma função que verifica se o agente possui as permissões necessárias para executar a Ability (edit_posts).
  • execute_callback é a função de callback executada quando a Ability é acionada. Neste exemplo, wp_insert_post é usada para criar um novo rascunho de artigo.
  • A flag meta.mcp.public disponibiliza a Ability por meio do servidor padrão do MCP Adapter (saiba mais sobre isso aqui).

Não vamos nos aprofundar na Abilities API. Caso queira ou precise saber mais, confira nosso tutorial detalhado Primeiros passos com a Abilities API do WordPress.

Agora salve o arquivo, compacte-o em um arquivo zip e envie-o para seu site como um plugin. Depois de ativá-lo, você estará pronto para seguir para as próximas etapas.

Etapa 3: Gerar uma Senha de Aplicativo

Todas as solicitações enviadas ao servidor MCP do WordPress devem ser autenticadas usando uma Senha de Aplicativo. Para gerar uma Senha de Aplicativo, abra o painel de controle do WordPress, acesse Usuários > Perfil e role para baixo até a seção Senhas de Aplicativo. Digite um nome para sua senha e clique em Adicionar Nova Senha de Aplicativo.

Isso gerará uma senha para você usar no seu aplicativo. Certifique-se de copiar e colar a senha em um local seguro, pois essa é a única vez em que você poderá visualizá-la. Caso a perca, será necessário criar uma nova.

O WordPress exige uma conexão HTTPS para gerar uma Senha de Aplicativo. Caso essa seção não apareça no seu perfil de usuário, verifique se o site está sendo fornecido por HTTPS. Para mais informações, consulte a documentação oficial.

Testar toda a cadeia no Postman

Antes de configurar o Claude Desktop, você pode testar toda a cadeia no Postman, pois isso torna a solução de problemas muito mais fácil e rápida.

Passo 1: Teste o handshake inicial

Primeiro, teste o handshake inicial enviando a seguinte solicitação POST:

https://yoursite.com/wp-json/mcp/mcp-adapter-default-server

A solicitação deve ser autenticada. Ao criar uma nova solicitação HTTP no Postman, selecione Authorization > Basic Auth e insira seu nome de usuário do WordPress e a Senha de Aplicativo.

Configurar Authorization: Basic Auth no Postman.
Configurar Authorization: Basic Auth no Postman.

Em seguida, adicione os seguintes cabeçalhos:

Content-Type: application/json
Accept: application/json, text/event-stream
Configurar os cabeçalhos da solicitação no Postman.
Configurar os cabeçalhos da solicitação no Postman.

Mude para a aba “Body”, selecione “raw” > “JSON” e defina o corpo da solicitação da seguinte forma:

{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"postman","version":"1.0"}}}
Configurar o corpo da solicitação no Postman
Configurar o corpo da solicitação no Postman

Agora você pode clicar no botão Send. Se o servidor MCP estiver funcionando corretamente, você verá um código de status 200 OK e a resposta JSON mostrada na imagem abaixo:

Corpo da resposta do servidor MCP no Postman
Corpo da resposta do servidor MCP no Postman

A resposta deve incluir o cabeçalho mcp-session-id. Copie esse valor, pois você precisará dele no próximo teste.

Cabeçalhos da resposta do servidor MCP no Postman
Cabeçalhos da resposta do servidor MCP no Postman

Etapa 2: Verificar se a Ability está visível

Agora você precisa verificar se sua Ability está visível. Você usará a mesma URL e o mesmo Basic Auth. Basta adicionar o cabeçalho mcp-session-id aos que você já inseriu e usar o seguinte objeto JSON no corpo da solicitação:

{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"mcp-adapter-discover-abilities","arguments":{}}}

A imagem a seguir mostra o corpo da resposta do servidor MCP:

O corpo da resposta do servidor MCP no Postman
O corpo da resposta do servidor MCP no Postman

O objeto de resposta JSON deve incluir o nome da sua Ability (em nosso exemplo, kinsta-plugin/create-draft).

Etapa 3: Executar a Ability pelo Postman

Por fim, vamos tentar executar nossa Ability pelo Postman. A URL, o Basic Auth e os cabeçalhos permanecem os mesmos. Apenas o corpo da solicitação muda e deve ser definido da seguinte forma:

{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"kinsta-plugin/create-draft","parameters":{"title":"Postman test","content":"Test content from Postman"}}}}
  • method informa ao servidor MCP que deve usar uma das ferramentas padrão do servidor (tools/call).
  • params.name é a ferramenta genérica (mcp-adapter-execute-ability) responsável por executar a Ability especificada abaixo.
  • params.arguments.ability_name é o identificador completo da Ability a ser executada (kinsta-plugin/create-draft).
  • params.arguments.parameters é o objeto que contém os argumentos exigidos pelo input_schema da Ability (title e content).

Agora, clique em Send para enviar a solicitação. Você deverá receber um status 200 OK e a seguinte resposta:

Corpo de uma resposta bem-sucedida no Postman.
Corpo de uma resposta bem-sucedida no Postman.

Em seguida, abra o painel de controle do WordPress e verifique se o rascunho Postman test existe.

Se você chegou até aqui sem problemas ou erros, pode avançar para a etapa final: configurar o Claude Desktop.

Configurar o Claude Desktop

Agora você precisa conectar o Claude Desktop ao seu site WordPress usando o proxy oficial @automattic/mcp-wordpress-remote. Ele converte chamadas MCP via STDIO em solicitações HTTP autenticadas para a API REST do WordPress.

Etapa 1: Editar o arquivo de configuração

Abra o arquivo de configuração do Claude Desktop diretamente pelo aplicativo clicando no ícone com seu nome no canto inferior esquerdo e, em seguida, acesse Settings > Developer > Edit Config.

Acessar o arquivo de configuração do Claude Desktop.
Acessar o arquivo de configuração do Claude Desktop.

Isso levará você diretamente ao arquivo claude_desktop_config.json. Abra o arquivo e substitua o conteúdo atual pelo seguinte:

{
  "mcpServers": {
	"wordpress-kinsta": {
	  "command": "npx",
	  "args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
	  "env": {
		"WP_API_URL": "https://yoursite.com/wp-json/mcp/mcp-adapter-default-server",
		"WP_API_USERNAME": "your-wp-username",
		"WP_API_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
		"OAUTH_ENABLED": "false"
	  }
	}
  }
}

Certifique-se de substituir os placeholders pelos seus dados reais, salve o arquivo e feche completamente o Claude Desktop pela bandeja do sistema, não apenas fechando a janela, pois ele pode continuar sendo executado em segundo plano.

Etapa 2: Verificar a conexão no Claude Desktop

Volte ao Claude Desktop e acesse Seu nome > Settings > Developer. Aqui, você encontrará a lista de servidores MCP locais. Se você seguiu todas as etapas anteriores, deverá ver uma aba de resumo do servidor wordpress-kinsta com o status de execução.

Servidores MCP locais no Claude Desktop
Servidores MCP locais no Claude Desktop

Agora peça ao Claude para listar as ferramentas disponíveis no servidor wordpress-kinsta. O Claude Desktop responderá listando as ferramentas, conforme mostrado na imagem abaixo:

Lista de ferramentas disponíveis no servidor MCP
O Claude Desktop lista as ferramentas disponíveis no servidor MCP.

Como mencionado anteriormente, você não precisa conhecer os identificadores de cada Ability. Basta explicar à IA o que deseja que ela faça, e o modelo descobrirá as Abilities registradas, encontrará a opção correta com seus respectivos parâmetros e, por fim, a executará com os valores adequados.

Uma solicitação em linguagem natural no Claude Desktop.
Uma solicitação em linguagem natural no Claude Desktop.

Para fornecer mais detalhes sobre uma Ability específica, será solicitado que você autorize o Claude a usar Get Ability Info do servidor MCP wordpress-kinsta. Após aprovar a solicitação, o Claude fornecerá todos os detalhes da Ability.

Claude fornece os detalhes da Ability solicitada.
Claude fornece os detalhes da Ability solicitada.

Pedir à IA para executar sua Ability

Por fim, você pode enviar ao Claude sua primeira solicitação para criar um rascunho de artigo. É claro que você solicitará ao Claude que gere o texto usando um prompt com diretrizes específicas. A imagem abaixo mostra um exemplo:

Exemplo de prompt solicitando a geração de um rascunho em um site WordPress.
Exemplo de prompt solicitando a geração de um rascunho em um site WordPress.

Autorize o Claude a executar a Ability e aguarde alguns segundos pelo resultado. O que você verá no chat após a conclusão da operação será semelhante à imagem abaixo:

Claude confirma a criação do rascunho do artigo.
Claude confirma a criação do rascunho do artigo.

Agora acesse o painel de controle do WordPress e vá até a tela Artigos. Nela, você deverá encontrar o rascunho com o título escolhido. Abra-o e veja como ele aparece no editor:

O rascunho solicitado no Editor de Blocos.
O rascunho solicitado no Editor de Blocos.

E sim, o resultado é realmente impressionante, considerando que levou apenas alguns segundos para ser gerado.

No entanto, vale observar que o conteúdo produzido está em HTML puro. Isso ocorre porque nosso plugin não inclui a lógica necessária para mapear as seções do conteúdo em blocos do Gutenberg.

O conteúdo do artigo não está estruturado em blocos do Gutenberg.
O conteúdo do artigo não está estruturado em blocos do Gutenberg.

Em seguida, repetimos a solicitação, desta vez pedindo ao Claude que formatasse o conteúdo em blocos do Gutenberg. Esta foi a resposta que recebemos no chat:

Exemplo de resposta no Claude Desktop.
Claude confirma que o conteúdo do artigo foi estruturado em blocos do Gutenberg.

Claude confirma que o conteúdo do artigo foi estruturado em blocos do Gutenberg.

O conteúdo da postagem agora está estruturado em blocos do Gutenberg.
O conteúdo da postagem agora está estruturado em blocos do Gutenberg.

Por que seu site WordPress agêntico precisa de uma infraestrutura de alto desempenho

Conectar seu site WordPress a um modelo de IA por meio do Model Context Protocol muda drasticamente a natureza do seu site. Não se trata mais apenas de fornecer páginas estáticas a partir do cache ou responder a solicitações individuais dos usuários. Para se comunicar com seu Cliente de IA via MCP, o WordPress precisa ser capaz de lidar com um tipo de carga de solicitações completamente diferente.

Considere que um agente de IA pode executar dezenas de chamadas REST em questão de segundos, uma sequência que nenhum usuário humano conseguiria realizar em intervalos tão curtos. Além disso, as solicitações MCP ignoram completamente o cache de páginas e atingem diretamente suas threads PHP a cada handshake. Esse padrão exige uma stack de PHP e banco de dados otimizada para desempenho; caso contrário, você corre o risco de ocorrerem timeouts durante uma operação crítica (como a criação programática de um rascunho de artigo).

Quando se trata de Abilities públicas, a segurança é outro ponto fundamental, pois cada Ability exposta via MCP é um endpoint que precisa ser protegido. Embora a API permita definir uma permission_callback e exija que as solicitações sejam autenticadas por meio de uma Senha de Aplicativo, um provedor de hospedagem que ofereça medidas de segurança rigorosas, como Web Application Firewalls, isolamento de contêineres, certificados SSL automatizados e bloqueio de IP, reduz drasticamente a superfície de ataque e mitiga os riscos de invasões não autorizadas ao seu site.

Ter ambientes de teste executados por HTTPS e que utilizem exatamente a mesma stack de tecnologia do seu site em produção é absolutamente essencial ao testar as Abilities registradas no seu site antes de implantá-las em produção. Além disso, o acesso a ferramentas para desenvolvedores, como SSH e WP-CLI, é indispensável para criar uma integração de IA confiável com base no protocolo MCP.

A observabilidade também é um requisito estratégico para um site que se comunica constantemente com ferramentas de IA. Ter acesso a uma ferramenta de APM e aos registros do servidor é essencial para entender o que está acontecendo nos bastidores, diagnosticar por que uma solicitação HTTP pode estar falhando silenciosamente e identificar o que está causando gargalos na arquitetura do seu site.

Por todos esses motivos, atualmente é mais importante do que nunca escolher uma infraestrutura e um serviço de hospedagem que ofereçam a arquitetura, as ferramentas e o suporte premium exigidos por um site WordPress moderno. A Kinsta oferece tudo isso e muito mais em um único painel de controle centralizado.

A partir dele, você pode acessar diretamente seu site, iniciar o monitoramento de desempenho, obter os dados de acesso SSH, baixar os registros do site e entrar em contato com nossa equipe de suporte especializada. Caso suas automações de IA exijam ainda mais poder de processamento, você pode otimizar o desempenho do PHP instantaneamente ou adicionar o complemento de Ambiente de Teste Premium para garantir o máximo de capacidade de resposta tanto nos testes quanto em produção.

O futuro do WordPress é agêntico

O WordPress está evoluindo de um CMS tradicional para um hub completo de aplicações agênticas. A introdução da Abilities API e do Cliente de IA é uma prova definitiva de que o futuro da web não se baseia mais apenas em interações humanas, mas também inclui amplamente máquinas e agentes inteligentes trabalhando de forma autônoma em segundo plano.

Seja para converter um arquivo de áudio em um artigo, integrar um fluxo de trabalho automatizado via GitHub Actions ou criar uma conexão integrada entre seu site e o cliente Claude Desktop, o WordPress está totalmente preparado para processar solicitações complexas e transformar dados de entrada em blocos nativos do Gutenberg. Cabe a você fornecer aos seus aplicativos o poder, a segurança e a escalabilidade de que precisam escolhendo um parceiro de hospedagem líder do setor, como a Kinsta.

Você já conferiu nossos planos? Caso não tenha certeza de qual deles é mais adequado ao fluxo de trabalho específico do seu site, nossa equipe de vendas terá prazer em responder a todas as suas perguntas.

Carlo Daniele Kinsta

Carlo é um apaixonado por webdesign e desenvolvimento frontend. Ele tem mais de 10 anos de experiência com WordPress e colaborou com diversas universidades e instituições educacionais na Itália e na Europa. Carlo já publicou inúmeros artigos e guias sobre WordPress, tanto em sites italianos quanto internacionais, além de revistas impressas. Você pode seguir ele no LinkedIn e no X.