wordpress: nova skill mcp-wpmeteor (como usar o MCP wpmeteor)
- documenta as 8 tools do MCP wpmeteor: status, config, toggle de modulo, delay, exclusoes, telemetria detected - wp-meteor actualizada: estado real confirmado nos 8 sites do bundle (so emanuelalmeida.pt tem o plugin), cross-referencia para mcp-wpmeteor - mesma convencao de mcp-wpfc/mcp-element-pack/mcp-cloudflare-app: esta skill e o 'como executar', wp-meteor continua a ser o mapeamento
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
---
|
||||
name: mcp-wpmeteor
|
||||
description: MCP dedicado multi-site (node stdio, ligação `wpmeteor` em ~/.omp/agent/mcp.json) para gerir o WP Meteor (delay/reorder de JavaScript não crítico) em qualquer site do bundle Descomplicar® via WP-CLI/SSH — estado do plugin, config completa, toggle de módulo, delay do ultimate-reorder, exclusões manuais, telemetria detected. Site é um parâmetro em cada tool. Usar quando "gestão wp meteor", "wpmeteor mcp", "desligar ultimate reorder via mcp", "mudar delay wp meteor", "exclusões wp meteor mcp", "activar módulo elementor-pp".
|
||||
layer: wiki
|
||||
---
|
||||
|
||||
# /mcp-wpmeteor — MCP dedicado multi-site ao WP Meteor
|
||||
|
||||
Projecto em `/media/ealmeida/Dados/Dev/mcp-wpmeteor/` (TypeScript, SDK MCP oficial, stdio). Sem
|
||||
código PHP novo no WordPress: cada tool executa `wp option get` / `wp option patch` via
|
||||
`ssh server` sobre o WP-CLI já instalado. O plugin **não regista nenhum comando WP-CLI próprio**
|
||||
(confirmado por grep a todo o código-fonte — ver skill `wp-meteor`); toda a config vive numa
|
||||
única option, `wp-meteor-settings`.
|
||||
|
||||
**Relação com a skill `wp-meteor`:** essa skill é a fonte de conhecimento completa — os 5 módulos
|
||||
reais, a semântica exacta do `delay`, as duas camadas de exclusão automática embutidas (`gdpr`,
|
||||
`Compatibility`), os mecanismos de bypass automático, diagnóstico de CLS/CWV. Esta skill é o "como
|
||||
executar" — qual tool chamar para cada operação. Consultar `wp-meteor` para entender uma
|
||||
definição antes de a alterar por aqui.
|
||||
|
||||
## Âmbito
|
||||
|
||||
Config do WP Meteor: 5 módulos, delay do `ultimate-reorder`, exclusões manuais
|
||||
(`exclude.value`), leitura da telemetria `detected`. Não cobre: activação/desactivação do
|
||||
próprio plugin (`emcp-tools activate-plugin`/`deactivate-plugin` já cobre isso genericamente),
|
||||
diagnóstico de CLS/CWV com Chrome DevTools (workflow manual, ver skill `wp-meteor` §"Testar
|
||||
isoladamente via Chrome DevTools").
|
||||
|
||||
## Sites conhecidos
|
||||
|
||||
Chamar `wpmeteor_list_sites` para a lista actual com path e nota de estado. **Verificado ao vivo
|
||||
19-08-2026: só `emanuelalmeida` tem o WP Meteor instalado** — os outros 7 sites reais do bundle
|
||||
(`descomplicar`, `starter`, `ccv`, `care`, `ecommerce-demo`, `e-commerce`, `ecommerce`) não o têm.
|
||||
Também aceita um path absoluto directamente para sites fora desta lista.
|
||||
|
||||
## Tools (8)
|
||||
|
||||
| Tool | Read-only | Uso |
|
||||
|---|---|---|
|
||||
| `wpmeteor_list_sites` | sim | Aliases conhecidos, path WP, nota de estado |
|
||||
| `wpmeteor_get_status` | sim | Instalado/activo/versão |
|
||||
| `wpmeteor_get_config` | sim | Option `wp-meteor-settings` completa |
|
||||
| `wpmeteor_set_module` | não | Liga/desliga um dos 5 módulos (`ultimate-reorder`, `gdpr`, `exclude`, `elementor-animations`, `elementor-pp`) — escrita atómica de `<module>.enabled`, não toca nos outros |
|
||||
| `wpmeteor_set_delay` | não | `ultimate-reorder.delay` — string numérica; "0" = zero delay, N positivo = timeout fixo de N segundos, negativo (ex. "-1") = só corre na primeira interacção |
|
||||
| `wpmeteor_get_exclusions` / `wpmeteor_set_exclusions` | sim/não | `exclude.value` — array de URLs/palavras-chave/regex. Set é **substituição completa**, não merge. Não liga o módulo `exclude` sozinho |
|
||||
| `wpmeteor_get_detected` | sim | Telemetria interna (`detected`), sem tool de escrita — não é configurável |
|
||||
|
||||
Todas exigem `site` como primeiro parâmetro.
|
||||
|
||||
## Padrão de escrita — atómico por chave, não read-modify-write
|
||||
|
||||
Diferente do `mcp-wpfc` (que faz merge em JS de toda a option `WpFastestCache`), aqui cada
|
||||
escrita usa `wp option patch update wp-meteor-settings <key-path...> [--format=json]` — o próprio
|
||||
WP-CLI localiza e substitui só a chave aninhada pedida, atomicamente, sem ler+reescrever a option
|
||||
inteira. Menos risco de pisar uma gravação concorrente do wp-admin.
|
||||
|
||||
## Segurança
|
||||
|
||||
Allowlist fixa de 1 option (`wp-meteor-settings`) e 5 módulos conhecidos (`src/wpcli.ts`,
|
||||
`MODULES`). Escritas via base64 em stdin, nunca interpoladas no comando SSH remoto.
|
||||
|
||||
**Confirmado antes de escrever a bridge (lição de `mcp-wpfc`/skill `wp-fastest-cache` §16.2):**
|
||||
`wp-meteor-settings` é um **array PHP nativo** — `wp option get` sem `--format=json` devolve
|
||||
`array(...)` desestruturado, não uma string. `--format=json` é portanto o padrão correcto aqui em
|
||||
leitura e escrita (ao contrário do WP Fastest Cache, onde `--format=json` corrompe a option).
|
||||
Qualquer MCP novo sobre `wp option` deve continuar a verificar isto primeiro, caso a caso — não
|
||||
assumir nenhum dos dois padrões por omissão.
|
||||
|
||||
## Verificação
|
||||
|
||||
Construído e testado ponta-a-ponta contra produção 19-08-2026 (`emanuelalmeida.pt`, único site com
|
||||
o plugin instalado): `wpmeteor_get_status` confirmou activo v3.4.18 lá e ausente em
|
||||
`descomplicar`; `wpmeteor_get_config`/`wpmeteor_get_exclusions` leram a config real; `wpmeteor_set_module`,
|
||||
`wpmeteor_set_delay` e `wpmeteor_set_exclusions` escreveram e relerem correctamente com valores
|
||||
já-correntes (round-trip idempotente, sem alterar comportamento do site); `wpmeteor_get_detected`
|
||||
confirmou array vazio. Integridade final da option confirmada por leitura SSH directa, idêntica ao
|
||||
estado original.
|
||||
|
||||
## Skills relacionadas
|
||||
|
||||
- `wp-meteor` — mapeamento completo de todos os módulos, semântica do delay, exclusões
|
||||
automáticas embutidas, mecanismos de bypass, diagnóstico de CLS/CWV.
|
||||
- `mcp-wpfc` — mesma convenção (MCP multi-site, `site` por parâmetro), mas para o WP Fastest
|
||||
Cache; ver lá o gotcha de formato de armazenamento que motivou a verificação prévia aqui.
|
||||
Reference in New Issue
Block a user