Skip to main content

Tool Approval (HITL)

Some MCP tools do things — query a database, call an external API, trigger an action in another system. Tool approval (human-in-the-loop, or HITL) puts the user in control: before the AI runs such a tool, WizChat pauses and asks the user to approve it. Nothing happens until the user chooses.

The approval prompt

When a tool needs approval, an in-chat dialog appears with the details of what's about to run:

  • Server — which MCP server the tool belongs to
  • Tool — the tool name being called
  • Show arguments — a collapsible view of the exact arguments the AI wants to pass (toggle Show arguments / Hide arguments)

The dialog is titled "Approve action?" and explains, in plain language, that the action needs the user's OK before it runs — allow it to continue, or deny to cancel.

The three choices

ButtonWhat it does
DenyCancels the tool call. The AI does not run it.
Allow onceRuns the tool this one time. The user is asked again next time.
Always allowRuns the tool and remembers the choice, so the user isn't asked again for this tool (see How "Always allow" is remembered).

How "Always allow" is remembered

Always allow persists per tool (not per server) — approving one tool doesn't approve the others on the same server.

The choice is saved to the signed-in user's own preferences, so it only sticks for signed-in users. For anonymous (not-signed-in) users, the Always allow button is hidden for MCP tools, because there's no signed-in account to attach the preference to — those users see only Allow once and Deny.

note

The preference is stored per user. It applies to that user's future conversations with the chatbot; it does not change the approval behavior for other users.

Web search is conversation-scoped

The built-in web search tool uses the same dialog, but its approval works a little differently:

  • The dialog is titled "Allow web search?" and notes that the search will look at public websites outside the chatbot's knowledge base.
  • Always allow here applies only to the current conversation — the dialog states this explicitly. Starting a new conversation asks again.
  • Because it's scoped to the conversation (not to a signed-in account), Always allow for web search is offered to everyone, including anonymous users.

Skip the prompt with Auto-approve

Users who don't want to be asked every time can turn a tool's prompt off from the MCP menu (the plug icon in the chat).

Open the MCP menu, select the server, and each tool row has an Auto checkbox — "Auto-approve: skip confirmation prompts when the agent calls this tool." Tools with auto-approve on show an AUTO badge.

This is the same underlying preference as choosing Always allow in the dialog: it's per tool, saved to the signed-in user's preferences, and can be turned back off from the same checkbox at any time.