Skip to main content
Glama
Mr-M-tastic

Power Automate MCP

by Mr-M-tastic

pa-flow-mcp

Free, open MCP server to edit Power Automate cloud flows live from GitHub Copilot, Codex, or Claude Code — like Power Apps external tools, but for flows. Open a flow in the browser, paste its URL, and your AI assistant reads/writes the flow definition, manages connectors, and syncs changes back.

Why

No official "external tools" exist for Power Automate. This MCP gives any AI assistant authenticated access to the same APIs the Designer uses. Free for everyone.

Related MCP server: Alteryx MCP

Features

  • Plugin for Copilot & Claude Code: ships skills (/configure-pa-flow-mcp, /edit-flow, /add-connector-action, /manage-runs, /report-issue) and a flow-builder subagent — same plugin shape as Microsoft's Power Platform skills.

  • Auth: interactive browser login (loopback port), Azure CLI public client, token cached. No az CLI, no app registration.

  • 1250+ connectors: discover live (list_connectors) + curated catalog (SharePoint, Dataverse, SQL, Outlook, Excel, Teams).

  • No connection-reference errors: add_connector_action wires connectionReferences + parameters.$connections automatically.

  • Local ↔ flow sync: pull to .pa-flow/<id>.json, edit, validate, push.

  • Setup wizard: URL + login + assistant (Copilot / Codex / Claude).

  • Clear errors on no access / not found.

Requirements (end user)

  • Node.js 18+ (node -v).

  • A Power Automate license + access to the flow you want to edit.

  • GitHub Copilot CLI/Chat or Claude Code (latest).

  • A browser for one-time sign-in. No admin rights, no Azure CLI.

Install

Clone and build once, then register the local marketplace in your AI tool.

git clone https://github.com/Mr-M-tastic/Power-Automate-MCP && cd pa-flow-mcp
npm install && npm run build

Claude Code — from the repo folder:

/plugin marketplace add .
/plugin install power-automate@pa-flow

The plugin auto-registers the pa-flow MCP server (.mcp.json uses ${CLAUDE_PLUGIN_ROOT}) and loads the skills. Then run /configure-pa-flow-mcp or just say "edit my flow".

GitHub Copilot — copy .vscode/mcp.json into your project (already provided). Reload VS Code; the pa-flow tools and the skills under skills/ are picked up automatically.

B. Manual MCP config

If you don't use the plugin loader, point your assistant at the built server directly:

{ "servers": { "pa-flow": { "command": "node", "args": ["dist/index.js"] } } }

Claude Code / Codex use the mcpServers key and an absolute path to dist/index.js. AGENTS.md / CLAUDE.md are auto-read for usage.

Run it against your flow (step by step)

You don't run commands by hand — you chat with your assistant and it calls the tools.

  1. Open your flow in Power Automate and copy the URL from the address bar: https://make.powerautomate.com/environments/<env>/flows/<flowId>

  2. Start a session — tell the assistant: "Configure session for <paste URL>" → runs configure_session.

  3. Pull the flow"Pull the flow"sync_pull. First time a browser opens — sign in with your work account. The token is cached, so login is one-time. A working copy is written to .pa-flow/<flowId>.json.

  4. Edit — either ask in plain English ("add a SharePoint Get items action"add_connector_action, which auto-wires the connection) or edit .pa-flow/<flowId>.json directly.

  5. Validate & push"validate then push"validate_flow then sync_push.

  6. Refresh the browser tab — your edits are now live in the Designer.

What gets created on your machine

  • Working copy: .pa-flow/<flowId>.json (safe to hand-edit)

  • Cached login: ~/.pa-flow-mcp-token.json

Notes

  • No Azure CLI, admin rights, or app registration needed.

  • If a connector says "create connection in maker portal", make it once in Power Automate, then retry the push.

Optional env vars

PA_CLIENT_ID, PA_PORT, PA_API_BASE, PA_API_VERSION — override defaults if needed.

Skills (slash commands)

Command

Description

/configure-pa-flow-mcp

Connect to a flow from its Designer URL, sign in, pull locally

/edit-flow

Pull → edit (action/condition/trigger) → validate → push

/add-connector-action

Add a SharePoint/Dataverse/SQL/Outlook/Excel/Teams (or any) connector step

/manage-runs

Turn flows on/off, list runs, resubmit, cancel

/report-issue

Open a prefilled GitHub issue with diagnostics

Reference docs the agents read live in references/ (FlowAuthoring.md, Connectors.md); the flow-builder subagent in agents/ applies one approved change at a time.

Tools

configure_session, setup_wizard, list_environments, list_flows, get_flow, update_flow, turn_on/off_flow, list_runs, resubmit_run, cancel_run, list_connectors, list_connections, ensure_connection, add_connector_action, sync_pull, validate_flow, sync_push

This plugin follows the conventions of Microsoft's power-platform-skills (canvas-apps, model-apps, power-pages). It focuses on cloud flows; for solution ALM, environments, and Dataverse use the Power Platform CLI (PAC) and the Power Platform Tools VS Code extension.

License

MIT

Available Tools

18 tools
add_connector_actionC

Add connector action to local flow (wires connectionReferences)

ParametersJSON Schema
NameRequiredDescriptionDefault
inputsYes
connectorYes
operationIdYes
connectionNameYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description must disclose behavioral traits, but it only hints at wiring connectionReferences. It does not state that this is a mutation, what changes to the local flow, any side effects, reversibility, or error behavior. For a write operation this is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with the main action front-loaded and no filler. However, its brevity prioritizes compactness over operational detail, and the parenthetical could be clearer.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, no parameter descriptions, and a nested inputs object, the description is not complete enough for safe invocation. An agent cannot tell what inputs are expected, what happens if the connection does not exist, or what the result of the operation is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain connector, operationId, inputs, or connectionName. The phrase 'wies connectionReferences' weakly hints at connectionName's role, but the shape of inputs and the meaning of operationId are left undocumented, so the description does not compensate for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Add connector action to local flow') with a clear verb and resource, and the parenthetical 'wires connectionReferences' adds useful implementation context. It is clear at a high level but does not explicitly distinguish itself from sibling tools like update_flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when this tool should be used instead of alternatives such as update_flow, ensure_connection, or sync_push. The description does not state prerequisites, such as whether the connection/connector must already exist, leaving usage decisions to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cancel_runC

Cancel a run

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYes
flowIdNo

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. 'Cancel a run' conveys a mutation but does not mention side effects, reversibility, state requirements, or whether the cancellation is destructive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and direct with no filler or redundant wording. It is front-loaded, though it sacrifices useful detail for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a cancel action with no annotations, no output schema, and undocumented parameters, the description is too thin to fully guide invocation. It leaves important questions about required identifiers and behavioral effects unanswered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no meaning to runId or flowId. The agent receives no information about what these parameters represent or which one is required for the cancellation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Cancel') and resource ('a run'), clearly conveying the core operation. It does not explicitly distinguish itself from sibling tools like resubmit_run, so it falls short of full differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use cancel_run versus alternatives such as resubmit_run or list_runs. There is no context describing appropriate scenarios, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

configure_sessionB

Set Power Automate Designer URL; extracts environmentId + flowId; pick assistant

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesDesigner URL from browser
assistantNoCoding assistant

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. It does disclose key internal behavior: extracting environmentId and flowId from the URL and selecting an assistant. It does not disclose persistence, validation behavior, or what the tool returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, front-loaded, and contains no wasted words. The semicolon-separated fragments are efficient, although 'pick assistant' is slightly informal and could be phrased more clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple and the schema covers both parameters, so the description is mostly adequate. However, the lack of an output schema means return behavior is left implicit, and the description does not explain how the extracted environmentId and flowId will be used by later operations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents url and assistant. The description loosely references these inputs but adds little semantic detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action: setting the Power Automator Designer URL, extracting environmentId and flowId, and picking an assistant. It goes beyond a tautology and distinguishes this from the flow/run tools, though it does not explicitly differentiate it from the sibling setup_wizard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use is implied by 'Set Power Automator Designer URL' and 'pick assistant' as an initial configuration step. However, there is no explicit statement of when to use this tool instead of alternatives, and no prerequisites or exclusions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

ensure_connectionA

Check connector exists + has connection; errors clearly if missing/no access

ParametersJSON Schema
NameRequiredDescriptionDefault
connectorYessharepoint|dataverse|sql|outlook|excel|teams or apiName

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of disclosing behavior. It clearly states the tool performs a check and errors clearly on missing or inaccessible connectors. It does not mention return values or whether it has side effects, but for a check tool this is reasonably transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one tight sentence that captures the core action, the checked conditions, and the error behavior. No filler or redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple single-parameter tool with no output schema, the description covers the core behavior and error conditions. It could be more complete with explicit usage context relative to siblings, but the tool is simple enough that the description is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, since the connector parameter lists the valid options. The description adds no further parameter meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Check connector exists + has connection') and the resource it applies to. It hints at error behavior, which helps distinguish it from merely listing connectors or connections, though it does not explicitly name sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose implies a validation/preflight use case, but the description does not explicitly say when to use this tool versus list_connectors, list_connections, or add_connector_action. There is no direct guidance about when it should be called, such as before sync_pull or sync_push.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_flowA

Get full flow definition JSON

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdNo

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It clearly indicates a read operation returning the full flow definition as JSON, which implies no side effects. However, it does not cover error behavior, whether flowId is actually required despite the schema listing zero required parameters, or any permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is six words with no filler, front-loading the verb, resource, and output type. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter getter, the description plus schema is nearly sufficient: it names the resource and return type, and the parameter is self-evident. It could be stronger with an explicit note that flowId selects the flow and a pointer to list_flows for discovery, but there is no output schema or complex behavior requiring further explanation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The sole parameter, flowId, is self-explanatory and consistent with the tool name and description, so the agent can infer it identifies the flow. Although schema description coverage is 0% and the description does not explicitly mention flowId or its expected format, the parameter name carries enough meaning for this simple case.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and a specific resource ('full flow definition'), and states the return format as JSON. This distinguishes it from write tools like update_flow and list-style tools like list_flows, which would return summaries or perform mutations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given for when to use this tool versus siblings such as list_flows, validate_flow, or update_flow. There is no mention of prerequisites, such as first obtaining a flowId from list_flows, and no exclusions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_connectionsA

List existing connections (re-used so no connection-reference errors)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description itself must carry the behavioral burden. It does convey that connections are reused to avoid connection-reference errors, which is useful, and 'List' implies a read-only operation. However, it does not describe return format, pagination, auth requirements, or any failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one short sentence that front-loads the primary action and adds a relevant caveat in parentheses. No unnecessary words or repeated schema information are present.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool, the description is mostly adequate, but it lacks return-value details and fails to disambiguate from list_connectors. Since there is no output schema and no annotations, an agent gets only a minimal picture of what the tool returns and when to prefer it over similar siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the absence of parameter-level detail in the description is not a gap. The baseline of 4 for no parameters applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action and resource: 'List existing connections'. It does not, however, distinguish this tool from the sibling list_connectors, since both cover a similar action with only a one-word difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The parenthetical 're-used so no connection-reference errors' implies this tool should be used when an existing connection reference is needed to prevent errors, but no explicit when/when-not guidance or alternatives are given. The usage context is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_connectorsB

List 1000+ live connectors in env (or curated catalog)

ParametersJSON Schema
NameRequiredDescriptionDefault
curatedNo

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the full burden of behavioral disclosure. 'List' implies a read operation, but the description does not mention authentication, environment semantics, pagination, rate limits, or what 'live' and 'curated' mean operationally. Minimal context beyond the action itself.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or repetition. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one optional boolean and no output schema, the description is minimally adequate: it names the resource, scope, approximate scale, and the one parametter. However, it does not clarify return shape, environment handling, or how it differs from list_connections, which is a notable gap given siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate for the undocumented 'curated' boolean parametter. The phrase '(or curated catalog)' provides a useful hint that the parametter toggles between the full environment list and a curated catalog, but it does not state explicit values or default behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List') and resource ('connectors'), and clarifies scope: 1000+ live connectors in the environment or a curated catalog. It is distinguishable from sibling list_connections because it targets connectors rather than connections, though it does not explicitly name the sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is given about when to choose this tool over siblings like list_connections, ensure_connection, or add_connector_action. The '(or curated catalog)' phrase hint at usage modes, but no alternatives or exclusion conditions are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_environmentsA

List environments you can access

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It does convey a read-only listing operation scoped to accessible environments, but it does not mention response shape, pagination, ordering, or authorization behavior beyond the vague 'you can access.'

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the verb and object with no filler, repetition, or unnecessary detail. Every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only list operation, the description covers the essentials: the action and the scope of returned data. It does not define what an 'environment' is or describe return fields, but those gaps are minor given the tool's simplicity and lack of arguments.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has zero properties and no required parameters, so there is nothing for the description to document. The description confirming a parameterless list operation is sufficient; the baseline for zero-parameter tools applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'List' and names the resource 'environments you can access,' making the operation and scope explicit. It is clearly distinct from sibling list tools like list_connectors and list_flows, which address different resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus any of the 17 siblings, nor does it mention prerequisites, alternatives, or exclusions. An agent has to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_flowsB

List flows in current/given environment

ParametersJSON Schema
NameRequiredDescriptionDefault
environmentIdNo

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'List flows' and gives no detail about whether inactive flows are included, whether results are paginated, what fields are returned, or whether this is a read-only operation. The minimal wording leaves the agent to infer behavior from the name alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a short, single sentence with no filler. It front-loads the core purpose and the environmental scope. It is concise but could be slightly clearer by specifying 'current' vs 'given' as alternatives.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is low complexity with one optional parameter and no output schema, but the description is too thin to be complete. It does not mention pagination, sort order, whether all flow states are returned, or how the 'current' environment is determined. Without annotations or an output schema, more context is needed for reliable selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds some meaning to the environmentId parameter by noting it selects the 'current/given' environment, implying optionality and a default context. However, with schema description coverage at 0%, it does not fully clarify the format, allowed values, or behavior when the parameter is omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List') and a clear resource ('flows'), and adds an environmental scope ('current/given environment'). This distinguishes it from sibling list tools like list_connectors and list_environments, though it does not explicitly contrast with get_flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied by the tool name and the optional environmentId parameter: call this to list flows, optionally scoped to an environment. However, there is no explicit guidance on when to prefer this over get_flow, or whether environmentId is needed when there is a current environment.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_runsC

List flow runs

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdNo

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden, but it only states the action without disclosing return format, pagination, read-only guarantees, or whether the optional flowId filters results. 'List' implies non-mutating behavior, but important operational details are absent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise and front-loaded with no wasted words, but it is under-specified for the tool's needs. This is more brevity than informative conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one undocumented optional parameter and no output schema, the description is too minimal. An agent cannot tell what the response looks like, whether flowId filters or is required in some contexts, or how this relates to the sibling run management tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage and the description does not mention flowId at all. The property name suggests an optional filter by flow, but the description fails to compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'List flow runs' uses a specific verb and resource, so an agent can infer the tool returns flow run records. It is not a tautology and differs from siblings like update_flow or cancel_run, though it does not explicitly distinguish from list_flows.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus list_flows, get_flow, or the other run-related siblings. No conditions, exclusions, or alternative tool mentions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

resubmit_runC

Resubmit a run

ParametersJSON Schema
NameRequiredDescriptionDefault
runIdYes
flowIdNo
triggerYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of explaining behavioral traits. 'Resubmit a run' implies a mutation but does not disclose side effects, idempotency, prerequisites, required run states, or consequences. This is a significant gap for a run-mutating tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is undeniably concise and front-loaded with the action, but it is almost under-specified. It stays this side of pure tautology because 'resubmit' conveys more than the tool name alone, yet there is no useful supporting structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three parameters, no annotations, and no output schema, the description should do far more work. It fails to explain the semantics of trigger and flowId or what a successful resubmission returns. The definition is not complete enough for an agent to invoke the tool reliably.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description adds no parameter information. While param names like runId and trigger hint at their roles, the description does not explain what values are valid, how trigger is used, or when flowId is needed, so the agent cannot properly construct a call.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Resubmit') and resource ('a run'), so the core purpose is clear. It does not explicitly contrast with siblings like cancel_run or list_runs, but the verb itself differentiates the action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to resubmit a run, what conditions should be true beforehand, or when to prefer a sibling such as cancel_run or list_runs. The agent is left entirely to infer usage from the tool name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

setup_wizardB

Guided setup: paste flow URL, confirm login, pick assistant

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the behavioral burden. It does reveal that the tool involves an interactive sequence (paste, confirm, pick), which implies user involvement and likely prompts. However, it does not disclose side effects, whether state is modified, or what happens on completion.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short and front-loaded: 'Guided setup' immediately conveys the type, and the colon-separated steps give the core flow with zero wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter interactive wizard the description is minimally viable: an agent can understand the general flow. But it omits return behavior, potential side effects, and any relationship to sibling setup/connection tools, which matters for correct selection in a larger toolset.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% coverage, so there is nothing to document. The description's mention of 'paste', 'confirm', and 'pick' suggests these are interactive prompts rather than schema parameters, which is helpful context and consistent with the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is specific: it names a guided setup flow and lists the three concrete steps (paste flow URL, confirm login, pick assistant). It is clear enough to identify the tool's function, though it does not explicitly contrast with sibling configuration tools like configure_session or ensure_connection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives. It implies first-time setup through the word 'Guided setup', but never states exclusions, prerequisites, or situations where one of the sibling tools would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sync_pullB

Pull live flow into local .pa-flow copy

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It indicates a sync/copy action but does not state whether the local .pa-flow copy is overwritten, whether network access or authentication is required, or what side effects may occur. 'Pull' hints at direction but leaves important behavioral assumptions unspecified.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one sentence with no wasted words and it front-loads the primary action. It is concise, though the brevity contributes to the lack of behavioral detail rather than being a fully self-sufficient summary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a no-argument tool, the core operation is identified adequately. However, with no annotations and no output schema, an agent still lacks clarity about overwrite behavior, expected return, and how this tool fits into a sync workflow. The description is minimally viable but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema fully documents them. The description adds no parameter details, but none are needed, so the baseline score of 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action ('Pull'), a specific resource ('live flow'), and a destination ('local .pa-flow copy'), which clearly conveys the operation and differentiates it from sync_push. It does not explicitly distinguish this from get_flow, but the 'into local .pa-flow copy' phrasing makes the copy/sync semantics clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use sync_pull versus sync_push, get_flow, or other siblings. The directional verb 'pull' implies the use case, but there is no explicit when-to-use or when-not-to-use statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sync_pushC

Push local flow live; refresh browser tab to see

ParametersJSON Schema
NameRequiredDescriptionDefault
connectionReferencesNo

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does note that the user must refresh the browser tab to see changes, which is useful, but it omits potential overwrites, permissions, failure behavior, and effect on connection references. This is too thin for a mutating operation without annotation safety hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise, front-loaded, and contains no filler. 'Push local flow live' states the core action first, and the refresh note is additional useful behavior. It is not bloated, though it is so brief that it borders on underspecification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there are no annotations, no output schema, and a small but non-trivial optional parameter, the description is not complete enough. It fails to explain the connectionReferences parameter and lacks any routing guidance among several closely related sibling tools such as sync_pull and validate_flow. An agent could call it with low confidence about when it is appropriate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not mention 'connectionReferences' at all. The single parameter is an object with additionalProperties and no semantic explanation, so the agent gets no help understanding what values to provide or whether/how it affects the push.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action and resource: 'Push local flow live.' It clearly conveys that this publishes the local flow to a live environment. However, it does not explicitly distinguish itself from sibling tools like sync_pull beyond the directional 'push' implication.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives like sync_pull, validate_flow, or update_flow. The description implies 'use when you have a local flow to make live,' but it does not state prerequisites, exclusions, or when-not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

turn_off_flowC

Disable flow

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdNo

TDQS

C2.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Disable flow' only restates the action and provides no information about side effects, reversibility, impact on runs, required state, or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and free of filler, but it is under-specified rather than well-structured. Two words do not provide enough substance to compensate for the missing annotations and schema descriptions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating flow-state tool with no annotations and no output schema, this description is too thin. It lacks prerequisites, effects, return value, and error conditions, though the core operation is at least identifiable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not mention flowId, and schema description coverage is 0%. The property name 'flowId' is self-explanatory and there is only one parameter, but nothing clarifies requiredness, format, or how the ID should be obtained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb ('Disable') and resource ('flow'), making the core operation unambiguous. It earns a 4 rather than 5 because it does not explicitly differentiate itself from siblings like update_flow or turn_on_flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives such as update_flow, validate_flow, or turn_on_flow. There are no prerequisites, conditions, or exclusion cases mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

turn_on_flowD

Enable flow

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdNo

TDQS

D1.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Enable flow' reveals no state changes, side effects, persistence semantics, idempotency, or whether the flow must already exist. This is effectively no transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two words, which is under-specification rather than effective conciseness. It does not earn its place because it adds no meaning beyond the tool name and leaves the agent without actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even though the tool has only one parameter and no output schema, the description is far from complete. It fails to explain what enabling a flow means, how flowId should be supplied, what prerequisites exist, or what outcome the agent should expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema defines only a flowId string with no description and no required flag, and schema description coverage is 0%. The description does not mention the parameter at all, failing to clarify what flowId refers to, where to obtain valid values, or why it is optional.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Enable flow' is a tautology that simply restates the tool name 'turn_on_flow'. It provides no specific definition of what a flow is, what enabling involves, or how this tool differs from siblings like turn_off_flow or validate_flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as turn_off_flow, update_flow, or validate_flow. The description gives no context about prerequisites, sequencing with other flow operations, or situations where this tool should or should not be used.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_flowC

Write modified flow definition (refresh browser tab to see)

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdNo
definitionNo

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of disclosing behavioral traits. It notes that changes require a browser refresh to appear, which is a useful side-effect hint, but it does not explain overwrite semantics, validation behavior, error cases, or whether the definition is fully replaced.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, front-loaded, and contains no fluf. The parenthetical adds one relevant behavioral clue. It is concise, though arguably too terse for the complexity of the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no annotations, and minimal descriptions for both parameters, the description does not provide enough context for an agent to call the tool confidently. Missing details include what happens after writing, whether flowId is required in practice, and what a successful result looks like.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. 'Modified flow definition' hints that the `definition` parameter holds the modified flow object, but it does not explain `flowId`, requiredness, or the expected structure of `definition`. This is only partial compensation for the missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Write') and resource ('flow definition'), making the core action clear. It distinguishes itself from read-only siblings like get_flow and validate_flow, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus siblings such as validate_flow, sync_push, or get_flow. An agent must infer that this is for persisting edited flow definitions, with no exclusions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

validate_flowB

Validate local flow before push

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden of behavioral disclosure. It only says 'validate' without stating whether the operation is read-only, what it checks, whether it modifies anything, or what success/failure looks like. This leaves a significant transparency gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single five-word sentence with no filler. It front-loads the action and target and every word contributes meaningful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameter-free validation tool, the description conveys the core purpose and timing, but with no output schema and no annotations it does not explain what the tool returns or what validates. It is minimally complete but lacks behavioral closure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema description coverage is 100%, so there are no parameter semantics for the description to clarify. A baseline of 4 is appropriate since no additional argument documentation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb, 'validate,' targets a specific resource, 'local flow,' and adds temporal context, 'before push.' This distinguishes it from siblings like get_flow, update_flow, and sync_push, though it does not explicitly name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Before push' gives clear timing context and implies the tool should be used prior to sync_push, but it does not explicitly state when to use this tool versus alternatives or when not to use it. No exclusions or alternative tool names are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.7/5.0
Disambiguation3/5

Most tools target distinct resources, but there are overlapping boundaries: setup_wizard and configure_session both handle setup, sync_pull and get_flow both retrieve flow data, and update_flow and sync_push both modify flows. The descriptions help clarify intent, but the overlaps could still cause an agent to select the wrong tool.

Naming Consistency4/5

The naming is largely consistent, using snake_case with imperative verb_noun patterns like list_flows, get_flow, update_flow, turn_on_flow, and cancel_run. A few names like setup_wizard and sync_pull/sync_push deviate slightly from the dominant pattern, but the style is readable and predictable overall.

Tool Count3/5

With 18 tools, the server sits in the borderline range. The count is justified by the broad Power Automate domain covering setup, connectors, connections, flow lifecycle, and runs, but includes some possible redundancy such as setup_wizard vs configure_session and sync_pull vs get_flow.

Completeness3/5

The tool surface covers configuration, connectors, flow retrieval/update, enabling/disabling, and run management, but lacks obvious lifecycle operations like create_flow and delete_flow. It also doesn't provide detailed run retrieval, so some workflows will require workarounds.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to interact with Power BI datasets through natural language, allowing users to query data, generate DAX, and get insights without leaving their AI assistant.
    120
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to read, analyze, edit, and create Alteryx workflows, including summarizing workflows, finding tools, editing configurations, updating SQL, managing connections, and building new workflows programmatically.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients to manage and troubleshoot Power Automate cloud flows, including listing environments, flows, and runs, with optional write capabilities for triggering, enabling, disabling, and deleting flows.
    62
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mr-M-tastic/Power-Automate-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server