关于 mcp-power-automate
MCP Power Automate 是本地优先的 MCP 服务与 Chromium 扩展,用于借助 AI 辅助处理 Microsoft Power Automate 云端流。它复用用户已登录浏览器的会话,无需先注册 Microsoft Entra ID 应用。服务提供预览、校验、保存、差异审查和回滚等受控写入流程。
主要功能
- 01复用浏览器会话进行认证
- 02锁定目标流后再读取与编辑
- 03保存前预览最小化候选更新
- 04支持查看差异并回滚修改
- 05查看运行记录与失败的操作
- 06管理 Dataverse 解决方案中的流
适用场景
- 01让 AI 客户端检查并修改生产前的测试流
- 02排查 Power Automate 流的运行失败原因
- 03在非托管解决方案中添加或创建云端流
MCP 相关
该项目是 MCP 服务,向 MCP 客户端暴露一组 v1 命令,包括目标锁定、读取、预览、校验、保存、运行检查和回滚。扩展与本地桥接服务协作,为这些命令提供浏览器捕获的上下文与令牌。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP Power Automate
以本地为先的 MCP 服务和 Chromium 扩展,用于 AI 辅助处理 Microsoft Power Automate。
使用现有的已登录浏览器会话,让 MCP 客户端检查、验证、编辑、运行、审查和还原 Power Automate 云端流。无需 Microsoft Entra ID 应用注册、管理员同意流程或自定义企业应用设置即可开始使用。
早期公开反馈:项目仍处于起步阶段,务实且快速迭代,LinkedIn 帖子浏览量已超过 15,000 次,GitHub 星标有 14 个。
为什么要开发它
Power Automate 功能强大,但 AI Agent 在操作实际流之前,需要的不只是便捷。本项目让工作流保持可见且可还原:
- 浏览器扩展会从你自己的 Chromium 会话中捕获当前 Power Automate 上下文和兼容令牌。
- MCP 服务提供 v1 命令接口,用于指定目标、读取、预览、验证、保存、检查运行情况和回滚。
- 扩展基本保持被动:提供状态、诊断和审查界面,而不是用隐藏变更内容的神秘按钮。
- 本地状态、快照和备份都保存在你的设备上。
功能
| 领域 | 功能 |
|---|---|
| 上下文 | 检测浏览器捕获的流、列出流,并明确锁定目标流。 |
| 安全编辑 | 读取流、预览最小候选更新、验证、保存、审查差异并还原。 |
| 调试 | 检查最近的运行、最新运行详情和操作级故障。 |
| 测试 | 调用安全的手动/请求触发器流,并等待运行结果。 |
| 解决方案 | 列出未托管的 Dataverse 解决方案、检查解决方案组件和环境变量、添加现有流,并在解决方案中创建空白流。 |
写入操作有意限制在特定范围内。MCP 默认不提供删除解决方案、删除组件、修改托管解决方案、写入环境变量或盲目编辑生产环境的功能。
快速开始
在 Codex 中注册 MCP:
codex mcp add power-automate-local -- npx -y @kaael1/mcp-power-automate
查找打包后的扩展路径:
npx -y @kaael1/mcp-power-automate extension-path
在 Chromium 中加载该文件夹:
- 打开
chrome://extensions或edge://extensions。 - 启用开发者模式。
- 选择
Load unpacked。 - 选择
extension-path输出的文件夹。
然后打开或聚焦到 Power Automate 流页面。扩展会自动捕获会话和目标上下文。
检查是否已就绪:
npx -y @kaael1/mcp-power-automate doctor
推荐的 Agent 工作循环
如需在监督下进行编辑,请让 MCP 客户端遵循以下循环:
doctorget_contextconnect_flowget_flowpreview_flow_updatevalidate_flowapply_flow_updateget_last_update- 如果可用,再次运行
validate_flow
如需检查运行情况和测试手动/请求触发器,请使用 list_runs、get_latest_run、get_run、get_run_actions、wait_for_run、get_trigger_callback_url 和 invoke_trigger。
如需处理 Dataverse 解决方案,请使用 list_solutions、list_solution_components、list_environment_variables、add_flow_to_solution 和 create_flow_in_solution。解决方案写入操作仅限于向未托管解决方案添加云端流。
公开的 v1 工具
get_context
doctor
connect_flow
list_flows
list_solutions
list_solution_components
list_environment_variables
add_flow_to_solution
get_flow
preview_flow_update
validate_flow
apply_flow_update
get_last_update
revert_last_update
list_runs
get_latest_run
get_run
get_run_actions
wait_for_run
get_trigger_callback_url
invoke_trigger
create_flow
create_flow_in_solution
clone_flow
安全模型
- 执行任何写入操作前,先使用
get_context、connect_flow和get_flow检查。 - 保存前,使用
preview_flow_update预览。 - 在 Power Automate 接受验证的情况下,在重要编辑前后进行验证。
- 保存后,检查
get_last_update,以查看差异。 - 如果保存的结果有误,使用
revert_last_update。 - 优先使用测试或暂存工作流,而非生产工作流。
如果 Power Automate 因连接权限问题拒绝保存,MCP 会报告 CONNECTION_AUTHORIZATION_FAILED,并等待用户在 Power Automate 中修复该连接。如果服务拒绝 retryPolicy 之类的字段,MCP 会报告 SCHEMA_VALIDATION_FAILED 以及被拒绝的成员,以便 Agent 修正候选工作流,而不是凭空猜测。
浏览器支持的身份验证
该扩展可以从你已登录的浏览器会话中捕获 Power Automate、Power Platform/BAP 和 Dataverse 受众的令牌。存在这些令牌时,get_context 和 /health 会显示 canManageSolutions 等就绪状态详情。
这意味着 MCP 无需新建 Microsoft Entra 应用注册即可运行,但也意味着浏览器会话仍是当前授权依据。如果令牌过期或缺少权限,请重新打开或聚焦相关的 Power Automate、Power Apps 或 Dataverse 页面,并在捕获令牌后重试。
HTTP 桥接
本地桥接在 127.0.0.1:17373 上监听。
GET /health保留用于简单探测。GET /v1/health返回桥接身份和就绪状态。GET /v1/context返回与 MCP 使用的相同上下文。GET /v1/commands列出公开的 v1 命令接口。POST /v1/commands/:name使用 JSON 请求体运行任意公开的 v1 命令。
只有拥有桥接端口的进程才能执行有状态操作。如果已有其他进程占用该端口,新的 MCP 实例会拒绝复用该端口;请停止现有桥接进程,或选择其他 POWER_AUTOMATE_BRIDGE_PORT。
开发
npm install
npm run typecheck
npm run lint
npm run test
npm run build
npm run pack:dry-run
对于本地克隆,建议将 Codex 注册到此检出版本构建的服务:
npm run build
$nodePath = (Get-Command node).Source
$serverPath = Join-Path (Get-Location) "dist/server/index.js"
codex mcp add power-automate-local -- $nodePath $serverPath
如果存在较旧的本地条目,请先将其删除:
codex mcp remove power-automate-local
重新构建后,从 dist/extension 加载浏览器扩展。运行时状态存储在 data/ 中,不得提交。
文档
软件包链接
- GitHub:https://github.com/kaael1/mcp-power-automate
- npm:https://www.npmjs.com/package/@kaael1/mcp-power-automate
- MCP Registry:https://registry.modelcontextprotocol.io/v0/servers?search=io.github.kaael1/mcp-power-automate
许可证
MIT。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。