工作流编排服务器

一个用于通过自然语言在Markdown中定义AI工作流并进行编排的MCP服务器,具有工具规范、基于断言的验证、步骤间变量流和LLM反馈循环功能。

  • by grimlor
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 grimlor/workflow-orchestrator-mcp

使用说明

工作流编排器MCP服务器

一个MCP服务器,用于用自然语言编排markdown中定义的AI工作流。演化自 演示助手mcp --添加了工具规范、基于断言的验证、步骤之间的变量流和LLM反馈循环。

快速安装

单击上面的徽章进行一键安装,或按照下面的手动安装进行操作。

运作原理

在可读的标记中定义工作流。编排器将它们解析为步骤,并向Copilot提供丰富的提示,Copilot执行指定的工具。在每一步之后,LLM都会报告结果,编排器会跟踪结果并将数据流到下一步。

  Workflow.md          Orchestrator             Copilot / LLM
  ┌──────────┐    ┌──────────────────┐    ┌──────────────────────┐
  │ Step 1   │──► │ Parse & build    │──► │ Execute tools        │
  │ Step 2   │    │ enriched prompt  │◄── │ Evaluate assertions  │
  │ Step 3   │    │ Track outcomes   │    │ Report via callback  │
  └──────────┘    └──────────────────┘    └──────────────────────┘

关键概念

  • 丰富的提示 --每个步骤都会变成一个提示,其中包含工具名称、解析变量、断言条件和回调指令
  • 反馈循环 --LLM电话 report_step_result 在每一步之后,报告通过/失败和提取的输出变量
  • 可变流量 --一步输出值(📤 OUTPUTS:)成为下一个的输入值(📥 INPUTS:)
  • 断言评估 --由LLM评估的自然语言成功标准,而不是程序化引擎

快速示例

### 🔧 WORKFLOW STEP: Discover repositories
` ` `
Find all repositories in the current project.
` ` `

### 🛠️ TOOL: repository_discovery

### 📤 OUTPUTS:
- result.repositories[0].name → REPO_NAME

### ✅ ASSERT:
- result contains "repositories"
- result.repositories.length > 0

看 工作流格式 对于完整的规格和 例子 用于演练。

MCP工具

工具 说明
load_workflow 加载并解析工作流markdown文件
execute_workflow_step 获取当前步骤的丰富提示
report_step_result LLM向编排器报告步骤结果
get_workflow_state 查看工作流进度、变量和断言结果
reset_workflow 重置为开始(工作流保持加载状态)

安装

快速安装(推荐)

点击顶部的徽章之一,自动安装到VS Code中!

手动安装

cd workflow-orchestrator-mcp
uv sync --all-extras

VS代码/副驾驶配置

添加到您的VS代码设置或 .vscode/mcp.json:

{
  "mcp.servers": {
    "workflow-orchestrator": {
      "command": "uv",
      "args": ["run", "workflow-orchestrator-mcp"],
      "cwd": "/path/to/workflow-orchestrator-mcp",
      "description": "Orchestrate AI workflows defined in markdown"
    }
  }
}

发展

uv run pytest                    # Run tests (77 BDD specs)
uv run pytest --cov              # Run tests with coverage
uv run ruff check src/ tests/    # Lint
uv run pyright src/ tests/         # Type check

项目结构

src/workflow_orchestrator_mcp/
├── server.py                  # MCP server entry point
├── tools/
│   └── workflow_tools.py      # Tool implementations
└── common/
    ├── workflow_parser.py     # Markdown parser
    ├── workflow_state.py      # State management & data structures
    ├── prompt_builder.py      # Enriched prompt composition
    ├── error_handling.py      # ActionableError with suggestions
    └── logging.py             # Logging configuration

文档

与演示助手mcp的比较

Aspect 演示助手mcp 工作流编排器mcp
目的 实时演示编排 自动化工作流执行
执行 人工确认每一步 自动执行整个工作流程
验证 无(人类观察) LLM评估断言,并报告
数据流 [VARIABLE] 替换 带LLM管理变量流的结构化输入/输出
反馈循环 无(单向) LLM通过以下方式报告结果 report_step_result

这两个项目都遵循 副驾驶介导的执行模型 --MCP服务器制作提示,Copilot执行它们。两个服务器都不直接调用工具。

相关