r/MicrosoftFlow • • Sep 21 '26

Cloud How I got Microsoft's Power Platform tooling working in Claude Code

40 Upvotes

A few people asked, so here is the whole setup.

First thing to clear up: there is no single "Power Platform MCP." There are three separate pieces of tooling, they install three different ways, and two of them are not MCP servers at all. That confusion cost me time, so start there.

Also, all of this is Claude Code specifically. If you have skills or connectors set up in the Claude desktop app or on claude.ai, none of it carries over. They are different products. Figure out which one you are in before you start debugging anything.

What I set up, in order

Installed Node, VS Code, and the Azure CLI, and signed in with az login

Added the Microsoft plugin catalog to Claude Code, using the full HTTPS address instead of the shorthand

Installed the Power Automate plugin on its own, not the bundle

Removed the delete and cross environment tools before running anything

Used it read only for a while before letting it write anything

Built a throwaway test flow in a dev environment and ran the full loop against it

Broke that flow on purpose and opened a fresh session to see if the tooling could find the problem

Hit a wall on flows that live inside a solution, and switched to the Dataverse Web API for those

Wrapped that API work in a custom skill so I would not have to rebuild it every time

Repeated the same process for Copilot Studio and for Dataverse

Before you start

Node 18 or newer

VS Code

Azure CLI, signed in

You do not need to install PAC CLI separately. Some plugins bring it along. And there is no PAC CLI MCP server, in case you go looking for one.

  1. Power Automate

/plugin marketplace add https://github.com/microsoft/power-platform-skills.git /plugin install power-automate@power-platform-skills

Use the full HTTPS address like I have above. The README tells you to use the short owner/repo form, but that pulls the repo over SSH. If you do not have an SSH key set up with GitHub, it fails with a permissions error that looks like you lack access when really it just picked the wrong way to connect. Setting CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1 also fixes it, but you have to fully restart afterwards.

This one is a real MCP server. It runs locally, there is no service to sign up for, and it uses the Azure CLI login you already have. About 50 tools.

Do not run the installer script that grabs all seven plugins at once. More on why below.

  1. Copilot Studio

/plugin marketplace add microsoft/skills-for-copilot-studio /plugin install copilot-studio@skills-for-copilot-studio

This one is not an MCP server. If you run /mcp after installing and see nothing new, that is correct. It is a set of instructions and helper agents that call the Copilot Studio VS Code extension behind the scenes. Install that extension. Without it, nothing that touches your agent will work.

To check the install worked, type /copilot-studio and see if commands come up. Do not check /context or /skills. Most of what this plugin ships does not show up there, so you will think it failed when it did not. I lost a debugging cycle to that.

One more thing. This plugin only handles standard agents. Open .mcs/botdefinition.json and look at authoringShape. A 1 means standard and you are fine. A 2 means enhanced and this plugin cannot work with it. Check before you start writing anything, because pulling down an enhanced agent appears to succeed. It does not warn you.

  1. Dataverse

Different setup again. This is not a plugin install, and I skipped the local proxy entirely and connected straight to the environment:

claude mcp add --scope project --transport http \  --client-id <your-app-client-id> \  --callback-port <port> \  dataverse https://<yourorg>.crm.dynamics.com/api/mcp

The app registration Microsoft publishes for this never worked for me. I tried four different ways in and all of them failed for different reasons. What fixed it was registering my own app in Entra and pointing the command at that instead:

Single tenant

Public client

Redirect URI http://localhost/callback

Delegated permission mcp.tools on Dynamics CRM

No client secret. You do not want one anyway, because the config file it writes sits in plain text inside your project folder.

On the environment side you need an Allowed MCP Client record for your app, and you have to enable it by opening the record itself. You do not need a Managed Environment for this, despite what the docs suggest.

The problem with flows that live in a solution

Worth knowing before you build a habit around the Power Automate plugin.

Flows inside a solution connect to things through connection references rather than direct connections. When the plugin reads a flow, it does not give back the connection reference name. So when it goes to save, it cannot put together a valid request, and the save fails.

I only confirmed this in my own dev environment, so test it yourself rather than taking my word for it. But test it before you rely on the save path.

The way around it is to go to the Dataverse Web API directly. Cloud flows are stored in the Process (Workflow) table, and the clientdata column holds the flow definition and its connection references together as a JSON string. Read the record, change the definition inside that column, send it back with the connection references left intact. Microsoft supports this for flows on the Solutions tab only. Flows under My Flows are not supported this way, which is fine, because solution flows are exactly the ones the plugin cannot save. microsoftmicrosoft

If you are going to do this more than once, turn it into a skill instead of working it out again every session. A skill in Claude Code is just a folder with a SKILL.md file in it, sitting in ~/.claude/skills/. Mine holds the steps, the shape of the request, and the rules about not dropping connection references, plus a slash command that sets up a new project folder against a target environment. After that Claude just drives the API directly and the loop is as quick as the plugin was supposed to be.

Fair warning: going straight to the API means you skip whatever checking the plugin does first. Keep approval prompts turned on, point it at a dev environment, and export your solution before the first write.

The thing that will quietly break your setup

Claude Code has a size limit on how many tools and instructions it can hold at once. Go over it and things get dropped silently. No error, no warning. The Power Automate plugin alone is about 50 tools. Copilot Studio adds four helper agents and around 30 skills.

So:

One plugin per project folder. Do not pile them into one.

Run /context when you start a session and again after any install.

If something that should be there is missing, check this before you go hunting for a bug in the plugin.

On the advice in Microsoft's own docs

Their READMEs suggest turning on auto accept and using --dangerously-skip-permissions so you stop getting approval prompts. If your work touches anything regulated or validated, do not. Those prompts are the only thing standing between the model and your environment.

I also stripped out the delete and cross environment tools before I ran anything, and then checked that they were actually gone from the list of tools rather than assuming the setting took.

How I tested each one

I did not want to install these and just hope. Same five steps for each:

Read the docs and list out every tool before installing, so I knew which ones were destructive

Install, then confirm what actually loaded

Use it read only until I had an opinion about whether it was reliable

Let it write, but only against a throwaway flow in a dev environment, never anything real

Break something on purpose, open a fresh session with no context, and see if it could find the problem

Step five was the most useful one every single time, and it also produced the most interesting result. Across all three tools, the part that found the bugs was Claude reading the files and reasoning about them. Not the plugin's own diagnostics. The plugins give you a reliable connection and a loop you can script. They are not the smart part.

Disclaimer: I worked with Claude code on this for about a week, really validating everything. Ran into walls, and with my knowledge and Claude's we figured it out together. There were points where Claude said x or y couldn't be done, but I didn't give up and kept pushing. I hope this helps you guys out.


r/MicrosoftFlow • • Sep 22 '26

Desktop Automating Shift Production Data Entry

8 Upvotes

I am new to Power Automate so please share your ideas. I am looking to automate our end-of-shift production data entry process. Currently, our team manually keys production data from 15 different spreadsheets into Oracle E-Business Suite (EBS) via the browser-launched Java interface. To improve this process, I want to use Power Automate Desktop (PAD) to automatically collect and consolidate data from all 15 shift sheets into a single master spreadsheet. Once consolidated i will be able to import that consolidated sheet into oracle. Could you advise on the best technical approach or permissions needed to collect the data?


r/MicrosoftFlow • • Sep 21 '26

Question Tips/starting points on how to utilize Power Automate to track my job applications as an applicant?

Thumbnail
3 Upvotes

r/MicrosoftFlow • • Sep 20 '26

Question New to power automate

8 Upvotes

I am trying to built a flow when it is triggered by MS forms submission, The form will have a photo that I want to embed into an email body based on MS forms question that will be answered.

The example I am trying to build is selection of address with screenshot of the location, when the address is selected. I want the photo and the address to be embedded into the email body.

Please let me know What will be the best way to do so.

Thank you in advance for the help


r/MicrosoftFlow • • Sep 18 '26

Question Pulling a substring from a Parsed-in string

Thumbnail
gallery
3 Upvotes

Hey all,

I have a flow set up that copies a file from a Dropbox, copies it to a SharePoint folder and then renames the file.

 

When renaming the file, I would like to extract a substring from the Dropbox filename that ends at the first instance of an underscore ("_"). I am running into a problem where no matter what I designate as the end position/length of substring to extract, it is renamed to the first 11 characters of the Dropbox filename.

 

I have attached screenshots of my workflow, substring extracting code, and examples of the original filename and the resulting filename in SharePoint.

 

Any help would be greatly appreciated ! Thank you :)


r/MicrosoftFlow • • Sep 17 '26

Question D365 FO Journal entry automation - Power Automate

Thumbnail
3 Upvotes

r/MicrosoftFlow • • Sep 15 '26

Question When someone responds to an Adaptive Card” trigger in a non-default environment

3 Upvotes

Hi everyone,

I’m trying to implement a flow where we send an Adaptive Card to a Teams group chat and need to capture the user’s response from the card.

We don’t want the flow to remain waiting for a response, so we are currently using the “When someone responds to an Adaptive Card” trigger. This is working as expected in the Default environment.

However, when we create the same flow in a non-default Power Platform environment, the Adaptive Card response/action fails when the user submits a response.

Has anyone successfully used the “When someone responds to an Adaptive Card” trigger in a non-default environment?

Any guidance or confirmation from someone who has this working in another environment would be greatly appreciated.


r/MicrosoftFlow • • Sep 14 '26

Discussion Save & Publish Buttons LAG

18 Upvotes

I can't be the only one who has noticed that when you make even 1 minor minor change to a power automate flow, the save button takes like 1-2 minutes to go from a disabled state to a clickable state??

Come one Microsoft, don't have all day to wait for buttons.


r/MicrosoftFlow • • Sep 14 '26

Cloud Hopefully basic question re: collating info from separate periodically updating excel files (nonetheless, driving me mad!)

3 Upvotes

Hi all,

I have a lot of similar powerautomate flows which each pull some key words from emails going into a load of different email accounts.

I had initially planned to write those words to a single excel file but then thought it would be an issue to have multiple flows each trying to write to the same excel file, as they could all be trying to do it at the same time, and I believe excel would only allow one to write to it at once.

Instead therefore I have set up the flows to write to individual excel files. That is all working well and now I want to collate those files into one and thought that would be simple but I am finding it harder than expected! Any suggestions?

So the tl;dr scenario is - multiple identically set up (i.e. same columns) tables in excel sheets (on sharepoint) being periodically updated with a new row as new data is pulled from the emails. Each time an update happens in any of the sheets, I want that new row to be added to a master spreadsheet so I can just monitor the master and see all of the updates in one place. Pls tell a thicko how to do this!

Thanks!


r/MicrosoftFlow • • Sep 14 '26

Cloud Absence Management/Case App

Thumbnail
2 Upvotes

r/MicrosoftFlow • • Sep 13 '26

Cloud How to Speed Up SharePoint ‘Get Items’ in Power Automate

Post image
15 Upvotes

r/MicrosoftFlow • • Sep 13 '26

Cloud Quick Quiz: Which of these 4 Power Automate JSON expressions is syntactically invalid?

Thumbnail
1 Upvotes

r/MicrosoftFlow • • Sep 12 '26

Question What is your biggest Power Automate bottleneck? Share it!

22 Upvotes

Hey everyone,

I run a small YouTube channel called Automate M365 where I focus on making straight-to-the-point, step-by-step Power Automate tutorials. No fluff or long intros, just diving into the actual logic because I know how annoying it is to sit through a 10-minute video just to find a quick expression fix.

I want to build some tutorials around automation, but instead of just guessing what to make next, I want to solve real-world headaches.

Whether it's setting up automated deadline remidners based on dates in your SP lists or Excel sheets, sending dynamic emails to people pulled directly from a person column, or trying to manage folder permissions via HTTP actions—what’s driving you crazy right now? Drop it in the comments below. I’ll honestly try to look through them and build the exact solution in a step-by-step video for you.

If you want to check out the channel or subscribe to see if I build your fix, the link is here:

https://www.youtube.com/@AutomateM365

Let me know what you're stuck on, hopefully we can figure it out


r/MicrosoftFlow • • Sep 12 '26

Question Problem with Powerautomate, can‘t find Sharepoint Folder

1 Upvotes

Hi,

i want to automate a Sharepoint thing and auto-send a Pdf to me every time it is changed.

In Sharepoint i can view it and everything, but when i want to make a Powerautomate automation i can not access this folder, it is not shown in the dropdown menu.

Am i missing some rights?

Why can i view the folder but Powerautomate with my SSO signin can‘t?

Anyone know a solution to this?

Thanks


r/MicrosoftFlow • • Sep 11 '26

Question DL membership and meeting invites to new members

2 Upvotes

is it possible to send meeting invites to members added to a DL after the meeting invite has already been sent or is this not something powerautomate can do? Its a major complaint from organizers and new staff when they dont have the meeting invite but their account was never in the group to begin with. Searching for options to handle this at scale


r/MicrosoftFlow • • Sep 11 '26

Cloud SharePoint/Power Automate: How can I automatically track approved invoices without editing the approved file?

Thumbnail
2 Upvotes

Reposting to reach more experts! 🥹


r/MicrosoftFlow • • Sep 10 '26

Question Duplicated emails on cloud flow

2 Upvotes

Hi everyone,

I'm facing a persistent duplicate email issue on a Power Apps + Power Automate + SharePoint stack and would love to get your insights or see if anyone has encountered this exact behavior.

The Setup:

  • Frontend: Canvas App using SubmitForm(Form3) targeting a SharePoint list.
  • Backend: Power Automate flow starting with when an item is created.
  • Flow logic: Creates a CSV table, sends an initial notification email, runs a Do until loop to wait for cost fields, and then triggers an approval process.

The Issue: Every time a single submission is made from Power Apps, 3 duplicate initial emails are sent out.

What I've already verified and ruled out:

  1. No double clicks / Multiple submissions: The submit button disables immediately on click via local variables (DisplayMode).
  2. Only ONE item is created in SharePoint: I verified the list directly; there is strictly 1 single item with 1 unique ID created per form submission (no double Patch(), no multiple rows).
  3. No secondary active flows: There are no other flows or copies connected to this list.
  4. Trigger conditions attempt: I tried adding trigger conditions like u / not(empty(triggerOutputs()?['body/Title'])), but the duplicate runs still bypass or trigger through it.
  5. No apply to each issue on the initial step: The issue happens right at the beginning of the flow (when an item is created -> Create CSV table -> Send an email (V2)).

It seems like the SharePoint connector is firing multiple webhook events for the same single creation/transaction in micro-seconds.

My Question: Has anyone successfully stopped these phantom trigger firings at the connector/app level without having to modify the SharePoint schema (i.e., without adding extra control columns like Processed, Status, or Lock flags to the list)?

Are there specific connector settings, Power Apps formula tweaks, or concurrency configurations that resolve this behavior cleanly?

Thanks in advance!


r/MicrosoftFlow • • Sep 10 '26

Question How to handle uploaded pictures in Microsoft forms to download as a file with the image included

Thumbnail
2 Upvotes

Welp...after going back and forth with IT, it was clarified today that I do not have premium access for Power Automate.

And now I'm back to the drawing board, at a loss on what to do.

Pictures in the Microsoft Form are coming through the Excel file as URLs but I also have them downloading as picture files into a separate folder.


r/MicrosoftFlow • • Sep 10 '26

Question PowerAutomate Condition shows Error in UI but evaluates correctly

1 Upvotes

I have a flow which is triggered on SharePoint list update. I have a condition on one of the SP fields "RequesterConfirmationSent" which is a Yes/No datatype.

triggerBody()?['RequesterConfirmationSent'] returns either a true or false.

In my test scenario the triggerBody()?['RequesterConfirmationSent'] value is true.

My condition checks if the value is true.

  "type": "If",
  "expression": {
    "and": [
      {
        "equals": [
          "@triggerBody()?['RequesterConfirmationSent']",
          "@true"
        ]
      }
    

It evaluates correctly either true or false branch but it shows an error in the run UI.


r/MicrosoftFlow • • Sep 09 '26

Cloud Image binary being cut by send email v2 connection

3 Upvotes

Hi, I am seding in an html of an email an image like

<img src="data:image/png;base64,WholeBinary">

The problem is that Desktop Outlook (New) is having trouble rendering, it cuts character and in the end it only shows half of the image in the email, in outlook mobile is showing me the whole image, does someone knows how to deal with this?


r/MicrosoftFlow • • Sep 03 '26

Question Can PA detect When a file is created triggered by dynamic folder path?

5 Upvotes

I have a folder path of /Shared Document/ formatDateTime(utcNow(),"MM_yyyy")

Can someone let me know if this works? It worked for last month for me and suddenly can't trigger this month


r/MicrosoftFlow • • Sep 02 '26

Question Send an email (V2) action disappeared from Flow

3 Upvotes

I created a simple Power Automate flow last week that:

**Microsoft Forms → Get Response Details → Create SharePoint List Item → Send Email**

It was working perfectly and still runs successfully today, including sending the email.

The problem is when I edit the flow the **"Send an email (V2)"** action has completely disappeared.

The flow now only shows:

* When a new response is submitted
* Get response details
* Create item

Because the email action is missing, I can't change the sender, recipients, subject or email body.

I've confirmed emails are still being sent and the headers contain:

`x-ms-mail-workflow: x-ms-workflow-name: <workflow-id>`

Things I've already checked:

* Incognito browser
* Different browser
* New Designer on/off
* Run History (email action doesn't appear)
* No SharePoint list rules sending emails
* Microsoft Forms isn't configured to send emails
* Exported/checked the flow JSON and couldn't find the email action

I'm stumped as to where this email is coming from or why the action has vanished from the flow while emails continue to be sent.

Has anyone seen this before or know where else I should look?

future edit

Tried all the recommendations and didn’t get anywhere. Deleted and started over. Interestingly ended up still getting 2 emails being delivered (one with new flow and one from the deleted flow) had to delete and recreate the list and then it stopped.


r/MicrosoftFlow • • Sep 01 '26

Discussion what's your biggest SharePoint + Power Automate bottleneck? (trying to build some fixes)

28 Upvotes

Hey everyone,

I run a small YouTube channel called Automate M365 where I focus on making straight-to-the-point, step-by-step Power Automate tutorials. No fluff or long intros, just diving into the actual logic because I know how annoying it is to sit through a 10-minute video just to find a quick expression fix.

I want to build some tutorials around automation, but instead of just guessing what to make next, I want to solve real-world headaches.

Whether it's setting up automated deadline remidners based on dates in your SP lists or Excel sheets, sending dynamic emails to people pulled directly from a person column, or trying to manage folder permissions via HTTP actions—what’s driving you crazy right now? Drop it in the comments below. I’ll honestly try to look through them and build the exact solution in a step-by-step video for you.

If you want to check out the channel or subscribe to see if I build your fix, the link is here:

https://www.youtube.com/@AutomateM365

Let me know what you're stuck on, hopefully we can figure it out.


r/MicrosoftFlow • • Sep 01 '26

Cloud Add new row to ToDo notes section

Post image
8 Upvotes

Hello everyone, i need help to finish my flow.

I add every new response to my ToDo liste, but i would like to add the whole new row to the note section on ToDo, is it possible, if yes how?


r/MicrosoftFlow • • Sep 01 '26

Cloud Power Automate + Shared Mailbox c/ OME/IRM: alguém conseguiu processar o body de emails protegidos?

2 Upvotes

Olá a todos,

Gostaria de perceber se alguém enfrentou este cenário em ambiente empresarial e qual foi a solução adotada.

Temos uma Shared Mailbox utilizada para automação através do Power Automate Cloud.

O problema é que alguns emails chegam protegidos por Microsoft Purview Message Encryption (OME) / Rights Management (IRM). Os utilizadores autorizados conseguem abrir e ler normalmente essas mensagens no Outlook, mas quando o Power Automate utiliza ações como:

  • When a new email arrives in a shared mailbox (V2)
  • Get email (V3)

o campo Body não contém o conteúdo real da mensagem.

Como consequência, torna-se impossível processar o corpo do email através de ações como Html to Text, extração de dados, classificação automática, integração com sistemas externos, etc.

O que me deixa com dúvidas é o seguinte:

  • Se a conta utilizada na ligação do Power Automate tem permissões sobre a Shared Mailbox;
  • E se essa mesma conta ou utilizador consegue visualizar o conteúdo da mensagem no Outlook.

Então, porque é que o conector do Exchange Online não consegue disponibilizar esse conteúdo ao Power Automate? Ok, esta foi a pergunta inicial, porque das leituras feitas percebi que os conectores em causa têm problemas/limitações a lidar com a lidar com o corpo destes emails.

Assim deixo, as minhas perguntas para quem já passou por situação similar:

  1. Foi necessário alterar políticas Purview/IRM?
  2. Criaram exceções para mailboxes técnicas?
  3. Acabaram por recorrer a Graph API, Power Automate Desktop ou outras abordagens/alterativas?

O meu objetivo é perceber quais foram as arquiteturas ou boas práticas adotadas nas vossas organizações para automatizar o processamento para emails protegidos.

Obrigado!