{"id":1537,"date":"2026-09-11T01:04:33","date_gmt":"2026-09-11T04:04:33","guid":{"rendered":"https:\/\/www.linuxpro.com.br\/?p=1537"},"modified":"2026-09-12T07:41:57","modified_gmt":"2026-09-12T10:41:57","slug":"mcp-wp-go-wordpress-por-mcp-sem-ssh","status":"publish","type":"post","link":"https:\/\/www.linuxpro.com.br\/es\/2026\/09\/mcp-wp-go-wordpress-por-mcp-sem-ssh\/","title":{"rendered":"mcp-wp-go: automatiza WordPress sin SSH"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/09\/mcp-wp-go-wordpress-rest.webp\" alt=\"Mascote LinuxPro gerenciando WordPress por MCP em uma esta\u00e7\u00e3o com telas de API e upload de m\u00eddia\" width=\"1486\" height=\"856\" \/><\/p>\n<p>Criar rascunhos, enviar imagens e revisar artigos n\u00e3o deveria exigir acesso de administrador ao servidor. O <code>mcp-wp-go<\/code> conecta um cliente de IA \u00e0 REST API do WordPress, permitindo operar posts e m\u00eddias por ferramentas MCP. O shell do servidor fica fora desse fluxo editorial.<\/p>\n<p>Nesta revis\u00e3o, o guia usa a <strong>v0.4.0<\/strong>: al\u00e9m das ferramentas editoriais, o bin\u00e1rio converte Markdown em HTML pronto para enviar ao WordPress. A seguir, voc\u00ea configura uma credencial separada, testa a convers\u00e3o local e monta um processo de publica\u00e7\u00e3o com revis\u00e3o e valida\u00e7\u00e3o.<\/p>\n<p><a href=\"https:\/\/github.com\/jniltinho\/mcp-wp-go\/releases\/tag\/v0.4.0\">Release v0.4.0 e arquivos para download<\/a><\/p>\n<h2>O que roda no computador e o que roda no WordPress<\/h2>\n<p>O cliente MCP inicia o bin\u00e1rio local e conversa com ele por <code>stdio<\/code>. O bin\u00e1rio envia requisi\u00e7\u00f5es HTTPS ao site definido na configura\u00e7\u00e3o. N\u00e3o \u00e9 um plugin instalado no WordPress e n\u00e3o precisa de SSH para as opera\u00e7\u00f5es de conte\u00fado que oferece.<\/p>\n<pre><code class=\"language-text\">AI client -&gt; stdio\/MCP -&gt; mcp-wp-go -&gt; HTTPS\/REST -&gt; WordPress\nMarkdown file -&gt; post-html -&gt; HTML fragment -&gt; editorial review\n<\/code><\/pre>\n<p>A autentica\u00e7\u00e3o usa uma senha de aplicativo de um usu\u00e1rio WordPress. As permiss\u00f5es desse usu\u00e1rio continuam valendo. A API mant\u00e9m os mecanismos de autoriza\u00e7\u00e3o e os hooks do WordPress no caminho, mas o comportamento final de cache e extens\u00f5es depende da instala\u00e7\u00e3o.<\/p>\n<p>O projeto n\u00e3o inclui um modelo de IA nem traduz artigos por conta pr\u00f3pria. O cliente de IA decide quais ferramentas chamar; o servidor MCP executa as opera\u00e7\u00f5es dispon\u00edveis. Manuten\u00e7\u00e3o de nginx, PHP, plugins e banco de dados continua sendo uma atividade separada.<\/p>\n<h2>Recursos dispon\u00edveis e limites que importam<\/h2>\n<p>As ferramentas cobrem busca e edi\u00e7\u00e3o de posts, rascunhos, publica\u00e7\u00e3o e despublica\u00e7\u00e3o, biblioteca de m\u00eddia, capas, categorias, tags, autentica\u00e7\u00e3o, contagem de conte\u00fado e checagem p\u00fablica. A convers\u00e3o Markdown \u00e9 um subcomando local, n\u00e3o uma publica\u00e7\u00e3o autom\u00e1tica.<\/p>\n<p><strong>Posts n\u00e3o s\u00e3o p\u00e1ginas.<\/strong> A refer\u00eancia desta vers\u00e3o n\u00e3o oferece ferramentas de CRUD para p\u00e1ginas institucionais. Um ID de p\u00e1gina enviado a uma ferramenta de post pode retornar ID inv\u00e1lido, mesmo que a p\u00e1gina exista. Para esse caso, use o editor ou uma integra\u00e7\u00e3o com o endpoint de p\u00e1ginas da REST API.<\/p>\n<p>Categorias e tags s\u00e3o reaproveitadas por seus IDs existentes. Atualizar um post n\u00e3o permite mudar seu slug, data ou status; a altera\u00e7\u00e3o de status tem ferramenta pr\u00f3pria. Isso reduz mudan\u00e7as acidentais em URLs j\u00e1 indexadas.<\/p>\n<p><a href=\"https:\/\/github.com\/jniltinho\/mcp-wp-go\/blob\/main\/docs\/TOOLS.md\">Refer\u00eancia das ferramentas e par\u00e2metros<\/a><\/p>\n<h2>Instalar o bin\u00e1rio no Linux sem compilar Go<\/h2>\n<p>O exemplo abaixo \u00e9 exclusivo para Linux x86_64, usa uma vers\u00e3o fixa e confere o SHA-256 do pacote. Execute em Bash como usu\u00e1rio comum. Ele instala em <code>$HOME\/.local\/bin<\/code> e interrompe se j\u00e1 houver um bin\u00e1rio nesse destino: n\u00e3o substitui silenciosamente a instala\u00e7\u00e3o de outro cliente.<\/p>\n<pre><code class=\"language-bash\">(\nset -eu\ncase &quot;$(uname -s):$(uname -m)&quot; in\n  Linux:x86_64) ;;\n  *) printf &#x27;%s\\n&#x27; &#x27;This package requires Linux x86_64.&#x27; &gt;&amp;2; exit 1 ;;\nesac\nTARGET=&quot;$HOME\/.local\/bin\/mcp-wp-go&quot;\nif [ -e &quot;$TARGET&quot; ] || [ -L &quot;$TARGET&quot; ]; then\n  printf &#x27;%s\\n&#x27; &#x27;Existing binary: review and back it up before upgrading.&#x27; &gt;&amp;2\n  exit 1\nfi\nWORKDIR=$(mktemp -d)\ncd &quot;$WORKDIR&quot;\ncurl --fail --location --show-error --output mcp-wp-go.tar.gz \\\n  https:\/\/github.com\/jniltinho\/mcp-wp-go\/releases\/download\/v0.4.0\/mcp-wp-go_0.4.0_linux_amd64.tar.gz\nprintf &#x27;%s\\n&#x27; &#x27;7300625f46c1d01ef474cb4001c7540ce564b79355b298f5c7d54dbcb9ea1006  mcp-wp-go.tar.gz&#x27; | sha256sum --check\ntar -xzf mcp-wp-go.tar.gz\ninstall -D -m 0755 mcp-wp-go &quot;$TARGET&quot;\n&quot;$TARGET&quot; --help\nprintf &#x27;Downloaded files: %s\\n&#x27; &quot;$WORKDIR&quot;\n)\n<\/code><\/pre>\n<p>O diret\u00f3rio tempor\u00e1rio \u00e9 informado ao final para voc\u00ea inspecionar o pacote. A release oferece Linux amd64, macOS arm64 e Windows amd64. Para outras combina\u00e7\u00f5es, ser\u00e1 necess\u00e1rio compilar. Use caminhos absolutos na configura\u00e7\u00e3o MCP; assim, o cliente n\u00e3o depende do PATH do seu terminal. Para atualizar uma instala\u00e7\u00e3o existente, fa\u00e7a backup do bin\u00e1rio, confira a nova vers\u00e3o e recarregue o cliente depois da troca.<\/p>\n<p>Se preferir compilar, confira o <code>go.mod<\/code> da vers\u00e3o escolhida. O snapshot consultado exige Go 1.27.1; o README resume o requisito como Go 1.27 ou superior. O alvo <code>make check<\/code> inclui testes com detector de corrida, que tamb\u00e9m exigem um ambiente compat\u00edvel com CGO e compilador C. O pacote pronto evita essa etapa.<\/p>\n<p><a href=\"https:\/\/github.com\/jniltinho\/mcp-wp-go\/blob\/main\/docs\/DEVELOPMENT.md\">Compila\u00e7\u00e3o, testes e desenvolvimento<\/a><\/p>\n<h2>Criar uma credencial exclusiva e guardar fora do projeto<\/h2>\n<p>No perfil do usu\u00e1rio WordPress, crie uma senha de aplicativo para esta integra\u00e7\u00e3o. Use uma conta com as capacidades necess\u00e1rias, sem conceder administra\u00e7\u00e3o do site por conveni\u00eancia. A senha de aplicativo n\u00e3o \u00e9 a senha de login, do banco ou do servidor; ela herda as permiss\u00f5es da conta e pode ser revogada separadamente.<\/p>\n<p>O pacote bin\u00e1rio n\u00e3o inclui um arquivo de configura\u00e7\u00e3o pronto. Este bloco cria um modelo privado, sem sobrescrever um arquivo existente. Depois, abra o arquivo no seu editor e substitua os exemplos pelos valores reais. N\u00e3o cole a credencial em um prompt, no Git ou no hist\u00f3rico de comandos.<\/p>\n<pre><code class=\"language-bash\">(\nset -eu\numask 077\nmkdir -p &quot;$HOME\/.config&quot; &quot;$HOME\/wordpress-media&quot;\nCONF=&quot;$HOME\/.config\/mcp-wp-go.env&quot;\nset -C\ncat &gt; &quot;$CONF&quot; &lt;&lt;&#x27;ENV&#x27;\nWP_BASE_URL=https:\/\/wordpress.example.com\nWP_USERNAME=editor-user\nWP_APP_PASSWORD=replace-with-your-application-password\nWP_TIMEOUT=30s\nWP_MAX_UPLOAD_BYTES=26214400\nWP_UPLOAD_ROOT=\/home\/user\/wordpress-media\nENV\nchmod 600 &quot;$CONF&quot;\nprintf &#x27;Edit this private file: %s\\n&#x27; &quot;$CONF&quot;\n)\n<\/code><\/pre>\n<p>Ajuste o host para a URL HTTPS can\u00f4nica e o diret\u00f3rio de m\u00eddia para um caminho absoluto real. O arquivo aceita pares simples de chave e valor; n\u00e3o conte com expans\u00e3o de <code>$HOME<\/code>, til ou comandos de shell dentro dele. O limite do exemplo \u00e9 25 MiB, mas WordPress, PHP ou proxy podem impor um limite menor.<\/p>\n<p><code>WP_UPLOAD_ROOT<\/code> delimita os arquivos locais que o processo pode ler para upload. O caminho \u00e9 do computador onde o MCP est\u00e1 rodando, n\u00e3o do servidor WordPress. D\u00ea acesso apenas \u00e0 pasta de m\u00eddias preparada para esse trabalho.<\/p>\n<p><a href=\"https:\/\/developer.wordpress.org\/advanced-administration\/security\/application-passwords\/\">WordPress: cria\u00e7\u00e3o e revoga\u00e7\u00e3o de senhas de aplicativo<\/a><\/p>\n<h2>Conectar ao cliente MCP e validar o acesso<\/h2>\n<p>A configura\u00e7\u00e3o abaixo \u00e9 um exemplo JSON para clientes compat\u00edveis. Cada cliente define seu formato e o local onde salvar a configura\u00e7\u00e3o; substitua os caminhos e consulte a documenta\u00e7\u00e3o correspondente. O comando sem subcomando inicia o servidor MCP, que aguarda mensagens pelo protocolo.<\/p>\n<pre><code class=\"language-json\">{\n  &quot;mcpServers&quot;: {\n    &quot;wordpress&quot;: {\n      &quot;type&quot;: &quot;stdio&quot;,\n      &quot;command&quot;: &quot;\/home\/user\/.local\/bin\/mcp-wp-go&quot;,\n      &quot;args&quot;: [\n        &quot;--env-file&quot;,\n        &quot;\/home\/user\/.config\/mcp-wp-go.env&quot;\n      ]\n    }\n  }\n}\n<\/code><\/pre>\n<p>Recarregue o cliente e chame <code>wordpress_site_health<\/code> com um objeto vazio. Confira o site e a identidade retornados antes de alterar qualquer conte\u00fado. O funcionamento do bin\u00e1rio no terminal n\u00e3o garante que o cliente esteja usando o mesmo caminho ou a configura\u00e7\u00e3o correta.<\/p>\n<h2>Converter Markdown em HTML: laborat\u00f3rio local<\/h2>\n<p>A novidade da v0.4.0 pode ser testada sem credenciais WordPress e sem publicar nada. O bloco cria um arquivo Markdown em uma pasta tempor\u00e1ria e converte para um fragmento HTML. Ele inclui c\u00f3digo Bash e uma express\u00e3o de template para conferir a preserva\u00e7\u00e3o do conte\u00fado.<\/p>\n<pre><code class=\"language-bash\">(\nset -eu\nLAB_DIR=$(mktemp -d)\ncd &quot;$LAB_DIR&quot;\ncat &gt; article.md &lt;&lt;&#x27;MARKDOWN&#x27;\n## Local test\n\nThis article is only a local conversion test.\n\n```bash\nprintf &#x27;%s\\n&#x27; &#x27;Hello, WordPress&#x27;\n```\n\n```yaml\nservice:\n  port: &quot;{{ app_port }}&quot;\n```\nMARKDOWN\n&quot;$HOME\/.local\/bin\/mcp-wp-go&quot; post-html article.md --output article.html\ngrep -F &#x27;language-bash&#x27; article.html\ngrep -F &#x27;{{ app_port }}&#x27; article.html\nprintf &#x27;Review the HTML: %s\/article.html\\n&#x27; &quot;$LAB_DIR&quot;\n)\n<\/code><\/pre>\n<p>O resultado n\u00e3o \u00e9 uma p\u00e1gina HTML completa: \u00e9 o corpo que ser\u00e1 enviado ao WordPress. Tabelas, listas e linguagens de blocos de c\u00f3digo s\u00e3o reconhecidas, mas o conversor n\u00e3o faz upload de imagens, n\u00e3o publica, n\u00e3o extrai metadados de front matter e n\u00e3o gera estilos do tema.<\/p>\n<p><strong>HTML embutido n\u00e3o \u00e9 sanitizado.<\/strong> Converta apenas Markdown confi\u00e1vel e revise o HTML antes do envio. Um iframe preservado pelo conversor ainda depende das permiss\u00f5es e filtros do WordPress; sua apar\u00eancia responsiva depende do CSS do tema.<\/p>\n<p><a href=\"https:\/\/github.com\/jniltinho\/mcp-wp-go\/blob\/main\/docs\/CONTENT-WORKFLOW.md\">Fluxo oficial de Markdown, imagens e publica\u00e7\u00e3o<\/a><\/p>\n<h2>Do rascunho \u00e0 publica\u00e7\u00e3o: uma etapa de cada vez<\/h2>\n<p>Os JSONs a seguir s\u00e3o argumentos de ferramentas MCP, n\u00e3o comandos para colar no shell. Os IDs s\u00e3o ilustrativos: substitua-os pelos resultados reais. Primeiro pesquise com <code>wordpress_list_posts<\/code> para evitar duplicatas e consulte as categorias e tags existentes.<\/p>\n<h3>1. Criar e reler o rascunho<\/h3>\n<p>Envie o HTML completo a <code>wordpress_create_post<\/code> com status de rascunho. O exemplo m\u00ednimo omite categorias e tags para n\u00e3o reutilizar IDs de outro site. A cria\u00e7\u00e3o fecha os coment\u00e1rios.<\/p>\n<pre><code class=\"language-json\">{\n  &quot;title&quot;: &quot;Local automation guide&quot;,\n  &quot;content&quot;: &quot;&lt;h2&gt;Introduction&lt;\/h2&gt;&lt;p&gt;Reviewed article body.&lt;\/p&gt;&quot;,\n  &quot;status&quot;: &quot;draft&quot;,\n  &quot;excerpt&quot;: &quot;A practical automation guide.&quot;\n}\n<\/code><\/pre>\n<p>Guarde o ID devolvido e chame <code>wordpress_get_post<\/code>. Compare o HTML edit\u00e1vel com a vers\u00e3o renderizada para identificar filtros, tags removidas ou trechos que n\u00e3o sobreviveram \u00e0 grava\u00e7\u00e3o.<\/p>\n<h3>2. Enviar imagens e definir a capa<\/h3>\n<p>Envie imagens do corpo com <code>wordpress_upload_media<\/code> e use os caminhos retornados na marca\u00e7\u00e3o. Associar uma m\u00eddia a um post n\u00e3o a insere automaticamente no texto. A valida\u00e7\u00e3o aceita GIF, JPEG, PNG e WebP; n\u00e3o use esse caminho para enviar arquivos arbitr\u00e1rios.<\/p>\n<p>Para um novo artigo, <code>wordpress_set_post_cover<\/code> envia a imagem e coloca uma URL relativa no in\u00edcio do corpo, sem definir imagem destacada. O par\u00e2metro de substitui\u00e7\u00e3o \u00e9 verdadeiro por padr\u00e3o. Essa opera\u00e7\u00e3o n\u00e3o significa sobrescrever o arquivo antigo mantendo o mesmo nome ou URL.<\/p>\n<pre><code class=\"language-json\">{\n  &quot;post_id&quot;: 123,\n  &quot;file_path&quot;: &quot;\/home\/user\/wordpress-media\/cover.webp&quot;,\n  &quot;alt_text&quot;: &quot;Linux workstation showing an editorial workflow&quot;\n}\n<\/code><\/pre>\n<p>Em um post existente cuja capa deve ser mantida, n\u00e3o chame essa ferramenta: preserve o primeiro elemento de imagem ao editar o HTML. Tamb\u00e9m n\u00e3o exclua uma m\u00eddia sem verificar onde ela \u00e9 usada; outros artigos podem depender do mesmo arquivo.<\/p>\n<h3>3. Revisar, autorizar e conferir a p\u00e1gina p\u00fablica<\/h3>\n<p>Ap\u00f3s revisar texto, links, taxonomias, imagens e coment\u00e1rios, chame <code>wordpress_publish_posts<\/code> com o ID aprovado. Publica\u00e7\u00e3o e despublica\u00e7\u00e3o aceitam de 1 a 100 IDs \u00fanicos e devolvem resultados individuais; uma falha n\u00e3o desfaz automaticamente os demais itens do lote.<\/p>\n<pre><code class=\"language-json\">{ &quot;ids&quot;: [123], &quot;confirm&quot;: true }\n<\/code><\/pre>\n<p>Depois use <code>wordpress_check_post_live<\/code>. A ferramenta exige status publicado e resposta p\u00fablica HTTP 2xx, mas n\u00e3o certifica tradu\u00e7\u00e3o, diagrama\u00e7\u00e3o ou qualidade editorial. Abra a p\u00e1gina, teste o celular e confira se a imagem e os blocos de c\u00f3digo est\u00e3o corretos.<\/p>\n<h2>Editar sem perder conte\u00fado ou mudar o endere\u00e7o<\/h2>\n<p>Antes de editar, salve uma c\u00f3pia do HTML original e releia o post para evitar trabalhar sobre uma vers\u00e3o antiga. Em <code>wordpress_update_post<\/code>, os campos enviados substituem os valores anteriores: o campo de conte\u00fado recebe o corpo inteiro, n\u00e3o apenas o par\u00e1grafo alterado.<\/p>\n<p>Preserve capa, embeds, exemplos, links e marcadores necess\u00e1rios ao tema. O bloqueio de slug, data e status n\u00e3o impede que um corpo incompleto apague se\u00e7\u00f5es. Se o objetivo \u00e9 somente melhorar o texto, n\u00e3o inclua uma troca de capa ou uma opera\u00e7\u00e3o de publica\u00e7\u00e3o no mesmo pedido.<\/p>\n<h2>Contagens e diagn\u00f3stico dos erros mais comuns<\/h2>\n<p><code>wordpress_content_stats<\/code> consulta os totais vis\u00edveis \u00e0 credencial, separando posts publicados, n\u00e3o publicados e m\u00eddias. A lixeira \u00e9 exclu\u00edda. Isso n\u00e3o representa p\u00e1ginas institucionais, visitas nem quantidade de tradu\u00e7\u00f5es conclu\u00eddas; tamb\u00e9m n\u00e3o se deve deduzir o total contando s\u00f3 a primeira p\u00e1gina de resultados.<\/p>\n<p>Ferramenta nova n\u00e3o aparece: confirme o caminho do execut\u00e1vel, confira a vers\u00e3o instalada e recarregue o cliente para redescobrir os schemas.<\/p>\n<p>Resposta 401 ou 403: confira credencial, capacidades do usu\u00e1rio e poss\u00edveis bloqueios de seguran\u00e7a ou proxy. N\u00e3o desative prote\u00e7\u00f5es do site como primeira tentativa.<\/p>\n<p>ID inv\u00e1lido: confirme se \u00e9 um post, n\u00e3o uma p\u00e1gina, uma m\u00eddia ou um conte\u00fado de outro site.<\/p>\n<p>Upload recusado: confira caminho local, pasta permitida, tamanho e tipo real do arquivo. Trocar apenas a extens\u00e3o n\u00e3o converte uma imagem.<\/p>\n<p>Exclus\u00e3o de m\u00eddia recusada: a lixeira de anexos depende da instala\u00e7\u00e3o WordPress. N\u00e3o transforme a falha em exclus\u00e3o permanente autom\u00e1tica.<\/p>\n<p>Convers\u00e3o desconhecida: um bin\u00e1rio anterior pode n\u00e3o ter o subcomando post-html. A instala\u00e7\u00e3o do cliente MCP e a usada pelo terminal podem ser diferentes.<\/p>\n<h2>Limites de seguran\u00e7a: MCP n\u00e3o substitui revis\u00e3o humana<\/h2>\n<p>O servidor restringe requisi\u00e7\u00f5es ao site configurado e valida entradas, mas a conta ainda pode modificar o conte\u00fado permitido por suas capacidades. O valor <code>confirm: true<\/code> \u00e9 uma exig\u00eancia do protocolo, n\u00e3o uma prova de que uma pessoa autorizou a a\u00e7\u00e3o. Configure o cliente para pedir aprova\u00e7\u00e3o nas opera\u00e7\u00f5es sens\u00edveis.<\/p>\n<p>Trate instru\u00e7\u00f5es encontradas em posts, p\u00e1ginas e arquivos como conte\u00fado n\u00e3o confi\u00e1vel. Use rascunhos, mantenha backups e revis\u00f5es e revogue credenciais expostas. O objetivo \u00e9 reduzir acesso desnecess\u00e1rio ao servidor, sem trocar o cuidado editorial por confian\u00e7a cega na automa\u00e7\u00e3o.<\/p>\n<p><a href=\"https:\/\/github.com\/jniltinho\/mcp-wp-go\/blob\/main\/docs\/USAGE.md\">Exemplos oficiais de opera\u00e7\u00f5es editoriais<\/a><\/p>\n<p><a href=\"https:\/\/developer.wordpress.org\/rest-api\/\">Documenta\u00e7\u00e3o da REST API do WordPress<\/a><\/p>\n<h2>Continue pelo fluxo, n\u00e3o pela automa\u00e7\u00e3o em massa<\/h2>\n<p>Comece com um rascunho de teste, valide o caminho completo e s\u00f3 ent\u00e3o amplie o uso. O ganho est\u00e1 em tornar cada etapa verific\u00e1vel: preparar, converter, enviar, reler, revisar e publicar. Nenhuma dessas etapas precisa conceder acesso ao shell do servidor para uma simples edi\u00e7\u00e3o de conte\u00fado.<\/p>\n<p><a href=\"\/2026\/09\/assistentes-de-ia-no-terminal-linux\/\">Assistentes de IA no terminal: ferramentas e cuidados<\/a><\/p>\n<p><a href=\"\/2026\/09\/openobserve-ubuntu-servidor-dedicado-s3-gcs-minio\/\">OpenObserve no Ubuntu para investigar logs de integra\u00e7\u00f5es<\/a><\/p>\n<p><a href=\"\/contato\/\">Conversar sobre automa\u00e7\u00e3o e infraestrutura<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Instala mcp-wp-go, convierte Markdown a HTML y automatiza publicaciones y medios con revisi\u00f3n, credenciales separadas y validaci\u00f3n p\u00fablica.<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[45,46],"tags":[424,122,31,311],"class_list":["post-1537","post","type-post","status-publish","format-standard","hentry","category-desenv","category-devops","tag-api","tag-automacao","tag-golang","tag-mcp"],"_links":{"self":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/1537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/comments?post=1537"}],"version-history":[{"count":6,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/1537\/revisions"}],"predecessor-version":[{"id":1591,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/posts\/1537\/revisions\/1591"}],"wp:attachment":[{"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/media?parent=1537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/categories?post=1537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/es\/wp-json\/wp\/v2\/tags?post=1537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}