> I built *JitAPI* to solve this by treating the API spec as a graph, not a list of tools. > *How it works:*
> 1. It ingests a raw OpenAPI spec and builds a directed graph using *NetworkX*.
> 2. It detects dependencies between endpoints (e.g., recognizing that you need an `owner_id` from `GET /user` before you can call `POST /repos`).
> 3. At runtime, it uses *ChromaDB* to find the goal tool, then traverses the graph backwards to resolve the prerequisites automatically. > > > It’s built as an *MCP (Model Context Protocol) Server*, so it works with Claude Desktop, Cursor, or any MCP client out of the box. > The stack is Python, NetworkX, ChromaDB, and PydanticAI. > Happy to answer any questions about the graph resolution logic—it's still experimental but handles the GitHub API surprisingly well.