bilalkaradeniz
← Back to all work

2026 · Author, open source

Grafyx

A live code graph for AI coding assistants.

nDCG@10 0.787 vs 0.335 (+135%)
14 MCP tools · on PyPI
CPU-only, no cloud calls
Stack
Python · MCP · tree-sitter · ONNX · NumPy
parsefile watcherre-rank14 toolsYour codebasetree-sitterPythonRelationship graphONNXNumPyMCPClaude Code · Cursorparsefile watcherre-rank14 toolsYour codebasetree-sitterPythonRelationship graphONNXNumPyMCPClaude Code · Cursor

Problem

Assistants grep and read files one by one. They miss callers, break things two modules away, and can't tell which of ten similar functions is the one that matters.

System

Graph-sitter (built on tree-sitter) parses Python, TypeScript and JavaScript into a graph of symbols, calls, imports and inheritance. Search runs jina-v2 code embeddings locally through ONNX, then four small NumPy networks re-rank results, filter noise, score symbol importance and catch gibberish queries. FastMCP exposes it all as 14 tools.

Hard parts

  • Beating plain token search by a wide margin without a GPU or a cloud API.
  • Keeping the graph live on large repositories as files change.
  • Reproducible benchmarks on FastAPI, Django and Home Assistant.

Result

Published on PyPI as grafyx-mcp with CI. On 278 queries across FastAPI and Django it reaches nDCG@10 0.787, against 0.335 for token search. It works with Claude Code, Cursor, Windsurf, Cline and VS Code Copilot.

Next projectVeloquence