Every major AI model now picks the right function to call with impressive reliability. The hard part isn't function selection anymore—it's everything that happens around that call. After watching countless agentic systems ship and fail in production, developer Paul Crinigan lays out why tool calling remains the graveyard for ambitious AI projects on DEV.to.

Function Selection Is Solved

The core capability has matured. Models like GPT-4o, Claude 3.5 Sonnet, and Gemini 1.5 Pro handle function selection with enough consistency that developers can trust basic routing decisions. Crinigan notes this shift fundamentally changes where engineering effort needs to focus—downstream from the model's decision-making layer.

The Real Problems Live in the Glue

"What decides whether your agent survives contact with production is everything wrapped around the call," Crinigan writes. This includes how function schemas are described to the model, what happens when a tool fails mid-execution, and how the system handles latency between invocation and response. These orchestration details rarely get attention during prototyping but cause cascading failures under real load.

Schema Descriptions Make or Break Behavior

Function descriptions aren't just metadata—they're instructions that shape the entire execution path. Vague parameter names, missing constraints, and poorly defined return types create ambiguity that compounds through multi-step agent loops. A function that works perfectly in isolation can produce unpredictable results when called by an agent making sequential decisions.

Error Handling and Retry Logic

Between a model's decision to invoke a tool and receiving its output lies a gap filled with network failures, timeout conditions, and partial responses. Agents need robust handling for these scenarios without requiring explicit instructions from the model each time. This is where most frameworks fall short out of the box.

Key Takeaways

  • Function selection reliability has reached commodity status across major providers
  • Schema quality directly impacts agent behavior in production, not just development
  • Error handling between tool calls requires deliberate engineering, not afterthoughts
  • Multi-step agent loops amplify small description inconsistencies into failures

The Bottom Line

If you're building AI agents and haven't stress-tested your function schemas under real conditions, you're shipping technical debt. The model is the easy part now—everything else determines whether your agent actually works.