- documenta as 18 tools do MCP wpfc (site como parametro, guarda-corpo Premium, allowlist fixa de 7 option keys) - mesma convencao das skills mcp-element-pack/mcp-bit-social/mcp-cloudflare-app: esta skill e o 'como executar', wp-fastest-cache continua a ser o mapeamento completo das options - cross-referencia wp-fastest-cache <-> mcp-wpfc nos dois sentidos
6.5 KiB
name, description, layer
| name | description | layer |
|---|---|---|
| mcp-wpfc | MCP dedicado multi-site (node stdio, ligação `wpfc` em ~/.omp/agent/mcp.json) para gerir o WP Fastest Cache (Free + Premium) em qualquer site do bundle Descomplicar® via WP-CLI/SSH — estado do plugin, config principal com guarda-corpo Premium, purga, exclusões, Clearing Specific Pages, CDN, Varnish, caminho da cache, restrições de toolbar. Site é um parâmetro em cada tool, não uma ligação fixa. Usar quando "purgar cache via mcp", "wpfc mcp", "activar premium wp fastest cache", "config wpfc", "regras de exclusão wpfc", "clearing specific pages mcp", "cdn nativa wpfc", "varnish wpfc", "toolbar wpfc". | wiki |
/mcp-wpfc — MCP dedicado multi-site ao WP Fastest Cache
Projecto em /media/ealmeida/Dados/Dev/mcp-wpfc/ (TypeScript, SDK MCP oficial, stdio). Não é uma
extensão do EMCP Tools — mesma razão que mcp-element-pack: sem código PHP novo no WordPress,
cada tool executa wp option get/update ou wp fastest-cache clear via ssh server sobre o
WP-CLI já instalado. Diferença estrutural face a element-pack/bit-social/cloudflare-app:
site é um parâmetro em cada tool, não uma ligação fixa por site — WP Fastest Cache está
espalhado por 8 sites reais do bundle com estados diferentes (ver skill wp-fastest-cache §16.1).
Relação com a skill wp-fastest-cache: essa skill é a fonte de conhecimento (mapeamento
completo de todas as options e o seu significado, comportamento por versão Free/Premium, gotchas
de produção). Esta skill é o "como executar" — qual tool chamar para cada operação. Consultar
wp-fastest-cache para entender uma definição; usar as tools abaixo para lê-la/escrevê-la.
Âmbito
Config e purga do WP Fastest Cache (Free + Premium). Não cobre: activação/desactivação do próprio
plugin (emcp-tools activate-plugin/deactivate-plugin já cobre isso genericamente), Redis
Object Cache (skill redis-object-cache), purga Cloudflare edge (App for Cloudflare® ou
mcp-cloudflare-app), WP Meteor (skill wp-meteor).
Sites conhecidos
Chamar wpfc_list_sites para a lista actual com path e nota de estado. Aliases verificados ao
vivo 19-08-2026: descomplicar (produção, Free+Premium inactivos), emanuelalmeida (Free
active), starter (Free active), ccv (Free active), care/ecommerce-demo/ecommerce
(WPFC não instalado), e-commerce (Free inactive). Também aceita um path absoluto directamente
(/home/ealmeida/<site>) para sites fora desta lista, sem exigir rebuild do MCP.
Tools (18)
| Tool | Read-only | Uso |
|---|---|---|
wpfc_list_sites |
sim | Aliases conhecidos, path WP, nota de estado |
wpfc_get_status |
sim | Free/Premium instalado, activo, versão — chamar sempre antes de wpfc_set_config |
wpfc_get_config |
sim | Option WpFastestCache completa |
wpfc_set_config |
não | Merge de chaves na WpFastestCache (read-modify-write) — recusa chaves só-Premium sem wp-fastest-cache-premium activo ou force_premium:true |
wpfc_purge_cache |
não | mode: all / all_minified / post (exige post_id). Não purga Cloudflare — usar mcp-cloudflare-app/App for Cloudflare® à parte |
wpfc_get_exclude / wpfc_set_exclude |
sim/não | WpFastestCacheExclude — regras de exclusão de páginas/cookies/user-agents. Set é substituição completa, não merge |
wpfc_get_csp / wpfc_set_csp |
sim/não | WpFastestCacheCSP — Clearing Specific Pages (purga extra de páginas agregadoras). Set substitui por inteiro |
wpfc_get_cdn / wpfc_set_cdn |
sim/não | WpFastestCacheCDN — integrações CDN nativas (Cloudflare/MaxCDN/BunnyCDN/CloudFront/genérica). Set substitui por inteiro |
wpfc_get_varnish / wpfc_set_varnish |
sim/não | WpFastestCacheVarnish — {server, status?}. Set substitui por inteiro |
wpfc_get_pathSettings / wpfc_set_pathSettings |
sim/não | WpFastestCachePathSettings — {cachepath, optimizedpath}. Set substitui por inteiro |
wpfc_get_toolbarSettings / wpfc_set_toolbarSettings |
sim/não | WpFastestCacheToolbarSettings — roles sem acesso à toolbar de admin. Set substitui por inteiro |
Todas as tools exigem site como primeiro parâmetro.
Segurança
Allowlist fixa dos 7 nomes de option WPFC (src/wpcli.ts, OPTION_KEYS) — nunca wp option update genérico sobre uma chave arbitrária. Escritas via base64 em stdin, nunca interpoladas no
comando SSH remoto. Guarda-corpo Premium em wpfc_set_config: chaves em PREMIUM_ONLY_CONFIG_KEYS
(Lazy Load, Minify JS, Combine JS, Render Blocking, Google Fonts, Mobile Theme, Delay JS,
wpFastestCachePremium) só gravam se wpfc_get_status confirmar wp-fastest-cache-premium
activo nesse site, ou se o chamador passar force_premium:true já com essa confirmação feita.
Gotcha crítico de formato — não replicar noutros MCPs sem verificar primeiro: as 7 options
WPFC são strings PHP planas cujo conteúdo é texto JSON (json_encode() gravado directamente),
não options JSON tipadas do WP-CLI. getOption/setOption deste MCP nunca usam
--format=json — leem/escrevem a string crua e fazem JSON.parse/JSON.stringify uma única vez
do lado do cliente. Usar --format=json aqui causa dupla codificação e corrompe a option (foi
reproduzido em produção durante o build e corrigido — ver skill wp-fastest-cache §16.2 para o
relato completo). Qualquer extensão futura deste MCP, ou um MCP novo sobre outro plugin, deve
testar wp option get <key> sem --format=json primeiro para confirmar o tipo real
armazenado antes de escolher o padrão de leitura/escrita.
Verificação
Construído e testado ponta-a-ponta contra produção 19-08-2026: wpfc_get_status em descomplicar
e ccv confirmou os dados reais (Free/Premium inactivos em descomplicar, Free activo em ccv);
wpfc_set_config recusou correctamente uma chave Premium (wpFastestCacheGoogleFonts) em
descomplicar (Premium inactivo); escreveu e releu correctamente uma chave Free
(wpFastestCacheDisableEmojis), confirmado por leitura SSH directa fora do MCP;
wpfc_get_exclude/wpfc_set_exclude testado em ccv (fallback [] → escrita [] → releitura
[]); wpfc_purge_cache executado com sucesso em ccv.
Skills relacionadas
wp-fastest-cache— mapeamento completo de todas as options e comportamento Free vs Premium, gotchas de produção, decision tree de comandos WP-CLI equivalentes.mcp-cloudflare-app— purga da camada edge (Cloudflare), complementar à purga local deste MCP.redis-object-cache— a terceira camada de cache do bundle, fora do âmbito deste MCP.