MCPInstall

debug-flow

Debug a failed Power Automate flow run. Use when a flow failed, has errors, or the user wants to troubleshoot a run.

Installs
153
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/microsoft/power-platform-skills --skill debug-flow
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads debug-flow automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Debug a Failed Flow Run

You are helping the user debug a failed Power Automate flow run.

Tools

This skill uses the FlowAgent MCP tools. Clients surface them with a client-specific prefix — mcp__flowagent__<tool> (Claude Code) or flowagent-<tool> (Copilot CLI) — so they're referred to by bare name below (e.g. get_run_actions). Use CLI shell commands (local engine build only) for CLI-only operations or when no MCP tools are present.

ToolPurpose
list_flowsFind flows by name (use name param for search)
get_run_historyGet recent runs for a flow
diagnose_runOne-shot: classify failed actions with remediations
get_run_detailsGet details for a specific run
get_run_actionsGet action-level execution trace
get_run_action_contentRetrieve bounded recorded inputs or outputs for one action
get_run_action_repetitionsIteration-level detail for a loop (which iteration failed — pass an action inside the loop)
get_flowGet flow definition for context
get_operation_detailsConfirm the correct action type / parameters
edit_flowApply a surgical fix to one action/parameter
update_flowReplace the whole definition (large rewrites)
run_flowRe-run after fix (use wait: true to see result)
resubmit_run / cancel_runResubmit a fixed run / cancel a stuck one

Steps

  1. Identify the flow and run

    • Parse $ARGUMENTS for flow ID and optional run ID.
    • If no flow ID, call list_flows with name param to search. Ask user to pick if ambiguous.
    • If no run ID, call get_run_history and find the most recent failed run.
    • Present recent runs in a table: Run ID | Status | Start Time | Error
  2. Fast triage with diagnose_run

    • Call diagnose_run for the run — it returns the failed/timed-out actions already classified with a remediation each. Use this as the starting point.
    • For deeper analysis, also fetch (in parallel): get_run_actions (full trace) and get_flow (definition context). For a failed loop, call get_run_action_repetitions on an action inside the loop to find the failing iteration.
    • Repetition results are { action, count, truncated, repetitions }; count is the returned count, not the total. If truncated is true, do not infer absence from the returned subset.
    • When recorded payloads are needed, use get_run_actions with includeSizes: true, then get_run_action_content with the action name and which: "inputs" or "outputs". The default download cap is 256000 bytes; an oversized result is reported rather than dumped. Retrieve only what the diagnosis needs and avoid reproducing sensitive payloads in the report.
  3. Analyze failures

    • Identify actions with status != "Succeeded"
    • Trace the runAfter dependency chain to separate root cause from cascading failures:
      • Root cause: action whose dependencies all Succeeded but it failed
      • Cascading: actions skipped because a dependency failed
    • Report root cause actions with: name, type, error code, error message
  4. Root cause classification

    • Connection errors (AuthorizationFailed, ConnectionNotFound, InvokerConnectionOverrideFailed): Suggest re-auth or fix connection source to Embedded
    • Expression errors (ExpressionEvaluationFailed, InvalidTemplate): Show the expression, explain what's wrong, suggest fix
    • API/External errors (401/403/404/429/500+): Explain the HTTP error, check connector status
    • Parameter errors (WorkflowOperationParametersRuntimeMissingValue): Missing/empty required parameter. Add null guard: @if(empty(...), 'default', ...)
    • Timeout (ActionTimedOut): Suggest retry policy or splitting the operation
    • Type mismatch (InvalidOpenApiConnectionOperationType): Wrong action type. Call get_operation_details to find correct type.
  5. Suggest fix

    • Provide a specific fix with code/expression changes.
    • If the fix is a definition change, offer to apply it with edit_flow (surgical, one action/parameter) — fall back to update_flow only for large rewrites.
  6. Re-test

    • Offer to call run_flow with wait: true to verify the fix works (or resubmit_run to retry the original run with its trigger inputs).
    • Report the result: Succeeded/Failed with action details.

Output Format

Diagnosis Summary

  • Flow: [name] ([ID])
  • Run: [run ID] | [start time] | Status: [status]

Failed Actions

#ActionStatusError CodeError Message

Root Cause

Fix

[Step-by-step fix with code]

FAQ

What does the debug-flow skill do?

Debug a failed Power Automate flow run. Use when a flow failed, has errors, or the user wants to troubleshoot a run.

How do I install debug-flow?

Run npx skills add https://github.com/microsoft/power-platform-skills --skill debug-flow in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/debug-flow/ (personal) or .claude/skills/debug-flow/ (project).

Which AI agents can use debug-flow?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is debug-flow safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains debug-flow?

It is published by microsoft in microsoft/power-platform-skills. It has 153 recorded installs.

More from microsoft/power-platform-skills

View all →

add-sharepoint

microsoft/power-platform-skills

Open the skill to read its SKILL.md instructions.

Official337 installs

create-code-app

microsoft/power-platform-skills

Creates Power Apps code apps using React and Vite. Use when building code apps, scaffolding projects, or deploying to Power Platform.

OfficialFrontend & Design308 installs

add-dataverse

microsoft/power-platform-skills

Open the skill to read its SKILL.md instructions.

Official304 installs

configure-canvas-mcp

microsoft/power-platform-skills

Open the skill to read its SKILL.md instructions.

OfficialAI & Agents296 installs

add-office365

microsoft/power-platform-skills

Open the skill to read its SKILL.md instructions.

Official289 installs

canvas-app

microsoft/power-platform-skills

Open the skill to read its SKILL.md instructions.

Official284 installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.