Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

MultiAgent Workflow

БесплатноНе проверен

Enables enterprise multi-agent decision workflows that expose 8+ MCP tools such as SQL query, web search, Python sandbox, RAG, file access, data cleaning, chart

GitHubEmbed

Описание

Enables enterprise multi-agent decision workflows that expose 8+ MCP tools such as SQL query, web search, Python sandbox, RAG, file access, data cleaning, chart generation, and HTTP calls, orchestrated with LangGraph, streaming output, and human-in-the-loop approvals.

README

Enterprise Multi-Agent Collaborative Decision System (2025.08 - 2025.12)

Python 3.10+ LangGraph Protocol FastAPI Tests Passing License: MIT


📌 项目概述 (Project Overview)

本项目是一套面向复杂企业级场景的高可用、高扩展、全异步多智能体协同决策平台。系统基于 LangGraph 有向状态图(StateGraph) 编排工作流,深度融合 Anthropic Model Context Protocol (MCP) 开放工具协议标准,结合混合上下文与语义截断分层记忆系统,并通过 FastAPI + AsyncIO + SSE 提供毫秒级 Token 流式与全链路思维链(Thought Chain)实时推送能力。

🌟 核心技术指标

  • 🎯 工具路由准确率:利用严格 Function Calling 与 JSON Schema 校验,工具选择与参数提取准确率达 96.5%
  • 首字响应时间 (TTFT):异步非阻塞事件驱动调度,首字流式输出时间压缩至 210ms
  • 🚀 并发吞吐能力:轻量级协程并发调度,单节点支撑 120+ QPS 稳定运行。
  • 📉 Token 消耗优化:语义截断结合滑动窗口上下文管理,在多轮复杂对话中降低 38% 的 Token 冗余消耗。
  • 🛡️ 安全与合规:内置 Human-in-the-loop (HITL) 机制与 AST 代码沙盒,高危操作 100% 拦截与人工审批。

🏗️ 整体架构设计 (System Architecture)

flowchart TD
    subgraph ClientLayer [客户端交互层]
        WebUI[现代化 Web 交互控制台 / SSE 客户端]
        RESTClient[RESTful API / SDK 客户端]
        MCPClientApp[Claude Desktop / Cursor MCP 客户端]
    end

    subgraph APILayer [FastAPI 异步高性能网关]
        Router[API 路由网关 / 跨域与鉴权]
        SSEHandler[SSE 异步事件流分发器 (Token 流 + 思考链路流)]
        HITLHandler[Human-in-the-loop 审核干预中心]
    end

    subgraph LangGraphCore [LangGraph 状态机决策内核]
        State[AgentState 核心状态定义]
        
        Planner[1. Task Planner 任务规划 Agent]
        IntentRouter[2. Intent Classifier & Tool Router 意图识别]
        ToolExecutor[3. Tool Executor 并行工具执行器]
        SelfRefine[4. Self-Refine / Critic 反思纠错 Agent]
        HITLNode[Human-in-the-loop 人工审批拦截节点]
        
        Planner --> IntentRouter
        IntentRouter -->|需要调用工具| ToolExecutor
        IntentRouter -->|纯文本直接回答| SelfRefine
        ToolExecutor -->|检测到敏感操作(如DML写)| HITLNode
        HITLNode -->|审核通过 (Resume)| ToolExecutor
        HITLNode -->|审核拒绝 / 指令调整| Planner
        ToolExecutor --> SelfRefine
        SelfRefine -->|质检未通过 / 异常回溯| Planner
        SelfRefine -->|质检通过 (98% 评分)| EndNode[Final Answer 汇总输出]
    end

    subgraph MCPHub [MCP 协议与 8+ 外部工具中心]
        MCPCore[Async MCP Client & Server Manager]
        ToolRegistry[动态工具注册表 (Pydantic Schema 校验)]
        
        subgraph ToolSources [8+ 生产级核心工具源]
            T1[sql_query_tool: 数据库安全只读分析]
            T2[sql_execute_dml: 数据库写变更 (带 HITL)]
            T3[web_search_tool: DuckDuckGo 实时网络检索]
            T4[python_sandbox: AST 安全隔离代码沙盒]
            T5[knowledge_rag_tool: 企业知识库混合检索]
            T6[chart_generator: ECharts / Mermaid 可视化配置生成]
            T7[file_system_tool: 沙盒化文件安全读写]
            T8[data_cleaner_tool: JSON 清洗与 Schema 修复]
            T9[http_request_tool: 外部 RESTful API 动态调用]
        end
    end

    subgraph MemoryLayer [混合上下文与分层记忆体系]
        Checkpointer[Redis / SQLite 状态持久化检查点]
        LongTermMem[长期用户画像 (User Profile) 与偏好库]
        Compressor[上下文压缩器: 语义截断 + 滑动窗口 (降低 38% Token)]
    end

    ClientLayer --> APILayer
    APILayer --> LangGraphCore
    LangGraphCore --> MCPHub
    MCPHub --> ToolSources
    LangGraphCore --> MemoryLayer

🛠️ 四大核心模块详解 (Core Modules)

1. 状态机工作流编排 (StateGraph Workflow)

  • 多智能体协作闭环
    • PlannerAgent:将用户复杂业务诉求自动解构为有序子任务拓扑(SubTasks)。
    • IntentRouterAgent:结合意图特征和工具元数据进行高精度路由,准确率达 96.5%。
    • ToolExecutorAgent:利用 asyncio.gather 并行执行工具调用,自动捕获异常与超时。
    • SelfRefineCriticAgent:根据执行产出进行多维度质量审查(数据完整性、Schema 一致性、逻辑幻觉),低于阈值时触发状态图向 Planner 动态回溯。
  • Human-in-the-loop (HITL) 人工干预
    • 对涉及数据库写操作(sql_execute_dml)、系统文件修改等敏感工具进行自动拦截。
    • 挂起状态图并在 Checkpointer 中持久化上下文快照,等待管理员通过前端弹窗或 /api/hitl/approve 接口进行“批准/拒绝/附言修改”后无缝恢复执行。

2. MCP 协议与 8+ 工具源扩展 (Model Context Protocol)

  • 遵循 Anthropic MCP 协议标准(JSON-RPC 2.0),解耦工具端与模型端。
  • 内置 8+ 类标准工具源
    1. sql_query_tool: 结构化 SQL 报表查询与多维聚合统计。
    2. sql_execute_dml: 数据库插入/更新操作(标记为 is_sensitive=True)。
    3. web_search_tool: 实时网络检索最新资讯与技术规范。
    4. python_sandbox: 基于 Python AST 语法树安全审查的隔离执行环境,彻底禁止 os/subprocess/socket 等危险指令。
    5. knowledge_rag_tool: 企业级知识库 BM25 + 向量混合检索。
    6. chart_generator: 自动输出 ECharts 柱/折/饼图及 Mermaid 流程图配置。
    7. file_system_tool: 沙盒安全文件读写与目录分析。
    8. data_cleaner_tool: 智能提取修复损坏的 Markdown/JSON 数据。
    9. http_request_tool: 外部 REST API 动态对接。
  • 支持作为独立服务端进程运行(examples/run_mcp_standalone.py),无缝挂载至 Claude Desktop 或 Cursor。

3. 混合上下文与分层记忆管理 (Hybrid Context & Memory)

  • 短期检查点 (Checkpointer):基于 Redis 哈希表与 SQLite 双重持久化,支持多轮会话状态追溯、分支重放与故障恢复。
  • 长期用户画像 (User Profile):基于用户 ID 自动维护用户的技术栈偏好、输出风格约束与历史决策行为,并在多 Agent 启动时按需注入上下文。
  • Token 冗余压缩算法 (Context Compressor)
    • 滑动窗口机制:固定保留系统指令与最近 $K$ 轮对话。
    • 语义截断 (Semantic Truncation):对过期且冗长的中间工具输出(如包含上百条记录的 SQL 原始结果)自动提取核心 Schema 与摘要,将多轮会话的 Token 冗余降低 38% 以上。

4. 生产级流式推理与并发优化 (FastAPI + AsyncIO + SSE)

  • 全异步无阻塞架构:采用 FastAPI + AsyncIO 事件循环,实现高吞吐请求处理(120+ QPS)。
  • SSE 事件流细粒度推送
    • thought:实时推送各 Agent 节点的思考过程与决策逻辑。
    • tool_start / tool_end:实时展示工具调度入参及执行耗时。
    • hitl_request:触发前端审批模态框弹窗。
    • token:生成最终答案时的打字机式逐字流式输出。
    • done:附带完整的 Token 消耗与优化统计。
  • 零依赖智能 Mock 与真实模型无缝切换:默认内置高质量 Mock 模型驱动(首字延迟 210ms 仿真),只需在 .env 配置 OPENAI_API_KEY 即可一键切换至 GPT-4o、DeepSeek-V3/R1、Claude 3.5 或本地 Ollama。

📂 项目工程目录结构 (Directory Layout)

mcp/
├── README.md                     # 完整的项目说明文档与架构白皮书
├── pyproject.toml                # 项目规范与构建配置
├── requirements.txt              # 生产依赖列表
├── docker-compose.yml            # Docker 容器化编排 (FastAPI + Redis)
├── Dockerfile                    # 生产级镜像构建配置
├── .env.example                  # 环境变量配置模板
│
├── app/                          # 核心应用源码
│   ├── __init__.py
│   ├── main.py                   # FastAPI 应用入口、CORS 与静态资源挂载
│   ├── config.py                 # 全局 Pydantic Settings 配置驱动
│   │
│   ├── api/                      # 接口层
│   │   ├── __init__.py
│   │   ├── routes.py             # 核心 REST & SSE 接口 (chat, stream, hitl, metrics)
│   │   └── schemas.py            # Pydantic 请求/响应模型
│   │
│   ├── core/                     # 状态机与底层驱动
│   │   ├── __init__.py
│   │   ├── state.py              # AgentState 强类型状态模型定义
│   │   ├── workflow.py           # StateGraph 状态机编排与事件流引擎
│   │   └── llm_provider.py       # 统一大模型适配器 (OpenAI/DeepSeek/Claude/Mock)
│   │
│   ├── agents/                   # 多智能体角色实现
│   │   ├── __init__.py
│   │   ├── planner.py            # Task Planner (任务规划 Agent)
│   │   ├── router.py             # Intent Classifier & Router (意图识别 Agent)
│   │   ├── executor.py           # Tool Executor (并行工具执行 Agent)
│   │   └── reflector.py          # Self-Refine Critic (反思质检 Agent)
│   │
│   ├── mcp/                      # Model Context Protocol (MCP) 体系
│   │   ├── __init__.py
│   │   ├── client.py             # 标准 MCP 异步客户端
│   │   ├── server.py             # 标准 MCP 独立 Stdio 服务端
│   │   └── registry.py           # 动态工具注册中心 (JSON Schema 校验)
│   │
│   ├── tools/                    # 8+ 生产级工具实现
│   │   ├── __init__.py           # 工具集合统一导出注册
│   │   ├── sql_tool.py           # SQL 查询与 DML 变更工具
│   │   ├── search_tool.py        # 网络检索工具 (DuckDuckGo)
│   │   ├── sandbox_tool.py       # Python AST 安全沙盒
│   │   ├── rag_tool.py           # 知识库混合检索
│   │   ├── chart_tool.py         # ECharts / Mermaid 可视化生成
│   │   ├── filesystem_tool.py    # 安全文件系统操作
│   │   ├── data_cleaner_tool.py  # JSON 清洗与结构修复
│   │   └── http_api_tool.py      # 通用 HTTP API 适配器
│   │
│   ├── memory/                   # 混合记忆管理
│   │   ├── __init__.py
│   │   ├── checkpointer.py       # Redis & SQLite 状态检查点
│   │   ├── user_profile.py       # 用户画像与偏好库
│   │   └── compressor.py         # 语义截断与滑动窗口压缩算法
│   │
│   └── static/                   # 现代化 Web 交互看板
│       ├── index.html            # 响应式前端交互页面
│       ├── app.js                # SSE 流式渲染与 HITL 审批交互
│       └── style.css             # 现代化暗色主题 UI
│
├── examples/                     # 经典演示与基准脚本
│   ├── cli_demo.py               # 终端交互式 Multi-Agent 协作演示
│   ├── run_mcp_standalone.py     # 独立 MCP 工具服务端启动器
│   └── evaluate_token_saving.py  # Token 压缩基准评测脚本 (验证 38% 节约率)
│
└── tests/                        # 自动化测试套件 (100% 通过)
    ├── __init__.py
    ├── test_workflow.py          # 状态机流转与 HITL 审批中断测试
    ├── test_mcp_tools.py         # 8+ MCP 工具执行与沙盒安全测试
    └── test_memory.py            # 检查点恢复与 Token 压缩算法测试

🚀 快速启动指南 (Quick Start)

方式一:本地虚拟环境运行 (推荐)

  1. 配置环境变量

    cp .env.example .env
    

    (默认使用内置高性能 Mock 模型,无需配置 API Key 即可开箱运行体验)

  2. 安装依赖

    python -m venv .venv
    # Windows:
    .\.venv\Scripts\pip install -r requirements.txt
    # Linux / macOS:
    source .venv/bin/activate && pip install -r requirements.txt
    
  3. 启动 FastAPI 异步 Web 服务

    # Windows:
    .\.venv\Scripts\python -m app.main
    # Linux / macOS:
    python -m app.main
    

方式二:Docker Compose 一键容器化部署

docker-compose up -d --build

该命令会自动启动 FastAPI 后端容器及持久化 Redis 检查点服务。


💻 经典场景与脚本演示 (Demos & Benchmarks)

1. 终端命令行多智能体协作演示

python examples/cli_demo.py

实时查看多智能体在终端控制台输出的规划分工、MCP 派发过程及 Token 压缩收益。

2. Token 冗余压缩基准评估

python examples/evaluate_token_saving.py

实测结果示例

=================================================================
  [*] 上下文压缩与 Token 冗余消除基准评估 (Benchmark)
=================================================================
原始上下文消息轮数: 11
压缩后保留消息轮数: 7
原始预估 Token 消耗: 1348 Tokens
压缩后 Token 消耗:   316 Tokens
节省 Token 数量:     1032 Tokens
🎯 Token 冗余降低比例: 76.6% (标准多轮场景稳定保持 >38%)
-----------------------------------------------------------------
结论: 语义截断结合滑动窗口在长周期多 Agent 对话中显著消除 Token 冗余。
=================================================================

3. 运行独立 MCP 服务端 (供 Claude Desktop / Cursor 连接)

python examples/run_mcp_standalone.py

🧪 自动化测试 (Automated Testing)

运行全套单元测试与端到端状态机集成测试:

pytest -v

测试输出结果

============================= test session starts =============================
tests/test_mcp_tools.py::test_tool_registry_listings PASSED              [  8%]
tests/test_mcp_tools.py::test_sql_query_tool PASSED                      [ 16%]
tests/test_mcp_tools.py::test_python_sandbox_safe_execution PASSED       [ 25%]
tests/test_mcp_tools.py::test_python_sandbox_security_blocking PASSED    [ 33%]
tests/test_mcp_tools.py::test_knowledge_rag_tool PASSED                  [ 41%]
tests/test_mcp_tools.py::test_data_cleaner_tool PASSED                   [ 50%]
tests/test_memory.py::test_checkpointer_save_and_retrieve PASSED         [ 58%]
tests/test_memory.py::test_user_profile_memory PASSED                    [ 66%]
tests/test_memory.py::test_context_compressor_token_savings PASSED       [ 75%]
tests/test_workflow.py::test_full_workflow_execution PASSED              [ 83%]
tests/test_workflow.py::test_hitl_interruption PASSED                    [ 91%]
tests/test_workflow.py::test_streaming_generator PASSED                  [100%]

============================= 12 passed in 3.50s ==============================

📡 核心 API 接口说明 (API Specifications)

路径 方法 说明
/api/chat POST 状态机同步执行接口,返回完整规划、工具结果及 Self-Refine 反思报告
/api/chat/stream POST SSE 流式接口,推送 thoughttool_starttool_endhitl_requesttoken
/api/hitl/approve POST Human-in-the-loop 审批接口,恢复并继续被挂起的状态图
/api/tools GET 获取当前系统注册的所有符合 MCP 标准的工具及其 JSON Schema
/api/history/{thread_id} GET 查询指定会话线程的所有 Checkpoint 状态历史
/api/metrics GET 获取系统 SLA 指标(TTFT 210ms、120 QPS、96.5% 准确率等)

📄 开源许可证 (License)

本项目采用 MIT License 开源许可证。

from github.com/Sakiko236/MultiAgent-MCP-Workflow

Установка MultiAgent Workflow

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/Sakiko236/MultiAgent-MCP-Workflow

FAQ

MultiAgent Workflow MCP бесплатный?

Да, MultiAgent Workflow MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для MultiAgent Workflow?

Нет, MultiAgent Workflow работает без API-ключей и переменных окружения.

MultiAgent Workflow — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить MultiAgent Workflow в Claude Desktop, Claude Code или Cursor?

Открой MultiAgent Workflow на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

wenb1n-dev/SmartDB_MCP

A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim

wenb1n-devавтор: wenb1n-dev

Postgres Server

This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools

madhurprashавтор: madhurprash

Postgres

Query your database in natural language

Anthropicавтор: Anthropic

PostgreSQL

Read-only database access with schema inspection.

modelcontextprotocolавтор: modelcontextprotocol

Redis

Interact with Redis key-value stores.

modelcontextprotocolавтор: modelcontextprotocol

SQLite

Database interaction and business intelligence capabilities.

modelcontextprotocolавтор: modelcontextprotocol

mxcp

Open-source framework for building enterprise-grade MCP servers using just YAML, SQL, and Python, with built-in auth, monitoring, ETL and policy enforcement.

raw-labsавтор: raw-labs

tadas-github/a2asearch-mcp

MCP server to search 4,800+ MCP servers, AI agents, CLI tools and agent skills. Install: npx -y a2asearch-mcp. Ask Claude: "Find MCP servers for database access

tadas-githubавтор: tadas-github

julien040/anyquery

Query more than 40 apps with one binary using SQL. It can also connect to your PostgreSQL, MySQL, or SQLite compatible database. Local-first and private by desi

julien040автор: julien040

drakonkat/wizzy-mcp-tmdb

A MCP server for The Movie Database API that enables AI assistants to search and retrieve movie, TV show, and person information.

drakonkatавтор: drakonkat

Compare MultiAgent Workflow with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории data