I haven’t built either system but it seems clear that tool calling will be ‘O(num_targets * O(search tool))’, while RAG will be ‘O(embed_query * num_targets)’.

RAG looks linear (constant per lookup) while tools look polynomial. And tools will possibly fill up the limited LLM context too.