Repolode
dosco

dosco/graphjin

Um compilador e runtime em Go que expõe bancos de dados, arquivos e código para agentes de IA por meio de GraphQL e MCP, com acesso controlado e execução auditável.

Estrelas
3,234
Forks
206
Issues abertas
18
Último commit
há 14 horas

O que é?

O GraphJin compila consultas GraphQL em SQL para bancos de dados como PostgreSQL, MySQL, MongoDB, SQLite, Oracle e MSSQL, além de oferecer REST, assinaturas em tempo real e subgraphs do Apollo Federation. As relações entre tabelas viram joins navegáveis, então uma única requisição GraphQL se transforma em uma consulta otimizada, sem resolvers nem ORM.

Para agentes de IA, o GraphJin oferece uma interface MCP que permite ao modelo descobrir o schema, validar filtros e executar consultas salvas e aprovadas, em vez de receber credenciais brutas do banco de dados. Ele também indexa o código-fonte com tree-sitter em um cache SQLite (CodeSQL), expõe object stores como S3, GCS e arquivos locais como tabelas e inclui um endpoint de agente no servidor, além de watches que executam novamente as assinaturas e registram alterações em uma caixa de entrada.

O projeto é distribuído como um único binário, com pacotes para npm, Homebrew, Scoop, Docker e deb/rpm, e inclui uma demonstração integrada e um console web para testar localmente.

Recursos principais

  • 01Compila consultas GraphQL em instruções SQL únicas e otimizadas para diversos bancos de dados.
  • 02Expõe bancos de dados, object stores e código-fonte por meio de uma única interface GraphQL e MCP.
  • 03Oferece ferramentas MCP para descoberta de schema, validação de filtros e execução de consultas aprovadas.
  • 04Oferece suporte a assinaturas em tempo real por WebSockets e Server-Sent Events.
  • 05Indexa árvores de código com tree-sitter para permitir consultas ao código junto com os dados.
  • 06Oferece um endpoint de agente no servidor e watches que enviam resultados para uma caixa de entrada ou webhook.

Casos de uso

  • Dar a um assistente de IA acesso de leitura a um banco de dados de produção sem compartilhar credenciais brutas.
  • Criar uma API GraphQL sobre um banco de dados SQL existente sem escrever resolvers.
  • Consultar arquivos em object stores como se fossem tabelas de banco de dados, via GraphQL ou REST.
  • Fazer perguntas que relacionem tabelas do banco de dados ao código-fonte que as utiliza.

Início rápido

  1. 1

    Instale o GraphJin via npm

    npm install -g graphjin
  2. 2

    Inicie o app de demonstração integrado

    graphjin serve --demo

Antes de usar

  • O agente de IA integrado precisa de uma chave de API de modelo da OpenAI, Anthropic ou Google.
  • A demonstração e os exemplos são executados com SQLite e configurações baseadas em Docker. Para conectar seus próprios bancos de dados, é necessário criar e configurar um app.

Em coleções

Tópicos

Perguntas frequentes

O que é graphjin?
Um compilador e runtime em Go que expõe bancos de dados, arquivos e código para agentes de IA por meio de GraphQL e MCP, com acesso controlado e execução auditável. O GraphJin compila consultas GraphQL em SQL para bancos de dados como PostgreSQL, MySQL, MongoDB, SQLite, Oracle e MSSQL, além de oferecer REST, assinaturas em tempo real e subgraphs do Apollo Federation. As relações entre tabelas viram joins navegáveis, então uma única requisição GraphQL se transforma em uma consulta otimizada, sem resolvers nem ORM.
graphjin é gratuito? Qual é a licença?
graphjin é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
graphjin ainda é mantido?
Manutenção ativa. O último commit de graphjin foi em 6 de nov. de 2026.
Para que posso usar graphjin?
Dar a um assistente de IA acesso de leitura a um banco de dados de produção sem compartilhar credenciais brutas. Criar uma API GraphQL sobre um banco de dados SQL existente sem escrever resolvers. Consultar arquivos em object stores como se fossem tabelas de banco de dados, via GraphQL ou REST. Fazer perguntas que relacionem tabelas do banco de dados ao código-fonte que as utiliza.
Como instalar graphjin?
Instale o GraphJin via npm: npm install -g graphjin Inicie o app de demonstração integrado: graphjin serve --demo
Onde consigo graphjin?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dosco/graphjin

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados