Shilpi for WordPress
An AI-native WordPress theme with a built-in MCP server that gives an agent scoped abilities over pages, templates, design tokens, menus, SEO and WooCommerce, secured with OAuth and a one-click kill switch.
Documentação
Servidor MCP Shilpi
Conecte o Claude, o ChatGPT ou qualquer agente compatível com MCP a um site WordPress que esteja executando o tema Shilpi e permita que ele construa e edite esse site por meio de habilidades delimitadas, em vez de acesso ao servidor.
Este repositório contém a interface pública: o manifesto de registro, a lista de ferramentas, o guia de autenticação e exemplos de configuração de clientes. O servidor em si é distribuído dentro do tema Shilpi e roda na sua própria instalação do WordPress, portanto não há serviço para assinar e nenhum terceiro fica entre o agente e o seu site.
- Produto e preços: https://shilpibuilder.com/
- Documentação: https://shilpibuilder.com/docs/
- Modelo de permissões, explicado: https://shilpibuilder.com/abilities-not-access/
Por que isso existe
A maioria dos construtores de páginas do WordPress armazena um layout em seu próprio formato. Um agente solicitado a editar essa página precisa aprender uma árvore de widgets proprietária, adivinhar suas invariantes e torcer para que o fornecedor não as altere.
O Shilpi armazena uma página como três campos simples: HTML do corpo, uma folha de estilos real e JavaScript focado. Um agente que edita uma página Shilpi está editando marcação que ele já entende. O que ele precisa do site não é acesso bruto, mas vocabulário: quais classes globais existem, quais variáveis de design estão definidas e quais são as regras da casa. É isso que essas ferramentas fornecem.
Endpoints
O servidor roda no seu próprio site. Substitua example.com pelo seu domínio.
| Finalidade | URL |
|---|---|
| HTTP transmitível, OAuth | https://example.com/wp-json/mcp/shilpi-oauth |
| HTTP transmitível, senha de aplicativo | https://example.com/wp-json/shilpi/v1/mcp |
| Metadados de recurso protegido OAuth | https://example.com/wp-json/shilpi/v1/oauth/protected-resource |
| Resumo do site para agentes | https://example.com/llms.txt |
Ambos os endpoints exigem uma licença ativa. Sem uma, eles retornam 404 e nenhuma credencial autentica. Desligar o servidor em Shilpi → Painel → Conectar um agente de IA remove ambos os endpoints, o que o torna um verdadeiro interruptor de segurança, e não apenas uma configuração.
Requisitos
- WordPress 6.4 ou mais recente
- PHP 8.0 ou mais recente
- HTTPS, obrigatório para OAuth
- O tema Shilpi, ativo, com licença válida
Como se conectar
Consulte docs/authentication.md para o fluxo OAuth e a alternativa de senha de aplicativo, e examples/ para configurações de cliente prontas para copiar e colar.
Habilidades
Toda ferramenta é delimitada. Não há acesso ao sistema de arquivos, nem SSH, nem rota para wp-config.php ou para arquivos de temas e plugins. Escrever trechos de PHP é uma permissão temporária que o proprietário do site concede em Shilpi → Segurança e revoga com um clique.
A lista abaixo é gerada a partir de uma instalação ativa executando o Shilpi 1.9.4. As contagens mudam entre versões, e o plugin WooCommerce Kit adiciona suas próprias ferramentas quando está ativo.
Páginas, posts e modelos
| Ferramenta | O que faz |
|---|---|
shilpi-site-info | Identidade do site, versões, inventário, breakpoints, limites, roteamento de modelos |
shilpi-list-pages | Lista páginas, posts e modelos com ids, slugs e permalinks |
shilpi-get-page | Lê um documento: HTML do corpo, CSS da página, JS da página, cabeçalho e rodapé |
shilpi-save-page | Cria ou atualiza uma página, post ou modelo, idempotente por slug |
shilpi-set-page-code | Define o CSS da página e o JavaScript de um documento |
shilpi-delete-page | Remove um documento |
shilpi-import-page | Importa um arquivo HTML estático como documento Shilpi |
shilpi-import-site | Importa uma pasta de HTML estático: modelos, CSS, imagens e menu |
Sistema de design
| Ferramenta | O que faz |
|---|---|
shilpi-manage-variables | Lista e faz upsert de tokens de design, com valores por breakpoint |
shilpi-manage-classes | Lista e gerencia classes CSS globais e seus estados |
shilpi-get-globals | Lê CSS e JS globais, e o cabeçalho, rodapé e página inicial padrão |
shilpi-set-globals | Escreve essas configurações globais |
Estrutura e conteúdo
| Ferramenta | O que faz |
|---|---|
shilpi-manage-menu | Cria e ordena menus de navegação, atribui-os a locais |
shilpi-manage-taxonomy | Gerencia categorias, tags e taxonomias personalizadas |
shilpi-get-seo | Lê título, descrição, canônico, robots e campos sociais |
shilpi-set-seo | Escreve-os por meio do plugin de SEO que o site executa |
shilpi-upload-media | Carrega uma imagem na biblioteca de mídia, idempotente por URL de origem |
shilpi-search-icons | Pesquisa as bibliotecas de ícones instaladas |
shilpi-manage-icon-libraries | Adiciona e remove bibliotecas de ícones |
Código e ativos
| Ferramenta | O que faz |
|---|---|
shilpi-list-php-snippets | Lista trechos do Code Hub com seus estados de ativação e erro |
shilpi-get-php-snippet | Lê um trecho e seu hash de conteúdo |
shilpi-save-php-snippet | Cria ou atualiza um trecho, com verificação de sintaxe e proteção por hash |
shilpi-configure-php-snippet | Ativa ou desativa um trecho, com teste antes da ativação |
shilpi-delete-php-snippet | Remove um trecho |
shilpi-list-script-files | Lista arquivos JavaScript gerenciados |
shilpi-upload-script-file | Envia uma biblioteca ou bundle confiável |
shilpi-configure-script-file | Define estado de ativação, prioridade de carregamento e dependência do jQuery |
shilpi-list-project-files | Lista arquivos JSON e de ativos do projeto |
shilpi-upload-project-file | Envia JSON gerado, retorna uma URL de mesma origem |
shilpi-delete-project-file | Remove um arquivo de projeto ou script |
shilpi-set-site-manifest | Ativa um manifesto de aplicativo web |
shilpi-list-fonts | Lista faces de fonte auto-hospedadas |
shilpi-upload-font | Envia uma face WOFF2, WOFF, TTF ou OTF e a registra |
shilpi-delete-font | Remove uma face de fonte |
Instruções do agente
| Ferramenta | O que faz |
|---|---|
shilpi-get-skill | Carrega uma habilidade Markdown: shilpi-theme ou wordpress-core |
Habilidades são como o site informa ao agente suas próprias convenções. Você pode enviar sua própria habilidade Markdown para adicionar regras da casa, e o agente a lê antes de escrever.
O que o servidor não pode fazer
Esta é a parte que vale a pena ler antes de conectar qualquer coisa.
- Sem acesso ao sistema de arquivos. Não pode ler ou escrever arquivos de temas ou plugins.
- Sem shell, sem SSH, sem
wp-config.php. - Sem clientes, pedidos, endereços ou dados de pagamento por meio das ferramentas WooCommerce.
- Escrever PHP está desativado por padrão e é uma permissão com um interruptor de desligamento, não uma configuração que você ativa e esquece.
- Enviar JavaScript exige uma conta com
unfiltered_html.
Licença
O conteúdo deste repositório (manifesto, docs e exemplos) é distribuído sob a licença MIT. O tema Shilpi em si é software comercial; consulte https://shilpibuilder.com/pricing/.