Azure AI Foundry Agent Service: Is There Any Way to Force Sequential Execution of Multiple Tools (Azure AI Search -> Bing Grounding -> Response)?

Mahesh Babaji Sondkar 1 Reputation point
2025-11-12T14:13:58.9466667+00:00

I have an Azure AI Agent with two tools attached (Azure AI Search and Bing Grounding). I need both tools to execute for every query, but cannot find a way to force this behavior consistently.

Environment:

  • Service: Azure AI Agent Service
  • SDK: azure-ai-projects (Python)
  • Model: GPT-4.1
  • Tools: Azure AI Search, Bing Grounding

Business Use Case:

Hybrid search requiring both internal knowledge base (Azure AI Search) and external web (Bing Grounding) results for every query to formulate final response.

What I've Tried:

Explicit system prompt instructions - Added detailed mandatory instructions stating both tools MUST be called sequentially with exact workflow steps.

tool_choice="auto" - Default behavior where the model decides which tools to use. No tool calls were made for the queries tested.

tool_choice={"type": "bing_grounding"}** - ONLY Bing Grounding tool called for the queries tested.

tool_choice={"type": "azure_ai_search"} Surprisingly, BOTH Azure AI Search AND Bing Grounding tools were called for the queries tested. Unclear if this is expected behavior or bug and can be consistently reproducible across different queries or environments.

Questions I have:

  1. Is there any way to force ALL attached tools to execute?
  2. Can I guarantee specific multiple tools are called (e.g., both Azure AI Search AND Bing Grounding)?
  3. Does tool selection override system prompt instructions?
  4. Is functionality like tool_choice="all" or tool_choice=["tool1", "tool2"] planned?
  5. Finally can the agent be forced to call a single tool (either Azure AI Search or Bing Grounding) consistently all the time by setting tool_choice="required" or specifying the tool name with tool_choice={"type": "tool_name"}?
Azure AI services
Azure AI services
A group of Azure services, SDKs, and APIs designed to make apps more intelligent, engaging, and discoverable.
{count} votes

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.