本项目将Dify工作流作为MCP服务连接到Strands代理,构建一个用于患者分诊的智能代理。
基于Strands Web UI开发并使用Python MCP SDK实现Dify工作流的MCP服务器。
本项目封装了Dify工作流作为一个MCP服务,并将其集成到Strands代理平台中,以实现患者接待和分诊之间的智能对话交互。
通过Strands Web UI显示交互界面,支持多个模型和工具的配置,便于快速部署和扩展。
本项目集成了两个开源仓库,并基于AWS MCP服务器示例和Strands Web UI项目进行开发,以展示Dify MCP代理的场景。
本项目基于以下两个开源项目的集成:
感谢原始作者的开源贡献!本项目遵循与原始项目相同的开源协议,请参阅LICENSE。
git clone https://github.com/wanglx858/difymcp-strandsagent-demo.git
cd difymcp-strandsagent-demo
cd aws-mcp-servers-samples
curl -LsSf https://astral.sh/uv/install.sh | sh
pip install -r dify_mcp_servers/requirements.txt
可在DIY探索应用中找到公共模板应用
患者接诊聊天机器人
打开dify_mcp_server.py,找到以下代码并替换为您的API Key:
DIFY_API_BASE = "https://api.dify.ai/v1" # 在Dify控制台获取
DEFAULT_API_KEY = "你的API_KEY" # 请填写您的Dify API Key
uv init
uv venv
source .venv/bin/activate
uv add "mcp[cli]" httpx
uv run dify_mcp_servers/dify_mcp_server.py
cd strands-web-ui
pip install -r requirements.txt
pip install -e .
pip install strands-agents-tools
编辑config/mcp_config.json添加或修改以下配置:
"patient_intake_chatbot": {
"command": "uv",
"args": [
"--directory",
"/你的项目路径/aws-mcp-servers-samples/dify_mcp_servers",
"run",
"dify_mcp_server.py"
],
"description": "一个用于患者接诊的聊天机器人。",
"status": 1
}
⚠️ 请修改路径至您
dify_mcp_server.py文件所在的绝对路径。
确保已正确配置AWS凭证以使用Bedrock和Transcribe服务。
aws configure
或者通过环境变量进行配置:
export AWS_ACCESS_KEY_ID=your_access_key
export AWS_SECRET_ACCESS_KEY=your_secret_key
export AWS_DEFAULT_REGION=us-east-1
streamlit run app.py
http://localhost:8501
# 提示
您是一个患者接待聊天机器人助手,需要调用patient_intake_chatbot工具来收集患者信息,并根据患者的症状、紧急程度和医疗历史匹配合适的分诊路径或医疗服务提供者。
在工具配置区域启用所需的功能。
开始与患者分诊代理聊天! 💬
如有任何问题,请随时提出问题或联系维护人员。 📩
祝您使用顺利! 🚀✨