MCP Resources
O BackupAlly expõe 11 resources via MCP, divididos em estáticos e dinâmicos.
Visão Geral
| URI | Tipo | Descrição |
|---|---|---|
backupally://instructions/overview |
Static | Visão geral do sistema |
backupally://instructions/backup |
Static | Guia de backup |
backupally://instructions/restore |
Static | Guia de restore |
backupally://instructions/targets |
Static | Tipos de target |
backupally://instructions/storage |
Static | Backends de storage |
backupally://instructions/scheduler |
Static | Agendamento |
backupally://instructions/troubleshooting |
Static | Diagnóstico de problemas |
backupally://config/current |
Dynamic | Configuração atual (sanitizada) |
backupally://targets/list |
Dynamic | Targets configurados |
backupally://history/recent |
Dynamic | Histórico recente de backups |
backupally://scheduler/status |
Dynamic | Status do scheduler |
Resources Estáticos
Resources estáticos contêm documentação e instruções que não mudam durante a execução.
backupally://instructions/overview
Visão geral do BackupAlly:
- O que é o sistema
- Arquitetura de alto nível
- Conceitos principais (tasks, targets, storages)
- Fluxo básico de operação
Uso típico: Quando o assistente precisa explicar o sistema ou contextualizar respostas.
backupally://instructions/backup
Guia completo de backup:
- Tipos de backup (quick, scheduled)
- Configuração de tasks
- Opções de compressão e criptografia
- Exemplos por tipo de target
Uso típico: Quando o usuário quer criar ou modificar backups.
backupally://instructions/restore
Guia de restauração:
- Como listar snapshots
- Processo de restore
- Restauração de databases
- Verificação de integridade
Uso típico: Quando o usuário precisa recuperar dados.
backupally://instructions/targets
Documentação de tipos de target:
- database: MySQL, PostgreSQL, MongoDB, ClickHouse, SQLite
- fileset: Arquivos e diretórios
- stdout: Comandos customizados
- docker: Volumes Docker
Inclui exemplos de configuração para cada tipo.
Uso típico: Quando o usuário está configurando um novo target.
backupally://instructions/storage
Documentação de backends de storage:
- local: Sistema de arquivos local
- s3: AWS S3 e compatíveis
- b2: Backblaze B2
- minio: MinIO self-hosted
Inclui opções de configuração, retenção e exemplos.
Uso típico: Quando o usuário está configurando destino de backups.
backupally://instructions/scheduler
Documentação de agendamento:
- Formato cron (5 e 6 campos)
- Condições de execução (
when) - Janelas de execução (
window) - Prioridades e concorrência
Uso típico: Quando o usuário está definindo horários de backup.
backupally://instructions/troubleshooting
Guia de diagnóstico:
- Erros comuns e soluções
- Verificação de conectividade
- Problemas de permissão
- Logs e debugging
Uso típico: Quando algo não está funcionando.
Resources Dinâmicos
Resources dinâmicos retornam dados em tempo real do sistema.
backupally://config/current
Retorna a configuração atual do sistema.
Dados retornados:
{
"global": {
"local_pipeline_path": "/etc/backupally/pipeline",
"default_temp_path": "/tmp/backupally",
"chunk_algo": "fastcdc",
"max_concurrent_backups": 2
},
"logging": {
"level": "info",
"format": "json"
},
"crypto": {
"key_mode": "default"
}
}Segurança: Secrets e chaves são sanitizados (substituídos por ***).
Uso típico: Verificar configuração atual, diagnosticar problemas.
backupally://targets/list
Lista todos os targets configurados.
Dados retornados:
{
"targets": [
{
"id": "mysql-prod",
"name": "MySQL Production",
"kind": "database",
"driver": "mysql",
"enabled": true,
"schedule": "0 2 * * *",
"last_run": "2026-02-11T02:00:00Z",
"last_status": "success"
},
{
"id": "website-backup",
"name": "Website Files",
"kind": "fileset",
"enabled": true,
"schedule": "0 3 * * *",
"last_run": "2026-02-11T03:00:00Z",
"last_status": "success"
}
]
}Uso típico: Listar backups configurados, verificar status.
backupally://history/recent
Retorna histórico recente de backups.
Dados retornados:
{
"history": [
{
"snapshot_id": "snap_20260211_030000",
"target": "mysql-prod",
"timestamp": "2026-02-11T03:00:00Z",
"duration_seconds": 70,
"size_bytes": 933232640,
"status": "success",
"storages": ["s3-primary", "b2-secondary"]
},
{
"snapshot_id": "snap_20260211_040000",
"target": "website-backup",
"timestamp": "2026-02-11T04:00:00Z",
"duration_seconds": 45,
"size_bytes": 524288000,
"status": "success",
"storages": ["local"]
}
],
"total": 2,
"period": "last_24h"
}Uso típico: Verificar backups recentes, confirmar execuções.
backupally://scheduler/status
Retorna status atual do scheduler.
Dados retornados:
{
"status": "running",
"pid": 12345,
"uptime_seconds": 187200,
"tasks_loaded": 5,
"tasks_enabled": 4,
"current_executions": 0,
"next_executions": [
{
"target": "mysql-prod",
"scheduled_at": "2026-02-12T02:00:00Z",
"in_seconds": 9000
},
{
"target": "website-backup",
"scheduled_at": "2026-02-12T03:00:00Z",
"in_seconds": 12600
}
]
}Uso típico: Verificar se scheduler está rodando, próximas execuções.
Acessando Resources
Via Claude/AI
O assistente acessa resources automaticamente conforme necessário.
Via CLI
# Listar resources disponíveis
backupally mcp resources
# Ler resource específico
backupally mcp read backupally://config/currentVia API
Resources são acessados via JSON-RPC:
{
"jsonrpc": "2.0",
"method": "resources/read",
"params": {
"uri": "backupally://config/current"
},
"id": 1
}