Fabi Analyst Agent MCP

O Fabi MCP é um agente autônomo que gerencia tarefas de análise de dados de ponta a ponta a partir de solicitações em linguagem natural, descobrindo automaticamente esquemas de dados, gerando código sql ou python, executando consultas e apresentando insights.

Documentação

Servidor MCP

Conecte-se à Fabi através do servidor Model Context Protocol (MCP)

Visão geral

A Fabi.ai fornece um servidor MCP (Model Context Protocol) que permite integrar os recursos de análise de dados com IA da Fabi diretamente ao seu fluxo de desenvolvimento ou ao seu cliente/interface de preferência. O servidor MCP permite que assistentes de IA e ferramentas de desenvolvimento interajam com a Fabi.ai, criando threads, enviando solicitações de chat e salvando Smartbooks programaticamente.

O servidor MCP da Fabi é a maneira mais rápida de implementar um assistente de IA para conversar diretamente com seus dados.

Autenticação

O servidor MCP da Fabi suporta dois métodos de autenticação:

Autenticação por token

A autenticação por token é o método recomendado para acesso programático. Você pode gerar tokens MCP nas configurações da sua conta Fabi.ai:

  1. Navegue até https://app.fabi.ai/settings/mcp
  2. Gere um novo token MCP
  3. Copie o token com segurança - ele será exibido apenas uma vez

Autenticação OAuth

A autenticação OAuth também é suportada para integrações baseadas em usuário. Siga o fluxo OAuth para autenticar seu aplicativo e use a seguinte URL: https://app.fabi.ai/mcp

Configuração

Para conectar ao servidor MCP da Fabi, adicione a seguinte configuração às configurações do seu cliente MCP:

{
  "mcpServers": {
    "fabi": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://app.fabi.ai/mcp",
        "--header",
        "Authorization: Bearer <your-fabi-mcp-token>"
      ]
    }
  }
}

Substitua <your-fabi-mcp-token> pelo token que você gerou na página de configurações.

Ferramentas disponíveis

O servidor MCP da Fabi fornece as seguintes ferramentas para interagir com a Fabi.ai:

Criar uma thread

Cria uma nova sessão de análise de dados (baseada em um Smartbook) para consultas SQL/Python. Usada para começar a analisar tabelas de banco de dados, executar consultas ou explorar dados. A thread persistirá seu histórico de análise e o código gerado.

Parâmetros:

  • title (opcional): Título da sessão de análise

Retorna: UUID da thread para operações subsequentes

Enviar chat

Delegue uma tarefa de análise de dados ao agente autônomo da Fabi. Recebe uma descrição do que você deseja em linguagem natural - a Fabi lidará de forma independente com toda a complexidade: descobrindo fontes de dados, usando RAG para encontrar esquemas e semânticas relevantes de tabelas/colunas, gerando código SQL/Python, validando consultas com execuções de teste, executando-as e formatando os resultados.

Parâmetros:

  • thread_uuid: UUID da thread de create_thread
  • message: Solicitação de análise de dados em linguagem natural (ex.: 'mostre os 10 principais clientes por receita')
  • context_cell_uuids (opcional): UUIDs de células anteriores para referência nesta análise
  • context_dataframes (opcional): Nomes de variáveis de dataframes para usar como contexto

Retorna: UUID da solicitação e status inicial

Obter resultado do chat

Consulte o resultado de uma solicitação de análise de chat de longa duração. Usada pelo agente quando submit_chat retorna antecipadamente devido a timeout (após 45 segundos). O chat continua processando em segundo plano - chame esta função periodicamente para verificar se os resultados estão prontos.

Parâmetros:

  • request_uuid: UUID da solicitação de chat (retornado por submit_chat)

Retorna: Status de processamento ou resultados concluídos com pré-visualização dos dados

Salvar no Smartbook

Salve células geradas por IA do histórico do chat no Smartbook para publicação de dashboard ou colaboração. Usada pelo agente para persistir, publicar ou compartilhar a análise como um dashboard. Esta função aceita resultados de chat pendentes e os converte em células executáveis do Smartbook. Análises regulares já são visíveis no histórico do chat e não precisam ser salvas.

Parâmetros:

  • thread_uuid: UUID da thread a ser salva

Retorna: Confirmação das células do Smartbook salvas

Exemplos de uso

Fluxo de trabalho básico

  1. Crie uma thread para iniciar uma nova sessão de análise
  2. Envie solicitações de chat com consultas em linguagem natural
  3. Obtenha resultados do chat para recuperar as saídas da análise
  4. Salve no Smartbook (opcional) para persistir os resultados e compartilhá-los

Exemplo: Analisando dados de vendas

// 1. Create a new thread
const thread = await mcp.callTool('fabi', 'create_thread', {
  title: 'Sales Analysis Q4 2024'
});

// 2. Submit an analysis request
const request = await mcp.callTool('fabi', 'submit_chat', {
  thread_uuid: thread.uuid,
  message: 'Show top 10 customers by revenue in Q4 2024'
});

// 3. Get the results
const results = await mcp.callTool('fabi', 'get_chat_result', {
  request_uuid: request.uuid
});

// 4. Save to Smartbook for sharing
await mcp.callTool('fabi', 'save_to_smartbook', {
  thread_uuid: thread.uuid
});

Solução de problemas

  • Primeiro, tente usar o Agente Analista de IA na interface da Fabi para garantir que funcione como esperado. Se funcionar, então
  • Se estiver usando autenticação baseada em token, certifique-se de estar usando um token válido
  • Se estiver usando um agente local, reinicie o agente após configurar as ferramentas

Melhores práticas

Segurança do token

  • Armazene tokens MCP com segurança e nunca os envie para o controle de versão
  • Use variáveis de ambiente ou gerenciamento seguro de segredos
  • Rotacione os tokens regularmente para maior segurança
  • Cada token deve ser usado por apenas um aplicativo ou usuário

Tratamento de erros

  • Implemente lógica de repetição para get_chat_result quando o status for "processing"
  • Lide com cenários de timeout com elegância
  • Valide os UUIDs das threads antes de fazer chamadas subsequentes

Desempenho

  • Use context_cell_uuids e context_dataframes para aproveitar análises anteriores
  • Chame save_to_smartbook apenas quando precisar persistir resultados
  • Agrupe consultas relacionadas na mesma thread para melhor contexto