sbroenne/mcp-server-power-automate
If you are the rightful owner of mcp-server-power-automate and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
This project is a Model Context Protocol (MCP) server designed to integrate AI assistants with Power Automate Desktop for automating Windows UI operations.
MCP Server for Power Automate Desktop
⚠️ BETA VERSION - This project is in early development. Features may change and bugs are expected.
Disclaimer: This is an independent, community-driven project and is not affiliated with, endorsed by, or supported by Microsoft Corporation. "Power Automate" and "Power Automate Desktop" are trademarks of Microsoft Corporation.
A Model Context Protocol (MCP) server that enables AI assistants like GitHub Copilot to execute Power Automate Desktop flows and automate Windows UI operations - directly from chat.
Features
- Execute PAD Flows: Run Power Automate Desktop flows by name
- Discover Flows: List all available flows on your system
- Window Management: Focus, arrange, and control window layouts
- Keyboard Automation: Send keystrokes to any Windows application
- Status Monitoring: Check Power Automate Desktop status
Tools
pad_flow - Power Automate Desktop Flow Control
Execute and manage Power Automate Desktop flows.
| Action | Description | Parameters |
|---|---|---|
run | Execute a flow by name | flowName (required) |
list | List all available flows | None |
status | Check if PAD is running | None |
Example prompts:
- "Run my 'Data Entry Automation' flow"
- "List all my Power Automate flows"
- "Check if Power Automate Desktop is running"
ui_automation - Windows UI Automation
Control Windows applications and window layouts.
| Action | Description | Parameters |
|---|---|---|
focus | Bring a window to foreground | windowTitle (partial match) |
arrange | Set window layout | layout: left-half, right-half, maximize, restore |
list-windows | List all open windows | None |
send-keys | Send keystrokes to window | keys (SendKeys syntax), targetWindow (optional) |
Example prompts:
- "Focus the Excel window"
- "Arrange windows with VS Code on the left half"
- "List all open windows"
- "Send Alt+F4 to close the current window"
Requirements
- Windows: Windows 10 or Windows 11
- .NET Runtime: .NET 8.0 or later (included with Power Automate Desktop)
- Power Automate Desktop: Required for flow execution features
- VS Code: Visual Studio Code 1.96.0 or later (for extension)
Installation
VS Code Extension (Recommended)
-
Install from the VS Code Marketplace (when published):
code --install-extension sbroenne.mcp-server-power-automate-desktop -
Or install from local
.vsixfile:code --install-extension mcp-server-power-automate-desktop-0.1.0.vsix -
Reload VS Code - the extension will automatically:
- Start the MCP server
- Register tools with GitHub Copilot
- Enable
pad_flowandui_automationin chat
Manual Configuration (Advanced)
If not using the extension, configure the MCP server manually in your GitHub Copilot settings:
{
"github.copilot.chat.mcp.servers": {
"power-automate": {
"command": "dotnet",
"args": ["run", "--project", "C:/path/to/mcp-server-power-automate/src/PowerAutomateMcp"]
}
}
}
Usage Examples
Automate Data Entry
@workspace Run my "Customer Data Import" Power Automate flow
Setup Recording Environment
@workspace Arrange windows for tutorial recording:
- Put VS Code on the left half
- Put Excel on the right half
Control Applications
@workspace Focus PowerPoint and send F5 to start presentation
List Available Automation
@workspace What Power Automate flows do I have available?
Extension Commands
Available via Command Palette (Ctrl+Shift+P):
- MCP Server for Power Automate Desktop: Test Connection - Verify PAD installation
- MCP Server for Power Automate Desktop: Show Status - Display system status
Development
Build from Source
# Clone repository
git clone https://github.com/sbroenne/mcp-server-power-automate.git
cd mcp-server-power-automate
# Build .NET MCP Server
cd src/PowerAutomateMcp
dotnet build
# Build VS Code Extension
cd ../../vscode-extension
npm install
npm run compile
npm run build-server
npm run package
Project Structure
mcp-server-power-automate/
├── src/
│ └── PowerAutomateMcp/ # .NET MCP Server
│ ├── Program.cs # MCP server entry point
│ ├── Tools/
│ │ ├── FlowTool.cs # PAD flow execution
│ │ └── UIAutomationTool.cs # Windows UI automation
│ └── PowerAutomateMcp.csproj
└── vscode-extension/ # VS Code Extension
├── src/extension.ts # Extension entry point
├── package.json # Extension manifest
└── server/ # Bundled .NET server (Release build)
Troubleshooting
Extension not working:
- Reload VS Code after installation
- Check Output panel: "MCP Server for Power Automate Desktop"
Flow execution fails:
- Ensure Power Automate Desktop is installed and running
- Open PAD Console Host at least once to initialize
Tools not appearing in Copilot:
- Verify extension is enabled: Extensions → "MCP Server for Power Automate Desktop"
- Check that GitHub Copilot extension is installed and active
Contributing
Contributions welcome! Please open an issue or pull request.
License
MIT License - see LICENSE file for details
Related Projects
- mcp-server-excel - MCP Server for Excel automation