Token导航 LogoToken导航

MCP Server · 浏览器工具

MCP multiagent

基于多智能体架构的医疗分诊系统,通过协调患者数据、分诊和保险代理,优化医疗分诊流程,提高效率和响应速度。

stdio官方级别未说明来源级核验工具 5
多智能体系统HTML浏览器自动化

快速开始

作者 / 组织
bastetlu299
提供方
bastetlu299
运行时
Python

工具数量

5

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

MCP multiagent 属于浏览器工具类 MCP Server,公开资料标注 5 个工具,通过stdio 本地进程接入,客户端适配情况以官方文档为准,有可以直接复制的安装命令;接入前先确认权限范围。

分类

浏览器工具

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

python3 -m venv venv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 5 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

MCP医疗分诊系统

基于模型上下文协议(MCP)和A2A(代理到代理)通信的综合多代理架构。该系统通过路由器代理协调专业代理(患者数据、分诊、保险)来处理医疗分诊场景。

目的和商业意识

该项目模拟了一个医疗分流工作流程,在该流程中,对传入的患者请求进行筛选,丰富临床背景,并将其路由到正确的专家响应。目标是提高摄入效率,同时确保患者获得与他们的症状和覆盖问题相一致的及时、一致的指导。

为什么这对医疗保健运营很重要:

  • 更快的录取决定:路由器和分类代理有助于对紧急情况进行分类,并在没有手动切换的情况下提供首通指导。
  • 单一数据来源:患者数据代理显示图表和遭遇历史,以便响应基于上下文。
  • 覆盖清晰度:保险代理人回答经常阻碍护理决定的福利和共付额问题。
  • 可扩展的协调:代理可以独立部署,使诊所能够随着需求的增长扩展分诊和覆盖工作流程。

架构概述

┌─────────────────────────────────────────────────────────────┐
│                     MCP Server (Port 8000)                  │
│              SQLite Database + Tool Registry                │
└─────────────────────────────────────────────────────────────┘
                            ▲
                            │ HTTP/REST
        ┌───────────────────┼───────────────────┐
        │                   │                   │
        ▼                   ▼                   ▼
┌──────────────┐    ┌──────────────┐    ┌──────────────┐
│ Data Agent   │    │Triage Agent  │    │Insurance Agent │
│ (Port 8011)  │    │ (Port 8012)  │    │ (Port 8013)  │
└──────────────┘    └──────────────┘    └──────────────┘
        ▲                   ▲                   ▲
        │                   │                   │
        └───────────────────┼───────────────────┘
                            │ A2A RPC
                            │
                    ┌───────▼────────┐
                    │ Router Agent   │
                    │  (Port 8010)   │
                    └────────────────┘

项目结构

.
├── README.md                      # This file
├── requirements.txt               # Python dependencies
├── database_setup.py              # SQLite initialization
├── demo.py                        # Example client
├── common/                        # Shared utilities
│   ├── a2a.py                    # A2A runtime & JSON-RPC
│   ├── db.py                     # Async database helpers
│   ├── message_utils.py          # Message construction
│   └── __init__.py
├── sdk/                           # Core data types
│   ├── types.py                  # Pydantic models
│   ├── agent.py                  # Agent types
│   ├── task.py                   # Task management
│   └── __init__.py
├── shared/                        # Backwards compatibility
│   ├── a2a_handler.py            # Re-exports from common
│   ├── message_utils.py          # Re-exports from common
│   └── __init__.py
├── mcp_server/                    # MCP Server (Port 8000)
│   ├── app.py                    # FastAPI application
│   ├── database.py               # Database interface
│   └── __init__.py
└── agents/                        # Specialized agents
    ├── router/                   # Router Agent (Port 8010)
    │   ├── main.py              # LangGraph workflow
    │   └── __init__.py
    ├── data/                     # Data Agent (Port 8011)
    │   ├── main.py              # MCP client for records
    │   └── __init__.py
    ├── support/                  # Triage Agent (Port 8012)
    │   ├── main.py              # Customer guidance
    │   └── __init__.py
    ├── payments/                 # Insurance Agent (Port 8013)
    │   ├── main.py              # Billing responses
    │   └── __init__.py
    └── __init__.py

安装说明

先决条件

  • Python 3.10+
  • pip 虚拟环境支持

1.克隆并导航到项目

cd /path/to/MCP_multiagent

2.创建虚拟环境

# Create isolated Python environment
python3 -m venv venv

# Activate it
source venv/bin/activate  # macOS/Linux
# OR
venv\Scripts\activate     # Windows

3.安装依赖项

pip install --upgrade pip
pip install -r requirements.txt

里面有什么 requirements.txt:

  • FastAPI/Uvicorn:代理和MCP服务器的Web框架
  • LangGraph:路由器的工作流编排
  • HTTPx:用于A2A通信的异步HTTP客户端
  • aiosqlite:异步SQLite驱动程序
  • 派丹蒂克:数据验证
  • python dotenv:环境配置
  • 小星星:服务器发送实时更新事件
  • 其他实用程序(orjson、fastmcp等)

4.初始化数据库

python database_setup.py

创造 triage.db 与样本患者和遭遇。

5.启动所有服务

终端1-MCP服务器:

python -m mcp_server.app
# Listens on http://localhost:8000

终端2——数据代理:

python -m agents.data.main
# Listens on http://localhost:8011

3号航站楼——分检人员:

python -m agents.support.main
# Listens on http://localhost:8012

4号航站楼——保险代理人:

python -m agents.payments.main
# Listens on http://localhost:8013

终端5——路由器代理:

python -m agents.router.main
# Listens on http://localhost:8010

6.测试系统

在一个新的终端(与 venv 已激活):

python demo.py

或者运行Jupyter场景:

jupyter notebook Assignment5_notebook.ipynb

配置

环境变量

创建一个 .env 项目根目录中的文件:

# Database path (default: ./database.sqlite)
A2A_DB_PATH=./triage.db

# MCP Server URL (for agents to reach it)
MCP_SERVER_URL=http://localhost:8000

# Agent RPC endpoints (used by router)
DATA_AGENT_RPC=http://localhost:8011/rpc
TRIAGE_AGENT_RPC=http://localhost:8012/rpc
INSURANCE_AGENT_RPC=http://localhost:8013/rpc

# Router endpoint (used by clients)
ROUTER_RPC=http://localhost:8010/rpc

加载环境文件:

export $(cat .env | xargs)

API概述

MCP服务器端点

端点方法目的
/tools/listGET列出可用工具
/tools/callPOST调用工具
/events/streamGET流审计事件(SSE)
/healthGET健康检查

可用工具:

  • get_patient --按ID获取患者记录
  • list_patients --列出患者(可选择按状态筛选)
  • update_patient --修改患者字段
  • create_case --打开分诊病例
  • get_patient_history --检索遭遇历史记录

A2A代理RPC方法

所有代理都支持JSON-RPC 2.0:

{
  "jsonrpc": "2.0",
  "id": "unique-id",
  "method": "message/send",
  "params": {
    "message": {
      "messageId": "uuid",
      "role": "user",
      "parts": [{"text": "Your query here"}]
    }
  }
}

方法:

  • message/send --同步请求
  • message/send_stream --流媒体响应
  • task/get --按ID检索任务
  • task/cancel --取消正在运行的任务

代理元数据

每个代理在以下位置公开元数据 /.well-known/agent-card.json:

curl http://localhost:8010/.well-known/agent-card.json

返回代理名称、功能、技能和文档URL。

使用示例

1.查询客户数据

import asyncio
import httpx
from sdk.types import Message, MessageSendParams, Role
from common.message_utils import create_text_message

async def query_router():
    msg = create_text_message("Get patient information for ID 5", role=Role.user)
    params = {"message": msg.model_dump()}
    
    async with httpx.AsyncClient() as client:
        response = await client.post(
            "http://localhost:8010/rpc",
            json={
                "jsonrpc": "2.0",
                "id": "demo",
                "method": "message/send",
                "params": params
            }
        )
    
    result = response.json()
    print(result["result"]["status"]["message"]["parts"][0]["text"])

asyncio.run(query_router())

2.多意图场景

query = "Update my date of birth to 1980-12-01 and show my encounter history"
# Router automatically routes to both Data and Triage agents
# Combines responses into a single coherent answer

3.升级流程

query = "Do I need a referral and what is my copay?"
# Router detects coverage keywords → routes to Insurance agent
# Insurance agent provides specialized response

工作流:请求流

  1. 客户端请求 → 路由器代理(:8010/rpc)
  2. 路由器意图分类 → 确定要呼叫的专家
  3. 专家调用 → 数据/支持/支付代理通过A2A RPC进行响应
  4. 响应聚合 → 路由器结合了专业输出
  5. 最终响应 → 以统一消息返回给客户端

路由逻辑

查询关键字路由代理
insurance, coverage, copay保险保险代理人
patient, history, chart数据然后分类数据代理→ 分类代理人
默认分类分类代理

数据库模式

患者

CREATE TABLE patients (
  id INTEGER PRIMARY KEY,
  name TEXT,
  date_of_birth TEXT,
  status TEXT,  -- 'stable', 'monitoring', 'urgent'
  created_at TEXT DEFAULT CURRENT_TIMESTAMP
);

案例

CREATE TABLE cases (
  id INTEGER PRIMARY KEY,
  patient_id INTEGER,
  complaint TEXT,
  urgency TEXT,
  status TEXT DEFAULT 'open',
  created_at TEXT DEFAULT CURRENT_TIMESTAMP
);

遭遇

CREATE TABLE encounters (
  id INTEGER PRIMARY KEY,
  patient_id INTEGER,
  channel TEXT,  -- 'email', 'phone', 'chat'
  notes TEXT,
  created_at TEXT DEFAULT CURRENT_TIMESTAMP
);

停用虚拟环境

完成后:

deactivate

故障排除

端口已在使用中

# Kill existing process on port (e.g., 8010)
lsof -i :8010 | grep LISTEN | awk '{print $2}' | xargs kill -9

数据库锁定

# Remove stale database
rm -f triage.db database.sqlite
python database_setup.py

导入错误

# Ensure you're in venv and installed dependencies
source venv/bin/activate
pip install -r requirements.txt

代理无法连接

  • 验证所有服务是否在预期端口上运行
  • 检查 .env 包含正确的端点URL
  • 测试连接性: curl http://localhost:8000/health

主要特点

✅ 模块化架构 --每个代理都可以独立部署\ ✅ LangGraph编排 --路由器使用状态图处理复杂的工作流程\ ✅ A2A协议 --用于代理间通信的标准JSON-RPC\ ✅ MCP集成 --代理将数据操作委托给集中式MCP服务器\ ✅ 异步/等待 --对并发操作的完全异步支持\ ✅ Pydantic验证 --类型安全消息传递\ ✅ 实时事件 --SSE流式传输审计日志和更新

测试

运行附带的Jupyter笔记本:

jupyter notebook Assignment5_notebook.ipynb

或者执行演示场景:

python demo.py

该测试:

  • 简单的患者查询
  • 多智能体协调
  • 复杂的搜索查询
  • 升级工作流程
  • 多意图请求

业绩说明

  • 数据库:SQLite aiosqlite 用于异步访问
  • 并发:代理请求通过httpx无阻塞
  • 记忆:存储在内存中的任务;考虑用于生产的持久存储
  • 可扩展性:目前的设计适合中小型部署

许可证

作业5----教育项目

支持

有关问题或疑问,请参阅:

______________________________________________________________________

最后更新:2025年12月\ Python版本: 3.10+\ 状态: ✅ 生产就绪

工具与能力

工具数量

5

资源数量

0

提示词数量

0

能力标签

HTML本地部署医疗分诊多智能体系统患者数据管理保险查询自动化流程

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

自动操作网页

打开页面、点击、填表,把浏览器动作交给模型执行。

抓结构化数据

把页面内容整理成表格或 JSON,省掉手工复制粘贴。

走一遍关键流程

按步骤检查页面是否正常,回归时少漏环节。

选择建议

值得选的地方

  • 只提供 5 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在浏览器工具场景里让模型直接调用外部能力的人。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP multiagent

MCP World · 本页

5stdio有1 个2026-05-17
Fetch 9a2682de

MCP.so

1SSE有3 个2026-05-17
Browser 738d52bc

MCP World

0stdio有1 个2026-05-17
Playwright MCP Server

MCP.so

21stdio有4 个2026-05-17
Skyvern MCP

MCP World

0stdio有2 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP multiagent 怎么安装?

公开资料给出的安装命令是 python3 -m venv venv,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP multiagent 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

MCP multiagent 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP multiagent 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

MCP multiagent 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP