
3dify-project/dify-mcp-client
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
3dify-project/dify-mcp-client는 [[T0]에서 임포트 된 MCP 서버 후보입니다.
개요
3dify-project/dify-mcp-client는 [[T0]에서 임포트 된 MCP 서버 후보입니다.
개요(AI 번역)
MCP Client는 컴퓨터 사용 에이전트(UI-TARS-SDK)를 지원하는 에이전트 전략 플러그인으로 제공됩니다.
[! 중요] Dify는
MCP Server가 아니라MCP Host입니다.
작동 방식
각 MCP client (ReAct Agent) 노드는 MCP servers를 연결할 수 있습니다.
Tool,Resource,Prompt목록은 Dify 도구로 변환됩니다.- 선택한 LLM은
name,description,argument type를 볼 수 있습니다. - LLM은 ReAct 루프(관찰 →→ 이유 Reason)를 기반으로 도구를 호출합니다.
[! 참고] 이 저장소의 대부분의 코드는 다음과 같은 파일들을 포함하고 있습니다.
Dify 공식 플러그인 / 에이전트 전략
https://github.com/langgenius/dify-official-plugins/tree/main/agent-strategies/cot_agent
✅ 내가 한 일
ReAct.py를 복사하고 파일 이름을 [[T13]로 변경)mcpReAct.yaml와 [class mcpReActParams()를 편집하여config_jsonGUI 입력 필드를 추가했습니다.
mcpReAct.py 에 덧붙였어
- MCP용 새로운 12개 기능
__init__()AsyncExitStack및event loop초기화를 위한_handle_invoke_action()의 MCP용 일부 코드- [[T21]에서 MCP 설정 및 정리
[! 중요] ReAct while 루프는 현재 상태와 같습니다
🔄 업데이트 기록
- SSE MCP 클라이언트 (v0.0.2) 추가
- 다중 SSE 서버 지원 (v0.0.3)
이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.
README
원문 README의 일부입니다. 원문 보기.
dify-mcp-client
MCP Client as Agent Strategy Plugin with Computer Using Agent (UI-TARS-SDK) support.
[!IMPORTANT] Dify is not
MCP ServerbutMCP Host.
How it works
Each MCP client (ReAct Agent) node can connect MCP servers.
Tool,Resource,Promptlists are converted into Dify Tools.- Your selected LLM can see their
name,description,argument type - The LLM calls Tools based on the ReAct loop (Reason → Act → Observe).
[!NOTE] Most of the code in this repository contains the following files.
Dify Official Plugins / Agent Strategies
https://github.com/langgenius/dify-official-plugins/tree/main/agent-strategies/cot_agent
✅ What I did
- Copied
ReAct.pyand renamed file asmcpReAct.py - Added
config_jsonGUI input field by editingmcpReAct.yamlandclass mcpReActParams()
in mcpReAct.py, I added
- New 12 functions for MCP
__init__()for initializingAsyncExitStackandevent loop- Some codes in
_handle_invoke_action()for MCP - MCP setup and cleanup in
_invoke()
[!IMPORTANT] ReAct while loop is as they are
🔄 Update history
- Add SSE MCP client (v0.0.2)
- Support multi SSE servers (v0.0.3)
- Update python module and simplify its dependency (v0.0.4)
- mcp(v1.1.2→v1.6.0+)
- dify_plugin(0.0.1b72→v0.1.0)
- Add UI-TARS SDK integration for GUI automation capabilities (v0.0.5)
- Support Streamable HTTP MCP client
- Feat SSE param:
/sse?key=value(v0.0.6)
🤖 UI-TARS Integration
This plugin includes UI-TARS SDK integration for GUI automation capabilities.
[!WARNING] UI-TARS-SDK integration is supported only Dify Plugin’s local debug deployment. https://github.com/3dify-project/dify-mcp-client#-how-to-develop-and-deploy-plugin
Normal difypkg install doesn’t work. Because UI-TARS require OS native API, yet Dify plugin env is Linux docker container.
I’m thinking alternative solusion via Streamable HTTP MCP.
Key Features
- On-demand GUI automation: UI-TARS is called only when needed, reducing token consumption
- Life-time control: Set maximum loop count per task to prevent runaway automation
Known Limitations
- Single Monitor Support: UI-TARS currently recognizes the primary monitor only. Multi-monitor setups are not supported.
- Mac Retina Display Issue: On macOS with Retina displays, UI-TARS requires the display resolution to be set to “Default” instead of the highest quality setting. Otherwise wrong (w,h) point is clicked. https://github.com/bytedance/UI-TARS-desktop/issues/591
Life-time Parameter
The life_time parameter controls the maximum number of GUI actions UI-TARS can perform:
- Default: 10 iterations
- User-configurable maximum via
ui_tars_max_life_time_count - Your selected LLM can dynamically adjust within the user-defined limit based on task complexity
[!NOTE]
설치
This server does not publish a one-line install command.
Open the repository installation guide MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →