Function Calling: The LLM Picks a Predefined Function

~12 min read

Function calling lets the LLM decide which developer-defined function to invoke based on the user's prompt. It predates MCP and still has real limitations: the M×N integration problem, tight app-specific coupling, and manual update propagation.

Function Calling: The LLM Picks a Predefined Function is a Pro topic

Sign in, then upgrade to Pro or Power to unlock this topic and the full AI Engineering curriculum.

Key points

  • Function calling lets the LLM decide which developer-defined function to call, based on interpreting the user's input
  • It predates MCP and is genuinely useful — it's what first let LLMs take real actions beyond text generation
  • Limitation 1: the M×N integration problem — M AI apps × N functions can require M×N distinct integrations
  • Limitation 2: functions are tightly coupled to specific applications, making reuse across systems hard
  • Limitation 3: any function change requires manual updates across every instance using it, same as traditional APIs