Tool Calling Explained: The Core of AI Agents (2026 Guide)
Tool Calling Explained: The Core of AI Agents (2026 Guide)


TL;DR
What it is: Tool Calling provides the I/O layer for LLMs, allowing them to execute actions and access real-time data.
Why it matters: Tool Calling transforms LLMs from passive text generators into active agents that interact with external systems like Salesforce or GitHub.
The Problem: The real challenge isn't the LLM's reasoning, but the complex engineering required for secure and reliable tool execution (auth, error handling, etc.).
The Solution: Composio provides the managed execution layer, handling the integration plumbing so you can focus on building agents.
The shift from "chatbots" to "AI agents" hinges on a single technical capability: Tool Calling.
For engineering leaders evaluating integration strategies, you need to separate the core mechanism (Tool Calling) from the discovery standards (Tool Search) and the emerging interface protocols (MCP). These are distinct layers with different purposes.
This guide dissects the modern tool calling stack, moving from foundational concepts to enterprise architecture. We'll expose the hidden engineering burden, specifically the gap between discovering a tool and securely executing it in production.
What is Tool Calling and Why Does It Matter?
Large Language Models (LLMs) are powerful reasoning engines, but they're fundamentally isolated. They exist in a frozen state, limited to their training data and unable to interact with the outside world.
Tool calling (often called function calling) provides the I/O layer that breaks this isolation. It allows the model to output structured data (typically JSON) that instructs an external system to act, rather than just generating text.
This capability bridges the gap between probabilistic reasoning and deterministic execution. For developers, it enables three critical capabilities:
Real-Time Data Access: Overcome training cutoffs by fetching live stock prices, weather, or recent database entries.
Action Execution: Transform the LLM from a passive observer to an active participant that modifies state, like sending emails, updating CRMs, or deploying code.
Structured Interoperability: Force the messy, unstructured reasoning of an LLM into strict, machine-readable schemas that legacy systems accept.
From Theory to Reality: What Do Real-World Tool Calls Look Like?
Tutorials often show tool calling with trivial examples, such as get_weather(city="San Francisco"). In production enterprise environments, the complexity scales non-linearly.
The Simple Use Case: Data Retrieval
A user asks a support bot, "Where is my order?" The agent calls shopify_get_order_status(order_id="123"). The complexity here remains low: a single read-only API call.
The Enterprise Challenge: Multi-Step Orchestration
Consider a Sales Operations agent. A user prompts: "A new lead just filled out the 'Project Titan' form. Create an account in Salesforce, assign it to me, and sync the HubSpot history."
This requires a distributed transaction across disparate systems:
Fetch Context: The agent calls HubSpot's API to retrieve the lead's engagement history.
Transform Data: The agent maps HubSpot's JSON schema to Salesforce's rigid Object model.
Execute Write: The agent calls the Salesforce API to create the Account record.
Handle State: The agent parses the Salesforce response to get the new
AccountID.Chain Action: The agent uses that
AccountIDto create a Task and assign ownership.
The bottleneck isn't the LLM's reasoning. It's the fragile integration plumbing required to authenticate, map, and execute these decisions across different API standards.
The Taxonomy: Tool Calling vs. Tool Search vs. MCP
Before architecting a solution for these complex workflows, distinguish among three distinct concepts that are often conflated in developer discussions.
Concept | The Role | The Analogy |
|---|---|---|
Tool Calling | The Mechanism. The fundamental ability of a model to output structured JSON arguments instead of text. | The Hand. It allows the brain (LLM) to manipulate objects. |
Tool Search | The Discovery Layer. A method for the model to find the right tool definition from a large catalog (1,000+) without overloading the context window. | The Phonebook. You look up the number (tool definition) only when you need it. |
MCP | The Interface Standard. An open protocol (Model Context Protocol) that standardizes how tools are defined and connected. | The USB-C Port. A standard shape for connecting peripherals, regardless of manufacturer. |
The Mechanics: The 6-Step Agentic Loop
Early documentation described a simple 5-step loop. In modern production environments using dynamic discovery, this loop has evolved into a 6-step process.
Tool Discovery (Step 0): The application queries a Tool Registry (via MCP or a vector store) to find relevant tool definitions based on the user's intent. This step prevents context window saturation.
Tool Definition: The LLM receives the specific definitions of the discovered tools (e.g., JSON Schema).
User Prompt: The user provides a request requiring external action.
LLM Prediction: The model analyzes the prompt against the tool definitions and outputs a structured JSON payload (the "Tool Call").
Execution (The Bottleneck): The application code receives the JSON, handles authentication, executes the logic against the external API, and manages errors.
Final Response: The tool output feeds back to the LLM to generate the human-readable confirmation.
Solving the "Context Explosion" Problem with Anthropic's Tool Search
As agents move from demos to enterprise use, the number of required tools explodes. An agent handling IT support might need access to Jira, GitHub, PagerDuty, Slack, and AWS.
Loading definitions for 50+ tools into the system prompt creates two problems:
Cost & Latency: Tool definitions consume input tokens. Internal testing by Anthropic showed that 58 tools could consume ~55k tokens.
Accuracy degradation: As the number of tool options increases, the model's ability to select the correct one decreases.
Solutions like Anthropic's Tool Search address this by allowing the model to "search" for tools rather than having them all pre-loaded.
The Impact:
Token Reduction: Dynamic loading can reduce token usage by 85% (dropping from ~77k to ~8.7k tokens in extensive catalog tests).
Accuracy: In tests with extensive toolsets, accuracy improved from 79.5% to 88.1% (Claude Opus 4.5).
However, Tool Search introduces latency due to the additional search step. Anthropic recommends Tool Search when your agent requires access to 30+ tools.
MCP: The "USB-C" for AI Tools
The Model Context Protocol (MCP) solves the fragmentation problem. Previously, connecting an agent to Google Drive required a different implementation than connecting it to Slack. MCP standardizes the connection.
If you use an MCP-compliant server, your agent can "plug in" to that resource using a standard tools/list and tools/call protocol. This approach excels at standardization, but understanding what MCP does not do is critical.
MCP provides a specification for communication. It does not provide a runtime for execution. MCP doesn't solve:
OAuth 2.0 lifecycle management for 10,000 users.
Rate limit handling when the API returns a
429.SOC 2 compliance logs for every action taken.
The Execution Gap: Why Tool Discovery Doesn’t Equal Production Readiness
This gap represents the most common point of failure for engineering teams. They implement Tool Search (Discovery) and use MCP (Standardization), but they underestimate the complexity of the Execution Layer.
Knowing which tool to call is trivial compared to the infrastructure required to call it successfully.
1. The Challenge of Per-User Authentication at Scale
In a demo, you store an API Key in a .env file. In production, you have 5,000 users who need to connect their own Salesforce, GitHub, or Gmail accounts.
You must build an OAuth client that handles redirects, securely stores refresh tokens, and automatically refreshes them 5 minutes before expiry. This means maintaining separate auth flows for every single integration you support. For more on this authentication challenge, read our article on getting started with AI agents.
2. Managing Reliability and Heterogeneity of APIs
APIs are brittle.
Rate Limits: What happens when your agent hits a rate limit? The LLM doesn't know how to back off exponentially. Your code must handle that scenario.
Pagination: An LLM might ask for "all tickets," but the API returns page 1 of 50. Your execution layer must abstract pagination, or the agent will hallucinate based on incomplete data.
3. Handling Agent Governance
If your agent has access to delete_repo in GitHub, who can call it? MCP provides the capability but doesn't enforce the policy.
The Solution: Composio as the Execution Layer
Composio functions as the managed infrastructure for the "Step 5" Execution phase. We abstract away the complexity of authentication and API interactions, so you can use MCP and Tool Search without building the plumbing from scratch.
1. Unified Connectivity & Managed Auth
Instead of building OAuth flows for 200+ services, Composio handles the entire lifecycle. You authenticate the user once, and we handle token refreshes, storage, and security. Learn more in our [deep dive on OAuth].
2. The Difference in Implementation
Option A: The Manual Approach (DIY) You write the "glue code" to interpret the LLM's JSON, make the HTTP request, handle authentication, and parse errors.
# The "Hidden" Complexity of Manual Tool Execution import requests def execute_github_star(tool_call, user_id): # 1. Retrieve User's Token (Secure Database logic required here) token = db.get_token(user_id, "github") # 2. Check Expiry & Refresh if needed (OAuth logic required here) if token.is_expired(): token = refresh_oauth_token(token) # 3. Execute try: repo = tool_call['args']['repo'] response = requests.put( f"https://api.github.com/user/starred/{repo}", headers={"Authorization": f"Bearer {token.access_token}"} ) response.raise_for_status() except requests.exceptions.RateLimitExceeded: # 4. Implement Retry Logic return "Error: Rate limit exceeded. Try again later." except Exception as e: return f"Error: {str(e)}" return "Success"
Option B: The Composio Approach. Composio acts as the router and executor. We provide the LLM with the tools (compatible with OpenAI, Claude, etc.) and handle execution.
from composio import Composio # Composio handles Auth, Retries, Rate Limits, and Schema definitions composio = Composio() # 1. Get the tool definition (Formatted for your specific LLM) tools = composio.tools.get( user_id=user_id, tools=["GITHUB_STAR_REPO"] # Note: 'tools' parameter, not 'actions' ) # ... LLM generates a tool call ... # 2. Handle tool calls - use provider.handle_tool_calls() result = composio.provider.handle_tool_calls( user_id=user_id, response=tool_call_response # The LLM response containing tool calls )
3. Compatible with Modern Discovery
Composio integrates with the modern stack. We support MCP, meaning you can mount Composio's 850+ integrations as an MCP server. You get the standard MCP interface with Composio's managed authentication and reliability.
Production Readiness Checklist
If you choose to build the execution layer yourself, ensure you've accounted for the following operational requirements before deploying to production.
Component | Requirement | The Risk |
|---|---|---|
Auth Management | Per-user OAuth token refresh & storage | Security breaches or agents failing mid-task because of expired tokens. |
Observability | Log of every tool call, input, and output | Impossible to debug why an agent deleted a production database. |
Rate Limiting | Exponential backoff & retry logic | One aggressive agent gets your entire IP blocked by Salesforce. |
Output Normalization | Standardizing JSON outputs from varied APIs | The LLM gets confused by XML or massive unparsed payloads. |
Permissions | Scope validation (Read vs. Write) | An agent authorized to "read" tickets accidentally "deletes" them. |
Conclusion
Tool Calling has matured. With Claude Tool Search, we've solved the context window problem. With MCP, we're solving the problem of interface standardization.
But standardization doesn't equal execution. The engineering challenge has shifted from "how do I connect this" to "how do I run this securely for 10,000 users."
You can build the authentication, retry logic, and governance layer yourself, or you can use a dedicated execution platform. If you're ready to focus on agent behavior rather than integration maintenance, connect your first tool with Composio today.
Frequently Asked Questions
What is the difference between tool calling and function calling?
They're often used interchangeably to refer to the LLM's ability to output structured data to call external tools.
When should I use Tool Search?
Anthropic recommends using Tool Search when your agent needs access to 30 or more tools to avoid context window limitations and improve accuracy.
What does the Model Context Protocol (MCP) not solve?
MCP standardizes communication but doesn't handle execution complexities such as OAuth, rate limit handling, or compliance logging.
How does Composio simplify tool execution?
Composio manages the entire execution layer, including authentication, token refresh, and reliability, while abstracting away the complex "glue code" required in production environments.
What is the difference between Tool Calling and Prompt Engineering?
Prompt Engineering involves crafting text inputs to guide the LLM's internal reasoning (e.g., asking it to "think step-by-step"). Tool Calling is the capability that allows the LLM to interact with external systems. While you use prompt engineering to help the model decide which tool to use, Tool Calling is the mechanism that actually executes the action.
Tool Calling vs. RAG: Which one do I need?
You likely need both, but they serve different purposes.
RAG (Retrieval Augmented Generation): Used for reading static knowledge. It retrieves data (PDFs, docs) to provide context for an answer.
Tool Calling: Used for acting and fetching dynamic data. It allows the agent to send emails, update databases, or check live stock prices—things a static vector database cannot do.
Can I use Tool Calling with open-source models like Llama 3?
Yes. Modern open-source models like Llama 3 and Mistral Large have been fine-tuned for tool calling and are compatible with standard formats. However, for complex multi-step orchestration, frontier models like Claude 4.5 Sonnet or GPT-5 still offer higher reliability in adhering to strict JSON schemas compared to smaller local models.
How do I handle dangerous actions (Human-in-the-Loop)?
For sensitive actions (like delete_repo or transfer_funds), you should not allow the LLM to execute autonomously. Your execution layer should support Human-in-the-Loop (HITL) flows, where the agent prepares the tool call but pauses execution until a human user explicitly approves the action via the UI.
TL;DR
What it is: Tool Calling provides the I/O layer for LLMs, allowing them to execute actions and access real-time data.
Why it matters: Tool Calling transforms LLMs from passive text generators into active agents that interact with external systems like Salesforce or GitHub.
The Problem: The real challenge isn't the LLM's reasoning, but the complex engineering required for secure and reliable tool execution (auth, error handling, etc.).
The Solution: Composio provides the managed execution layer, handling the integration plumbing so you can focus on building agents.
The shift from "chatbots" to "AI agents" hinges on a single technical capability: Tool Calling.
For engineering leaders evaluating integration strategies, you need to separate the core mechanism (Tool Calling) from the discovery standards (Tool Search) and the emerging interface protocols (MCP). These are distinct layers with different purposes.
This guide dissects the modern tool calling stack, moving from foundational concepts to enterprise architecture. We'll expose the hidden engineering burden, specifically the gap between discovering a tool and securely executing it in production.
What is Tool Calling and Why Does It Matter?
Large Language Models (LLMs) are powerful reasoning engines, but they're fundamentally isolated. They exist in a frozen state, limited to their training data and unable to interact with the outside world.
Tool calling (often called function calling) provides the I/O layer that breaks this isolation. It allows the model to output structured data (typically JSON) that instructs an external system to act, rather than just generating text.
This capability bridges the gap between probabilistic reasoning and deterministic execution. For developers, it enables three critical capabilities:
Real-Time Data Access: Overcome training cutoffs by fetching live stock prices, weather, or recent database entries.
Action Execution: Transform the LLM from a passive observer to an active participant that modifies state, like sending emails, updating CRMs, or deploying code.
Structured Interoperability: Force the messy, unstructured reasoning of an LLM into strict, machine-readable schemas that legacy systems accept.
From Theory to Reality: What Do Real-World Tool Calls Look Like?
Tutorials often show tool calling with trivial examples, such as get_weather(city="San Francisco"). In production enterprise environments, the complexity scales non-linearly.
The Simple Use Case: Data Retrieval
A user asks a support bot, "Where is my order?" The agent calls shopify_get_order_status(order_id="123"). The complexity here remains low: a single read-only API call.
The Enterprise Challenge: Multi-Step Orchestration
Consider a Sales Operations agent. A user prompts: "A new lead just filled out the 'Project Titan' form. Create an account in Salesforce, assign it to me, and sync the HubSpot history."
This requires a distributed transaction across disparate systems:
Fetch Context: The agent calls HubSpot's API to retrieve the lead's engagement history.
Transform Data: The agent maps HubSpot's JSON schema to Salesforce's rigid Object model.
Execute Write: The agent calls the Salesforce API to create the Account record.
Handle State: The agent parses the Salesforce response to get the new
AccountID.Chain Action: The agent uses that
AccountIDto create a Task and assign ownership.
The bottleneck isn't the LLM's reasoning. It's the fragile integration plumbing required to authenticate, map, and execute these decisions across different API standards.
The Taxonomy: Tool Calling vs. Tool Search vs. MCP
Before architecting a solution for these complex workflows, distinguish among three distinct concepts that are often conflated in developer discussions.
Concept | The Role | The Analogy |
|---|---|---|
Tool Calling | The Mechanism. The fundamental ability of a model to output structured JSON arguments instead of text. | The Hand. It allows the brain (LLM) to manipulate objects. |
Tool Search | The Discovery Layer. A method for the model to find the right tool definition from a large catalog (1,000+) without overloading the context window. | The Phonebook. You look up the number (tool definition) only when you need it. |
MCP | The Interface Standard. An open protocol (Model Context Protocol) that standardizes how tools are defined and connected. | The USB-C Port. A standard shape for connecting peripherals, regardless of manufacturer. |
The Mechanics: The 6-Step Agentic Loop
Early documentation described a simple 5-step loop. In modern production environments using dynamic discovery, this loop has evolved into a 6-step process.
Tool Discovery (Step 0): The application queries a Tool Registry (via MCP or a vector store) to find relevant tool definitions based on the user's intent. This step prevents context window saturation.
Tool Definition: The LLM receives the specific definitions of the discovered tools (e.g., JSON Schema).
User Prompt: The user provides a request requiring external action.
LLM Prediction: The model analyzes the prompt against the tool definitions and outputs a structured JSON payload (the "Tool Call").
Execution (The Bottleneck): The application code receives the JSON, handles authentication, executes the logic against the external API, and manages errors.
Final Response: The tool output feeds back to the LLM to generate the human-readable confirmation.
Solving the "Context Explosion" Problem with Anthropic's Tool Search
As agents move from demos to enterprise use, the number of required tools explodes. An agent handling IT support might need access to Jira, GitHub, PagerDuty, Slack, and AWS.
Loading definitions for 50+ tools into the system prompt creates two problems:
Cost & Latency: Tool definitions consume input tokens. Internal testing by Anthropic showed that 58 tools could consume ~55k tokens.
Accuracy degradation: As the number of tool options increases, the model's ability to select the correct one decreases.
Solutions like Anthropic's Tool Search address this by allowing the model to "search" for tools rather than having them all pre-loaded.
The Impact:
Token Reduction: Dynamic loading can reduce token usage by 85% (dropping from ~77k to ~8.7k tokens in extensive catalog tests).
Accuracy: In tests with extensive toolsets, accuracy improved from 79.5% to 88.1% (Claude Opus 4.5).
However, Tool Search introduces latency due to the additional search step. Anthropic recommends Tool Search when your agent requires access to 30+ tools.
MCP: The "USB-C" for AI Tools
The Model Context Protocol (MCP) solves the fragmentation problem. Previously, connecting an agent to Google Drive required a different implementation than connecting it to Slack. MCP standardizes the connection.
If you use an MCP-compliant server, your agent can "plug in" to that resource using a standard tools/list and tools/call protocol. This approach excels at standardization, but understanding what MCP does not do is critical.
MCP provides a specification for communication. It does not provide a runtime for execution. MCP doesn't solve:
OAuth 2.0 lifecycle management for 10,000 users.
Rate limit handling when the API returns a
429.SOC 2 compliance logs for every action taken.
The Execution Gap: Why Tool Discovery Doesn’t Equal Production Readiness
This gap represents the most common point of failure for engineering teams. They implement Tool Search (Discovery) and use MCP (Standardization), but they underestimate the complexity of the Execution Layer.
Knowing which tool to call is trivial compared to the infrastructure required to call it successfully.
1. The Challenge of Per-User Authentication at Scale
In a demo, you store an API Key in a .env file. In production, you have 5,000 users who need to connect their own Salesforce, GitHub, or Gmail accounts.
You must build an OAuth client that handles redirects, securely stores refresh tokens, and automatically refreshes them 5 minutes before expiry. This means maintaining separate auth flows for every single integration you support. For more on this authentication challenge, read our article on getting started with AI agents.
2. Managing Reliability and Heterogeneity of APIs
APIs are brittle.
Rate Limits: What happens when your agent hits a rate limit? The LLM doesn't know how to back off exponentially. Your code must handle that scenario.
Pagination: An LLM might ask for "all tickets," but the API returns page 1 of 50. Your execution layer must abstract pagination, or the agent will hallucinate based on incomplete data.
3. Handling Agent Governance
If your agent has access to delete_repo in GitHub, who can call it? MCP provides the capability but doesn't enforce the policy.
The Solution: Composio as the Execution Layer
Composio functions as the managed infrastructure for the "Step 5" Execution phase. We abstract away the complexity of authentication and API interactions, so you can use MCP and Tool Search without building the plumbing from scratch.
1. Unified Connectivity & Managed Auth
Instead of building OAuth flows for 200+ services, Composio handles the entire lifecycle. You authenticate the user once, and we handle token refreshes, storage, and security. Learn more in our [deep dive on OAuth].
2. The Difference in Implementation
Option A: The Manual Approach (DIY) You write the "glue code" to interpret the LLM's JSON, make the HTTP request, handle authentication, and parse errors.
# The "Hidden" Complexity of Manual Tool Execution import requests def execute_github_star(tool_call, user_id): # 1. Retrieve User's Token (Secure Database logic required here) token = db.get_token(user_id, "github") # 2. Check Expiry & Refresh if needed (OAuth logic required here) if token.is_expired(): token = refresh_oauth_token(token) # 3. Execute try: repo = tool_call['args']['repo'] response = requests.put( f"https://api.github.com/user/starred/{repo}", headers={"Authorization": f"Bearer {token.access_token}"} ) response.raise_for_status() except requests.exceptions.RateLimitExceeded: # 4. Implement Retry Logic return "Error: Rate limit exceeded. Try again later." except Exception as e: return f"Error: {str(e)}" return "Success"
Option B: The Composio Approach. Composio acts as the router and executor. We provide the LLM with the tools (compatible with OpenAI, Claude, etc.) and handle execution.
from composio import Composio # Composio handles Auth, Retries, Rate Limits, and Schema definitions composio = Composio() # 1. Get the tool definition (Formatted for your specific LLM) tools = composio.tools.get( user_id=user_id, tools=["GITHUB_STAR_REPO"] # Note: 'tools' parameter, not 'actions' ) # ... LLM generates a tool call ... # 2. Handle tool calls - use provider.handle_tool_calls() result = composio.provider.handle_tool_calls( user_id=user_id, response=tool_call_response # The LLM response containing tool calls )
3. Compatible with Modern Discovery
Composio integrates with the modern stack. We support MCP, meaning you can mount Composio's 850+ integrations as an MCP server. You get the standard MCP interface with Composio's managed authentication and reliability.
Production Readiness Checklist
If you choose to build the execution layer yourself, ensure you've accounted for the following operational requirements before deploying to production.
Component | Requirement | The Risk |
|---|---|---|
Auth Management | Per-user OAuth token refresh & storage | Security breaches or agents failing mid-task because of expired tokens. |
Observability | Log of every tool call, input, and output | Impossible to debug why an agent deleted a production database. |
Rate Limiting | Exponential backoff & retry logic | One aggressive agent gets your entire IP blocked by Salesforce. |
Output Normalization | Standardizing JSON outputs from varied APIs | The LLM gets confused by XML or massive unparsed payloads. |
Permissions | Scope validation (Read vs. Write) | An agent authorized to "read" tickets accidentally "deletes" them. |
Conclusion
Tool Calling has matured. With Claude Tool Search, we've solved the context window problem. With MCP, we're solving the problem of interface standardization.
But standardization doesn't equal execution. The engineering challenge has shifted from "how do I connect this" to "how do I run this securely for 10,000 users."
You can build the authentication, retry logic, and governance layer yourself, or you can use a dedicated execution platform. If you're ready to focus on agent behavior rather than integration maintenance, connect your first tool with Composio today.
Frequently Asked Questions
What is the difference between tool calling and function calling?
They're often used interchangeably to refer to the LLM's ability to output structured data to call external tools.
When should I use Tool Search?
Anthropic recommends using Tool Search when your agent needs access to 30 or more tools to avoid context window limitations and improve accuracy.
What does the Model Context Protocol (MCP) not solve?
MCP standardizes communication but doesn't handle execution complexities such as OAuth, rate limit handling, or compliance logging.
How does Composio simplify tool execution?
Composio manages the entire execution layer, including authentication, token refresh, and reliability, while abstracting away the complex "glue code" required in production environments.
What is the difference between Tool Calling and Prompt Engineering?
Prompt Engineering involves crafting text inputs to guide the LLM's internal reasoning (e.g., asking it to "think step-by-step"). Tool Calling is the capability that allows the LLM to interact with external systems. While you use prompt engineering to help the model decide which tool to use, Tool Calling is the mechanism that actually executes the action.
Tool Calling vs. RAG: Which one do I need?
You likely need both, but they serve different purposes.
RAG (Retrieval Augmented Generation): Used for reading static knowledge. It retrieves data (PDFs, docs) to provide context for an answer.
Tool Calling: Used for acting and fetching dynamic data. It allows the agent to send emails, update databases, or check live stock prices—things a static vector database cannot do.
Can I use Tool Calling with open-source models like Llama 3?
Yes. Modern open-source models like Llama 3 and Mistral Large have been fine-tuned for tool calling and are compatible with standard formats. However, for complex multi-step orchestration, frontier models like Claude 4.5 Sonnet or GPT-5 still offer higher reliability in adhering to strict JSON schemas compared to smaller local models.
How do I handle dangerous actions (Human-in-the-Loop)?
For sensitive actions (like delete_repo or transfer_funds), you should not allow the LLM to execute autonomously. Your execution layer should support Human-in-the-Loop (HITL) flows, where the agent prepares the tool call but pauses execution until a human user explicitly approves the action via the UI.
Recommended Blogs
Recommended Blogs
Stay updated.

Stay updated.



