Hi everyone,
I’m facing an issue in Copilot Studio where the agent is summarizing input JSON instead of directly calling a tool, even though the trigger comes from Power Automate.
🔹 My End-to-End Flow
-
SharePoint → File created trigger
-
Power Automate → Get file content (base64)
-
Power Automate → Trigger Copilot agent
-
Copilot should call tool → "Run workflow from JSON"
🔹 What I Send from Power Automate to Copilot
{
"instruction": "Run workflow from JSON",
"fileContentBase64": "<base64 content>",
"fileName": "workflow_schema_2_step.json"
}
🔹 Copilot Instruction
If instruction = "Run workflow from JSON":
- Call the tool "Run workflow from JSON"
- Pass fileContentBase64 and fileName
- Do not summarize
- Do not generate any response
🔹 Expected Behavior
Copilot should:
➡️ Immediately call the tool
➡️ Pass inputs exactly as received
➡️ NOT generate any text response
🔹 Actual Behavior ❌
Instead of calling the tool, Copilot:
-
Decodes/interprets the base64 JSON
-
Parses the workflow
-
Generates a detailed summary
🔹 What I Tried
-
Making instructions stricter
-
Explicit “do not summarize / do not respond”
-
Using clear condition (
instruction = ...) -
Verifying tool schema and parameters
Still, the agent prefers generating a response instead of calling the tool.
❓ Questions
-
How can I force Copilot to directly call a tool when triggered from Power Automate?
-
Is there a way to make Copilot behave like a pure execution agent (no reasoning/output)?
-
Is this limitation related to:
-
Copilot topic design?
-
Tool configuration?
-
Or how Power Automate triggers the agent?
-
🔹 Alternative Approach (Considering)
{
"command": "EXECUTE_TOOL",
"tool": "Run workflow from JSON",
"fileContentBase64": "...",
"fileName": "workflow_schema_2_step.json"
}
Any suggestions or best practices would be really helpful 🙏
Thanks!

Report
All responses (
Answers (