Mantora

Mantora é um observador MCP local-first: uma interface leve + proxy para inspecionar o acesso a dados de LLM (sessões, chamadas de ferramentas, resultados) com padrões protetivos.

Documentação

Mantora 🛡️

O log de execução open-source para agentes MCP. Obtenha um relatório compartilhável para verificar e reproduzir o que o agente fez — além de um modo de proteção para SQL perigoso comum.

PyPI License: MIT

Mantora UI screenshot

A Mantora foca em tornar o comportamento do agente revisável e repetível. Ela registra as principais evidências de cada sessão e as transforma em um relatório Markdown. O modo de proteção adiciona salvaguardas básicas (regras de bloqueio/aviso) para que você não aprenda sobre uma consulta ruim da pior maneira.

O que você obtém

🔍 Registros de Sessão

Capture o SQL exato e as chamadas de ferramentas que um agente faz para facilitar a verificação.

Session Logs

🛡️ Modo de Proteção

Salvaguardas básicas que bloqueiam ou avisam sobre padrões SQL destrutivos por padrão.

Protective Mode

🧾 Relatórios Compartilháveis

Um clique para gerar um resumo em Markdown para Pull Requests ou Slack.

Shareable Reports

Início Rápido

1. Instalar

pipx install "mantora[duckdb,postgres]"

2. Conecte Seu Agente

Configure seu cliente MCP (por exemplo, claude_desktop_config.json ou Configurações do Cursor) para executar o proxy da Mantora. Nenhuma configuração de destino é necessária aqui!

{
  "mcpServers": {
    "mantora": {
      "command": "mantora",
      "args": ["mcp"]
    }
  }
}

3. Execute a Sala de Controle (UI)

Inicie o painel para gerenciar suas conexões e visualizar os registros em tempo real:

mantora up

4. Configure os Destinos

Abra a Sala de Controle (http://localhost:3030) e use o seletor de destinos na barra de navegação superior para:

  1. Criar novos destinos para seus bancos de dados (DuckDB, Postgres, etc.).
  2. Ativar o destino que você deseja que seu agente use.
  3. Alternar destinos instantaneamente sem reiniciar seu agente.

Nota: Para configuração avançada (política de segurança, caminhos de armazenamento), você pode usar um arquivo mantora.toml. Consulte Configuração para detalhes.

Como funciona

sequenceDiagram
    participant Agent as Claude/Cursor
    participant Mantora as Mantora 🛡️
    participant DB as Postgres/DuckDB

    Agent->>Mantora: "SELECT * FROM users"
    Note over Mantora: 1. Check Safety Policy
    Mantora->>DB: Execute Query
    DB-->>Mantora: Return Rows
    Note over Mantora: 2. Log Report (Async)
    Mantora-->>Agent: Relay Result

Fluxo de Trabalho Diário

📋 Copiar um Relatório de PR

Não cole capturas de tela bagunçadas. No Resumo da Sessão, clique em "Copiar para GitHub".

  • Resultado: Um bloco <details> recolhível contendo o SQL, o tempo de execução e as verificações de segurança. Perfeito para Pull Requests.

🛑 Revisar Mutações Bloqueadas

Se um agente tentar DROP TABLE users, a Mantora o intercepta.

  • O agente vê: "Erro: Ação bloqueada pela política de segurança."
  • Você vê: Uma entrada vermelha na interface da Mantora com o SQL exato que foi bloqueado.

📤 Exportar Evidências

Precisa arquivar uma sessão?

  • Exportar JSON: Obtenha os dados brutos do rastreamento.
  • Baixar Markdown: Obtenha um registro legível de toda a conversa.

Padrões de Segurança

A Mantora é projetada para ser segura somente leitura desde o início.

AçãoPolítica Padrão
SELECT✅ Permitido
INSERT, UPDATE⚠️ Requer Aprovação (Configurável)
DELETE (com WHERE)⚠️ Requer Aprovação
DROP, TRUNCATE🛑 Bloqueado
DELETE (sem WHERE)🛑 Bloqueado

Quer mudar isso? Consulte Configuração.

Armazenamentos de Dados Suportados

  • DuckDB (Arquivos locais, MotherDuck)
  • Postgres (Conexão direta, Supabase, Neon)
  • BigQuery, Snowflake, Databricks (Em breve)

Todos os dados são armazenados localmente. Consulte Privacidade para detalhes.

Documentação

Comunidade

Encontrou um bug? Tem uma solicitação de recurso?

  • Abra uma Issue
  • Dê uma estrela neste repositório ⭐️ se você achar útil!

Licença

MIT © Joseph Wibowo