mcp-server-power-automate

sbroenne/mcp-server-power-automate

3.2

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.

Tools
2
Resources
0
Prompts
0

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.

ActionDescriptionParameters
runExecute a flow by nameflowName (required)
listList all available flowsNone
statusCheck if PAD is runningNone

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.

ActionDescriptionParameters
focusBring a window to foregroundwindowTitle (partial match)
arrangeSet window layoutlayout: left-half, right-half, maximize, restore
list-windowsList all open windowsNone
send-keysSend keystrokes to windowkeys (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)

  1. Install from the VS Code Marketplace (when published):

    code --install-extension sbroenne.mcp-server-power-automate-desktop
    
  2. Or install from local .vsix file:

    code --install-extension mcp-server-power-automate-desktop-0.1.0.vsix
    
  3. Reload VS Code - the extension will automatically:

    • Start the MCP server
    • Register tools with GitHub Copilot
    • Enable pad_flow and ui_automation in 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