Why we built this
Most companies sit on a lot of data, and very little of it is connected. Products are in one system, customers in another, orders and reviews somewhere else. Even a simple question can mean pulling all of it together by hand.
That's why a lot of teams have started putting their data into a graph database like Neo4j (opens in a new tab). In a graph, things are linked directly: a product to its brand, to its category, to the products people buy with it. Neo4j also does vector search (opens in a new tab), so you can find things by meaning, not just by exact words. And with Neo4j's MCP server (opens in a new tab), you can plug the whole graph into an AI agent and let it do the searching.
It works, but it's slow and it isn't cheap. The agent looks at how the graph is laid out, writes a query, runs it, reads what came back and decides what to do next, one tool call at a time. Every one of those steps is a round trip to a large language model.
So we tried something else. Jev (opens in a new tab), from TypeSafe AI, is a classifier: you give it a question and some options, and it gives back a probability for each option in well under a second, for a tiny fraction of a cent. It doesn't write anything. It only decides.
We put Jev in front of the search. It decides what each part of the question means, where to look in the graph, which products fit and when to stop, and plain code and Neo4j queries do the fetching. We called it GraphReflex.
Then we had to test it fairly. We gave GraphReflex and Claude Opus 5.5 (with Neo4j MCP tools) the same questions, the same graph and the same clock, and counted how often each one put a correct product first. Plain vector search ran too, as the usual baseline. The results are at the top of this page. You can watch them race on the same question, and the benchmark has every number.