Copilot Studio Friction

Get notified when this record changes

One email when the status or the fix changes — double opt-in, no tracking, unsubscribe in every email.

Agent picks the wrong tool or fills tool inputs incorrectly

Mitigatedsince 8 July 2026

Last verified

Details & related

Assessment

Confidence
Confirmed officialConfirmed by Microsoft documentation or an official statement.
Severity
Degrading
Typical time lost
Hours

Identification

OrchestrationToolsAll channels

Verification & changes

  1. Verified

    Doc check by human: Official orchestration FAQ, tools doc and generative actions doc re-read during seed migration; limits and metadata-driven selection still documented.

  2. Change

    Provisionally approved by the Product Owner; external LLM quality review pending.

  3. Change

    Initial record created from the seed dossier (migration wave 1).

Are you in the right place?

  • Your agent runs with generative orchestration and calls a tool you did not expect.
  • Or it picks the wrong topic or the wrong connected agent for a request.
  • Or it calls the right tool but fills its inputs with wrong or invented values.
  • Or it asks the user for a value the conversation already contains.
  • The same request sometimes works and sometimes fails.

If instead your flow never appears in the tool list → see Flow missing as a tool. If instead the agent leaves a topic mid-question → see Topic exits mid-question. If instead routing broke right after "End all topics" → see Wrong topic after End all topics. If instead an MCP tool is not selectable in a "Call a tool" node → separate limitation (record planned).

What's happening

Your agent does not read minds. The orchestrator builds its plan from metadata: the names, descriptions, inputs, and outputs of every tool, topic, and agent. Microsoft's FAQ says errors occur when the agent selects the wrong tool, topic, or agent (documented as of 2026-07-08). Input filling works the same way. The default setting "Dynamically fill with AI" guesses each value from the conversation. Weak or missing descriptions turn both steps into a lottery. Picture a dispatcher hiring from a stack of one-line job ads: the match quality follows the ad quality. Too many tools makes it worse. The hard limit is 128 tools; Microsoft recommends 25–30 for reliable selection (documented as of 2026-07-08).

For technicians

Selection is purely metadata-driven, using the last 10 conversation turns; there is no runtime feedback loop. Generative orchestration currently plans in English only (documented as of 2026-07-08). When you switch from classic to generative orchestration, Copilot Studio auto-generates descriptions from your old trigger phrases. These auto-descriptions are a silent failure source, because nobody ever reads them. File inputs do not work with "Dynamically fill with AI"; they require "Custom value" with a Power Fx formula. Child agents allow per-input control: behavior on "no entity found", explicit prompting, and up to two reprompts.

How to fix it

Solution 1

Official workaround

Rewrite every description like function documentation

  1. Open your agent in Copilot Studio.
  2. Go to the agent's "Tools" page.
  3. Open the first tool and read its description as if you had never seen the tool.
  4. Rewrite it: what the tool does, when to use it, and when not to.
  5. Describe every input: meaning, expected format, one example value.

✅ You should now see: descriptions a new colleague could act on without asking you anything.

  1. Repeat this for every tool, topic, and connected agent the orchestrator can choose from.
  2. If you ever switched from classic orchestration, rework every auto-generated description — they were built from old trigger phrases.
  3. Publish the agent.

Solution 2

Official workaround

Reduce the number of tools

  1. Count the tools attached to your agent.
  2. Compare the count with Microsoft's guidance: 25–30 tools at most, hard limit 128 (documented as of 2026-07-08).
  3. Remove or consolidate tools the agent rarely needs.
  4. Delete tools from the agent's "Tools" page — the central tools page cannot delete them.

✅ You should now see: a shorter tool list and more consistent tool choices.

Solution 3

Official workaround

Pin misfilled inputs with "Customize" or a custom value

  1. Open the tool whose inputs come out wrong.
  2. Find the affected input; its "Fill using" setting defaults to "Dynamically fill with AI".
  3. Select "Customize" to set entity mapping ("Identify as"), validation, and retry behavior.
  4. If the value must never be guessed, switch the input to "Custom value" and set it explicitly.
  5. For file inputs, always use "Custom value" with a Power Fx formula — AI filling cannot handle files.

✅ You should now see: the input arriving at the tool with the value you pinned.

Check that it worked

Replay the three requests that picked the wrong tool before, each in a fresh conversation. Expected: the agent picks the intended tool and fills its inputs from your wording. Selection is probabilistic, so repeat each request a few times before you call it fixed.

If it didn't work

  • Your channel still runs the old version. Description changes only act after publishing. See Teams answers with an old version — propagation delay is suspect number one.
  • Two tools still overlap. If two descriptions promise the same job, the planner keeps alternating. Sharpen the "when to use" sentences until they exclude each other.
  • The tool pool is still too large. Split the agent, or move rare tools behind a connected agent.
  • You test in German. The planner works in English only (documented as of 2026-07-08). Test with English requests to separate language effects from description quality.

Prevent it next time

  • Make description review a release gate: no publish while any tool, topic, or agent description is stale.
  • Treat 25–30 tools as your design budget, not the 128 hard limit.
  • Rework auto-generated descriptions immediately after every switch from classic to generative orchestration.

Evidence

  • Official documentationlearn.microsoft.com

    The orchestration FAQ states plans are built from names and descriptions, and errors occur when the agent selects the wrong tool, topic, or agent.

  • Official documentationlearn.microsoft.com

    The tools documentation sets a hard limit of 128 tools and recommends no more than 25-30 tools per agent for best performance.

  • Official documentationlearn.microsoft.com

    The generative orchestration doc confirms English-only planning and that default descriptions are auto-generated from existing trigger phrases.