DataGrout

oficial

Camada de descoberta, governança e orquestração para agentes de IA que trabalham em múltiplos servidores MCP e integrações.

O que você pode fazer com DataGrout MCP?

  • Provisione um servidor DataGrout e identidade mTLS automaticamente — chame bootstrap_onramp para registrar um agente, obter credenciais OAuth e gerar um certificado assinado em uma única etapa.
  • Autentique com mTLS, OAuth 2.1 ou tokens bearer — configure o cliente com identidade baseada em certificado, JWTs com atualização automática ou um token simples para testes.
  • Descubra e invoque ferramentas usando linguagem natural — use a Interface Inteligente (discover/perform) para permitir que um agente encontre e chame ferramentas descrevendo um objetivo em vez de especificar nomes exatos de ferramentas.
  • Acompanhe o uso de créditos em cada chamada — inspecione o recibo de custo retornado com cada resposta para monitorar gastos em relação a limites de política ou orçamento.
  • Percorra metas de várias etapas interativamente — chame client.guide(goal=...) para avançar por um fluxo de trabalho guiado com o servidor.
  • Alterne entre transportes Streamable HTTP, JSON-RPC ou WebSocket — selecione o transporte mcp, jsonrpc ou websocket sem alterar a configuração de autenticação.

Documentação

A maioria dos clientes MCP lida com uma tarefa: enviar uma solicitação, obter uma resposta. O Conduit foi construído para um problema um pouco diferente — um agente que precisa provar quem é, continuar trabalhando em sessões longas sem reautenticar manualmente, e permanecer dentro de um orçamento de custo ou política enquanto faz isso. Essa é a lacuna que este SDK preenche.

Biblioteca de cliente MCP com mTLS integrado, OAuth 2.1 e descoberta semântica de ferramentas. Disponível para Python, TypeScript, Rust, Elixir e Ruby.

Troque uma única importação e um agente existente passa a ter identidade baseada em certificado, visibilidade de custos e descoberta de ferramentas em linguagem natural — sem outras alterações de código necessárias.

Você precisa do SDK, ou apenas do endpoint bruto?

Todo servidor DataGrout expõe um endpoint MCP padrão — qualquer cliente compatível com MCP pode se conectar diretamente a ele apenas com uma URL e um token de portador, sem necessidade de SDK. O Conduit é para casos em que você quer mais do que o mínimo:

  • Você quer identidade baseada em certificado (mTLS) em vez de gerenciar um token você mesmo

  • Você quer rastreamento de custos em cada chamada sem construir isso separadamente

  • Você quer descoberta semântica para que um agente encontre a ferramenta certa descrevendo um objetivo, em vez de precisar do nome exato da ferramenta

  • Você está integrando em Rust, Elixir ou Ruby, onde implementar manualmente a lógica de transporte MCP dá mais trabalho do que em Python/TypeScript

Se nada disso se aplica — por exemplo, você está apenas conectando o Claude Desktop a um servidor DataGrout — a configuração JSON simples de mcpServers é mais simples e suficiente. O Conduit é para construir seu próprio agente ou aplicação sobre o DataGrout, não para configuração básica de cliente.

Suporte a linguagens

LinguagemPacoteInstalação
Pythondatagrout-conduitpip install datagrout-conduit==0.7.0
TypeScript@datagrout/conduitnpm install @datagrout/conduit@0.7.0
Rustdatagrout-conduitcargo add datagrout-conduit@0.7.0
Elixirdatagrout_conduit{:datagrout_conduit, "~> 0.7.0"}
Rubydatagrout-conduitgem install datagrout-conduit -v 0.7.0

Obtendo um servidor sem se cadastrar primeiro

Ainda não tem uma conta ou endpoint DataGrout? O SDK pode provisionar ambos diretamente para você (Python mostrado; a mesma chamada existe no SDK de cada linguagem — veja a documentação por linguagem nos links abaixo para a sintaxe exata):

from datagrout.conduit import ClientBuilder
from datagrout.conduit.onramp import OnrampOptions

client = await ClientBuilder().bootstrap_onramp(OnrampOptions(
    gateway="https://app.datagrout.ai",
    agent_name="my-agent",
    agent_type="claude-sonnet-4-6",
    intended_use="Summarise documents and extract entities.",
))
await client.connect()

Por trás dessa única chamada: o SDK registra seu agente, troca um token de curta duração por credenciais OAuth e uma URL de servidor, gera um par de chaves local e o faz assinar pela CA do DataGrout. A chave privada permanece na sua máquina. Cada execução após a primeira reutiliza a identidade salva automaticamente.

Prefere o terminal a escrever código: invariant onboard.

Autenticação

Três métodos, idênticos em todos os cinco SDKs:

  • Token de portador — opção mais simples, boa para testes rápidos.

  • OAuth 2.1 (credenciais de cliente) — o SDK busca, armazena em cache e atualiza JWTs automaticamente.

  • mTLS — após um bootstrap único, o próprio certificado autentica cada solicitação; sem tokens para gerenciar depois.

Para mTLS, a identidade é descoberta automaticamente em uma ordem de busca fixa: um diretório de substituição explícito, variáveis de ambiente CONDUIT_MTLS_CERT/CONDUIT_MTLS_KEY, CONDUIT_IDENTITY_DIR, o padrão ~/.conduit/, e então um .conduit/ local relativo ao diretório de trabalho. Executar vários agentes em uma máquina significa dar a cada um seu próprio diretório de identidade.

Por que uma CA dedicada: identidade de máquina tem requisitos diferentes da identidade de navegador — agentes precisam de certificados emitidos e rotacionados programaticamente, sem um humano no processo a cada vez. A chave de assinatura vive em uma chave AWS KMS com suporte a HSM (FIPS 140-2 Nível 2) e nunca sai dela. O certificado da CA é público em ca.datagrout.ai/ca.pem para verificação independente da cadeia.

Opções de transporte

TransporteProtocoloUse quando
mcp (padrão)MCP sobre Streamable HTTP/SSEVocê quer suporte completo ao protocolo, streaming, notificações
jsonrpcJSON-RPC 2.0 sobre HTTP POSTVocê quer algo mais simples e sem estado
websocketJSON-RPC 2.0 sobre WebSocketVocê precisa que o servidor envie eventos, não apenas responda

A autenticação funciona de forma idêntica nos três — mudar o transporte não significa mudar como você autentica.

Principais recursos

  • Interface Inteligente (ativada por padrão) — colapsa toda a superfície de ferramentas em duas chamadas, discover e perform. O agente descreve um objetivo em linguagem simples em vez de raciocinar sobre centenas de esquemas de ferramentas. Desative com use_intelligent_interface=False para ver ferramentas brutas.

  • Descoberta semântica — disponível também de forma independente, para buscar ferramentas por significado em vez de nome exato.

  • Visibilidade de custos — cada chamada retorna um recibo com uso de créditos.

  • Fluxos de trabalho guiados — client.guide(goal=...) percorre um objetivo de múltiplas etapas interativamente.

  • Certificados de Confiança Cognitiva — prova criptográfica de que um fluxo de trabalho é livre de ciclos, seguro quanto a tipos, compatível com políticas e dentro do orçamento, assinado pela mesma CA das identidades de agentes.

Namespaces de primeira parte

NamespacePara que serve
prismTransformação de dados, gráficos, renderização, exportação
logicMemória persistente de agente via camada lógica Prolog
wardenVerificações de segurança, verificação de intenção, consenso multi-modelo
deliverablesRegistro e recuperação de produtos de trabalho finalizados
ephemeralsInspeção e gerenciamento de resultados em cache
flowOrquestração de fluxos de trabalho — roteamento, aprovação humana, histórico de execução

Fluxos podem ser salvos como habilidades nomeadas e reutilizáveis (save_as_skill=True) ou incorporados inline como etapas únicas via $compute. flow.route lida com ramificação condicional; flow.request_approval/flow.request_feedback inserem pontos de verificação humanos. Qualquer coisa não coberta por um namespace é acessível via uma chamada genérica dg().

Onde isso se conecta às integrações do DataGrout

O Conduit é a camada entre seu agente e qualquer servidor DataGrout — incluindo as integrações Salesforce, QuickBooks e Oracle Fusion Cloud. Uma chamada call_tool("salesforce@1/get_lead@1", ...) funciona da mesma forma independentemente de quais integrações aquele servidor tem configuradas; o SDK não precisa conhecer uma integração específica antecipadamente.

Para onde ir a seguir

  • Documentação por linguagem: READMEs de Python, TypeScript, Rust, Elixir, Ruby (GitHub)

  • Detalhes de segurança: app.datagrout.ai/security

  • Ferramentas gratuitas, sem conta: MCP Inspector e JSON-RPC Inspector, baseados em navegador

  • Laboratórios: artigos de pesquisa sobre certificados de confiança, análise semântica de código, aplicação de políticas, o modelo de créditos e mais

Licença

MIT