Sitequest Hosting
Um servidor remoto do Model Context Protocol (MCP) para gerenciar servidores VPS e domínios no Sitequest. Permite que assistentes de IA provisionem, monitorem e configurem infraestrutura por meio de linguagem natural.
Documentação
Servidor MCP Sitequest
Um servidor remoto Model Context Protocol (MCP) para gerenciar servidores VPS, webspaces e domínios no Sitequest. Permite que assistentes de IA provisionem, monitorem e configurem infraestrutura por meio de linguagem natural.
Recursos
- Gerenciamento de VPS -- Listar, criar, monitorar, controle de energia, reinstalação de SO, redimensionamento
- Hospedagem Webspace -- Provisionar hospedagem compartilhada, instalar CMS (WordPress, Joomla, TYPO3), vincular domínios, gerenciar versões de PHP e bancos de dados
- Operações SSH e de Arquivos -- Executar comandos, ler/gravar arquivos, gerenciar segurança SSH em VPS e webspaces (isolados)
- Firewall e Backups -- Configurar regras de firewall, criar/restaurar/excluir backups
- Gerenciamento de Domínios -- Registrar, transferir, configurar registros DNS, privacidade WHOIS, DNSSEC
- Integração de Cobrança -- Provisionar recursos com pagamento automático via mandato salvo
- Acesso Baseado em Escopo -- Permissões granulares de chave de API por categoria de ferramenta
Início Rápido
1. Obtenha uma Chave de API
Crie uma chave de API no Painel do Sitequest com os escopos necessários.
2. Conecte Seu Cliente
VS Code / GitHub Copilot -- Crie .vscode/mcp.json no seu workspace:
{
"servers": {
"sitequest": {
"type": "http",
"url": "https://hosting.site.quest/mcp",
"headers": {
"Authorization": "Bearer ${input:sitequest-api-key}"
}
}
},
"inputs": [
{
"id": "sitequest-api-key",
"type": "promptString",
"description": "Sitequest API key",
"password": true
}
]
}
Claude Desktop -- Adicione ao claude_desktop_config.json:
{
"mcpServers": {
"sitequest": {
"type": "streamableHttp",
"url": "https://hosting.site.quest/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Cursor -- Adicione às configurações do MCP:
{
"mcpServers": {
"sitequest": {
"url": "https://hosting.site.quest/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Consulte examples/ para mais configurações de clientes.
Endpoint
| URL | POST https://hosting.site.quest/mcp |
| Transporte | HTTP Streamable (sem estado) |
| Protocolo | JSON-RPC 2.0 / MCP 2025-03-26 |
| Autenticação | Authorization: Bearer <api-key> |
Ferramentas Disponíveis
Preços (sem escopo necessário)
| Ferramenta | Descrição |
|---|---|
get_domain_pricing | Listar preços de TLDs ou verificar o preço de um domínio específico |
check_domain | Verificar disponibilidade de domínio (único ou em lote, até 20 TLDs) |
get_vps_pricing | Obter preços de componentes de VPS por sistema host |
VPS
| Ferramenta | Escopo | Descrição |
|---|---|---|
list_vms | vps:read | Listar todos os VPS com status, especificações e métricas de uso |
get_vm | vps:read | Informações detalhadas do VPS com configuração e status ao vivo |
get_vm_monitoring | vps:read | Histórico de CPU/memória/ping e estatísticas de indisponibilidade |
get_vm_traffic | vps:read | Largura de banda do mês atual e registro de tráfego diário |
vm_power | vps:manage | Iniciar, parar ou reiniciar um VPS |
vm_reinstall_os | vps:manage | Reinstalar SO (destrutivo, requer confirm) |
vm_mount_iso | vps:manage | Montar ou desmontar uma imagem ISO |
vm_reset_password | vps:manage | Gerar nova senha de root (requer confirm) |
rename_vm | vps:manage | Atualizar nome de exibição |
exec_command | vps:manage | Executar um comando SSH único |
list_files | vps:manage | Listar conteúdo de diretório via SFTP |
read_file | vps:manage | Ler conteúdo de arquivo via SFTP (máx. 10 MB) |
write_file | vps:manage | Gravar conteúdo de arquivo via SFTP (máx. 10 MB) |
ssh_security | vps:manage | Obter/definir configurações de segurança SSH com fallback de resgate |
list_backups | vps:manage | Listar todos os backups de um VPS |
create_backup | vps:manage | Criar um novo backup (requer confirm) |
restore_backup | vps:manage | Restaurar a partir de backup (destrutivo, requer confirm) |
delete_backup | vps:manage | Excluir um backup (requer confirm) |
get_firewall | vps:manage | Obter status e regras do firewall |
manage_firewall | vps:manage | Adicionar/remover regras, ativar/desativar firewall |
create_vm | vps:provision | Criar novo VPS (cobra mandato salvo, requer confirm) |
cancel_vm | vps:provision | Cancelar assinatura de VPS no final do período de cobrança |
uncancel_vm | vps:provision | Reativar um VPS cancelado antes do vencimento |
upgrade_vm | vps:provision | Atualizar recursos com cobrança proporcional (requer confirm) |
Webspaces
Hospedagem web compartilhada com sites PHP/MariaDB isolados. As ferramentas SFTP e exec operam como o usuário Linux do site sem privilégios, isoladas no diretório home do site -- elas não podem afetar outros sites no mesmo nó.
| Ferramenta | Escopo | Descrição |
|---|---|---|
webspace_list | webspace:read | Listar todos os webspaces com status, plano, CMS e uso de cota |
webspace_get | webspace:read | Informações detalhadas do webspace, incluindo domínios vinculados e uso de disco ao vivo |
webspace_get_ssh_info | webspace:read | Detalhes de conexão SSH (host, porta, usuário, impressão digital da chave do host) |
webspace_list_ssh_keys | webspace:read | Listar chaves públicas SSH em authorized_keys |
webspace_create | webspace:provision | Provisionar um webspace pago (cobra mandato salvo) |
webspace_claim_free | webspace:provision | Reivindicar o webspace gratuito único da conta |
webspace_upgrade | webspace:provision | Aumentar disco e/ou número de bancos de dados (sem downgrades) |
webspace_delete | webspace:provision | Excluir um webspace permanentemente (requer confirm) |
webspace_set_label | webspace:manage | Atualizar o nome de exibição |
webspace_set_php | webspace:manage | Alterar versão do PHP (8.1 -- 8.5, requer confirm) |
webspace_install_cms | webspace:manage | Instalar/reinstalar WordPress, Joomla, TYPO3 ou estático (apaga docroot, requer confirm) |
webspace_link_domain | webspace:manage | Vincular um domínio de propriedade do usuário e emitir certificado Let's Encrypt |
webspace_unlink_domain | webspace:manage | Desvincular um domínio vinculado e remover seu vhost (requer confirm) |
webspace_reset_db_password | webspace:manage | Redefinir senha do MariaDB (retornada uma vez, requer confirm) |
webspace_exec | webspace:manage | Executar um comando SSH único no shell isolado |
webspace_list_files | webspace:manage | Listar conteúdo de diretório via SFTP isolado |
webspace_read_file | webspace:manage | Ler um arquivo via SFTP isolado (máx. 10 MB) |
webspace_write_file | webspace:manage | Gravar um arquivo via SFTP isolado (máx. 10 MB) |
webspace_mkdir | webspace:manage | Criar um diretório no ambiente isolado |
webspace_rename | webspace:manage | Renomear / mover dentro do ambiente isolado |
webspace_delete_path | webspace:manage | Excluir um arquivo ou diretório no ambiente isolado (requer confirm) |
webspace_chmod | webspace:manage | Alterar permissões de um arquivo/diretório |
webspace_add_ssh_key | webspace:manage | Adicionar uma chave pública SSH autorizada |
webspace_delete_ssh_key | webspace:manage | Remover uma chave SSH autorizada por impressão digital (requer confirm) |
Domínios
| Ferramenta | Escopo | Descrição |
|---|---|---|
list_domains | domains:read | Listar todos os domínios com status, contagem de DNS, vencimento |
get_domain | domains:read | Informações detalhadas do domínio com registros DNS e dados do registrador |
list_dns_records | domains:read | Listar registros DNS de um domínio |
add_dns_record | domains:manage | Criar um registro DNS (A, AAAA, CNAME, MX, TXT, SRV, etc.) |
edit_dns_record | domains:manage | Atualizar um registro DNS existente |
delete_dns_record | domains:manage | Remover um registro DNS (requer confirm) |
set_nameservers | domains:manage | Atualizar servidores de nomes do domínio |
set_transfer_lock | domains:manage | Ativar ou desativar bloqueio de transferência |
set_whois_privacy | domains:manage | Ativar ou desativar privacidade WHOIS |
set_dnssec | domains:manage | Ativar ou desativar DNSSEC |
get_authcode | domains:manage | Recuperar código de autorização do domínio para transferência |
register_domain | domains:provision | Registrar novo domínio (cobra mandato, requer confirm) |
transfer_domain | domains:provision | Transferir domínio para o Sitequest (requer código de autorização + confirm) |
cancel_domain | domains:provision | Cancelar domínio no final do período de cobrança |
uncancel_domain | domains:provision | Reativar um domínio cancelado antes do vencimento |
Pedidos
| Ferramenta | Escopo | Descrição |
|---|---|---|
get_order_status | vps:provision ou domains:provision | Rastrear pedido por ID ou token |
Escopos
As chaves de API usam escopos granulares para controlar o acesso:
| Escopo | Acesso |
|---|---|
vps:read | Visualizar instâncias VPS e métricas |
vps:manage | Controle de energia, SSH, arquivos, backups, firewall |
vps:provision | Criar, atualizar, cancelar VPS |
domains:read | Visualizar domínios e registros DNS |
domains:manage | Editar DNS, servidores de nomes, WHOIS, DNSSEC |
domains:provision | Registrar, transferir, cancelar domínios |
webspace:read | Visualizar webspaces, cotas, informações de conexão SSH |
webspace:manage | Gerenciar PHP, CMS, domínios, arquivos (SFTP/exec), chaves SSH |
webspace:provision | Criar, atualizar, excluir webspaces |
As chaves também podem ser restritas a IDs específicos de VPS, webspace ou domínio para acesso mais limitado.
Limites de Taxa
60 solicitações por minuto por chave de API. Os cabeçalhos de limite de taxa são incluídos em cada resposta:
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
Segurança
Todas as operações destrutivas (reinstalar SO, excluir backups, registrar/cancelar domínios, etc.) exigem um parâmetro explícito confirm: true. O servidor não as executará sem confirmação.
Documentação
Documentação completa: site.quest/docs/api/mcp
Licença
MIT