Cron Scheduler MCP Server
7 ferramentas para agendamento de tarefas cron de agente de IA com persistência SQLite, lógica de repetição e observabilidade estruturada. Licença MIT.
Documentação
Cron Scheduler MCP Server
Servidor MCP para agendamento de tarefas cron com persistência SQLite, lógica de repetição e observabilidade estruturada. Permite que agentes de IA criem, gerenciem e monitorem tarefas agendadas por meio de uma interface de ferramentas limpa.
Por Que Isso Existe
A maioria das bibliotecas cron é projetada para ser incorporada em aplicações. Este servidor expõe o agendamento cron como uma ferramenta MCP — os agentes podem agendar tarefas, monitorar a execução, repetir falhas e consultar logs sem tocar diretamente no sistema de arquivos ou no crontab.
Servidor complementar: System Monitoring MCP para métricas de saúde do host. Juntos, eles oferecem aos agentes observabilidade e controle completos da infraestrutura.
Por Que Isso em Vez de mcp-cron?
| Recurso | cron-scheduler-mcp | mcp-cron |
|---|---|---|
| Licença | MIT | AGPL-3.0 |
| Armazenamento | SQLite (persistente) | Em memória |
| Lógica de repetição | Repetições configuráveis com backoff | Nenhuma |
| Observabilidade | Taxa de sucesso, duração média, tendências de erro | Nenhuma |
| Integração com systemd | Sim | Não |
| Gatilhos de webhook | Sim | Não |
| Número de ferramentas | 10 | 3 |
O mcp-cron é AGPL — adequado para uso pessoal, problemático para agentes empresariais e implantações comerciais. Este servidor usa MIT + persistência SQLite + lógica de repetição para cargas de trabalho de produção.
Recursos
- 10 ferramentas:
list_jobs,create_job,update_job,delete_job,get_job,run_now,get_status,get_logs,list_executions,pause_resume - Persistência SQLite — as tarefas sobrevivem a reinicializações do servidor
- Lógica de repetição — contagem e atraso de repetição configuráveis com rastreamento de tentativas
- Logs estruturados — captura de stdout/stderr, duração, códigos de saída por execução
- Observabilidade — taxa de sucesso, duração média, histórico de erros por tarefa
- Gatilhos de webhook — dispara callbacks HTTP na conclusão da tarefa
- Licença MIT — amigável para empresas, sem restrições de copyleft
Início Rápido
npx @supernova123/cron-scheduler-mcp-server
Claude Desktop
{
"mcpServers": {
"cron-scheduler": {
"command": "npx",
"args": ["-y", "@supernova123/cron-scheduler-mcp-server"]
}
}
}
Cursor / VS Code
Adicione às suas configurações MCP (.cursor/mcp.json ou equivalente):
{
"mcpServers": {
"cron-scheduler": {
"command": "npx",
"args": ["-y", "@supernova123/cron-scheduler-mcp-server"]
}
}
}
Ferramentas
list_jobs
Lista todas as tarefas agendadas com status, próximo horário de execução e resultado da última execução.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
enabled | boolean | Não | Filtrar por status ativado/desativado |
limit | number | Não | Máximo de tarefas a retornar (1-100) |
Retorna: Array de tarefas com id, nome, agendamento, comando, status de ativação, próximo horário de execução, resultado da última execução e estatísticas agregadas (taxa de sucesso, total de execuções, duração média).
create_job
Cria uma nova tarefa cron com um agendamento e um comando shell.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string | Sim | Nome legível da tarefa (1-128 caracteres) |
schedule | string | Sim | Expressão cron ou intervalo (veja Formatos de Agendamento abaixo) |
command | string | Sim | Comando shell a ser executado |
enabled | boolean | Não | Se a tarefa está ativada (padrão: true) |
retryCount | number | Não | Repetições em caso de falha, 0-10 (padrão: 0) |
retryDelayMs | number | Não | Atraso entre repetições em ms, 0-60000 (padrão: 1000) |
timeoutMs | number | Não | Tempo limite de execução em ms, 1000-3600000 (padrão: 30000) |
delete_job
Remove uma tarefa agendada e todo o seu histórico de execuções.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
jobId | UUID | Sim | ID da tarefa a ser excluída |
run_now
Executa uma tarefa imediatamente, ignorando seu agendamento. Útil para testes ou acionamentos manuais.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
jobId | UUID | Sim | ID da tarefa a ser executada |
Retorna: Resultado da execução com status, código de saída, stdout/stderr (truncado em 2000 caracteres) e duração.
get_status
Obtém o status detalhado da tarefa, incluindo última execução, próxima execução, taxa de sucesso, duração média e histórico recente de erros.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
jobId | UUID | Sim | ID da tarefa a ser verificada |
Retorna: Configuração completa da tarefa, próxima execução agendada, se está em execução no momento, estatísticas agregadas e as últimas 10 execuções com status/código de saída/duração.
get_logs
Obtém logs de execução de uma tarefa com stdout, stderr, duração e código de saída completos.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
jobId | UUID | Sim | ID da tarefa |
limit | number | Não | Máximo de execuções a retornar (1-100, padrão: 20) |
pause_resume
Pausa ou retoma uma tarefa sem excluí-la. Tarefas pausadas mantêm seu agendamento, mas não serão executadas até serem retomadas.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
jobId | UUID | Sim | ID da tarefa a pausar/retomar |
enabled | boolean | Sim | true para retomar, false para pausar |
Formatos de Agendamento
- Expressões cron: Formato padrão de 5 campos
*/5 * * * *— a cada 5 minutos0 9 * * 1-5— dias úteis às 9h30 2 * * 0— domingos às 2h30
- Intervalos: Strings simples de duração
30s— a cada 30 segundos5m— a cada 5 minutos1h— a cada hora
Casos de Uso
- Automação de infraestrutura: Agende verificações de saúde, rotação de logs, scripts de limpeza
- Pipelines de dados: Coletas periódicas de dados, geração de relatórios, invalidação de cache
- Fluxos de trabalho de agentes: Permita que agentes de IA agendem suas próprias tarefas recorrentes (monitoramento, backups, notificações)
- DevOps: Implantações agendadas, verificações canary, verificação pós-implantação
- Testes: Testes de integração recorrentes, verificações rápidas (smoke tests), benchmarks de desempenho
Configuração
| Variável de Ambiente | Padrão | Descrição |
|---|---|---|
CRON_SCHEDULER_DB | cron-scheduler.db | Caminho do banco de dados SQLite (relativo ao diretório de trabalho atual) |
Armazenamento
Todas as definições de tarefas e o histórico de execuções são armazenados em um banco de dados SQLite. O arquivo do banco de dados persiste entre reinicializações do servidor — as tarefas sobrevivem a falhas e reinicializações sem necessidade de recriação.
Postagens do Blog
Dados reais da construção e operação deste servidor:
- MCP Server Testing — estratégias de teste para servidores MCP
- What 6,000 npm Downloads Taught Me — dados de distribuição e crescimento
- The MCP Server Naming Playbook — como a nomenclatura afeta a descoberta
Licença
MIT