diff --git a/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test.egg-info/PKG-INFO b/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test.egg-info/PKG-INFO index ac937cd..00fbad7 100644 --- a/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test.egg-info/PKG-INFO +++ b/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 2.4 Name: lzwcai-demp-tool-server-dify-to-mcp-test -Version: 0.1.0 +Version: 0.1.1 Summary: 这是一个Dify to MCP的集成工具;通过Dify的API接口,将Dify的模型部署到MCP平台,并进行推理。 Requires-Python: >=3.10 Requires-Dist: httpx>=0.28.1 diff --git a/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/pyproject.toml b/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/pyproject.toml index 88c5d94..bb90fa2 100644 --- a/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/pyproject.toml +++ b/lzwcai_demp_tool_server_dify_to_mcp_test/lzwcai_demp_tool_server_dify_to_mcp_test/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "lzwcai-demp-tool-server-dify-to-mcp-test" -version = "0.1.0" +version = "0.1.1" description = "这是一个Dify to MCP的集成工具;通过Dify的API接口,将Dify的模型部署到MCP平台,并进行推理。" requires-python = ">=3.10" dependencies = [ diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/__pycache__/main.cpython-312.pyc b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/__pycache__/main.cpython-312.pyc index 1bb0314..22b6656 100644 Binary files a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/__pycache__/main.cpython-312.pyc and b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/__pycache__/main.cpython-312.pyc differ diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp.log b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp.log index d4f169e..c08ee56 100644 --- a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp.log +++ b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp.log @@ -471,3 +471,509 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ } } 2025-12-20 18:04:24 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:19:55 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-23 18:19:55 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-23 18:19:55 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:19:54 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:19:55 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:19:54 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } +] +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) +2025-12-23 18:19:55 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:19:56 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:20:00 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:20:00 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-23 18:20:00 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null +} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'2c574f18-2d6b-4580-bd8a-eda8c94c26eb'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:20:00 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:20:01 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '2c574f18-2d6b-4580-bd8a-eda8c94c26eb', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:20:00 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 0.926932, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json" + } +} +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 0.926932, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json" + } +} +2025-12-23 18:20:01 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:24:44 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:275] - ================================================== +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:276] - Workflow MCP Server 启动 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:277] - ================================================== +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:285] - 使用模式: api +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-23 18:24:44 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-23 18:24:44 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:24:43 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:24:44 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:24:43 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null + } +] +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:293] - 开始运行 MCP Server (stdio 模式) +2025-12-23 18:24:44 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:24:45 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:24:48 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:24:48 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-23 18:24:48 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 18:31:56", + "serviceId": "2002300699804364801", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", + "outputJsonSchema": null, + "lastExecutionTime": null +} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'282e2c5e-e68e-48f5-bfdb-1e04ffc18682'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:24:48 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:24:49 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '282e2c5e-e68e-48f5-bfdb-1e04ffc18682', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:24:48 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "1f154317-ca19-4073-b7b5-a2b2beb38a3f", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 1.146157, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/1f154317-ca19-4073-b7b5-a2b2beb38a3f.json" + } +} +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "1f154317-ca19-4073-b7b5-a2b2beb38a3f", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 1.146157, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/1f154317-ca19-4073-b7b5-a2b2beb38a3f.json" + } +} +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:294] - 提取 final_output 最后节点成功: key=f54a21ba-e3a3-461e-9a6b-e952087f4a5b +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:295] - 提取结果: {"q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?"} +2025-12-23 18:24:49 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log index b9c9ce5..198ab0a 100644 --- a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log +++ b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log @@ -1,36 +1,36 @@ -2025-12-20 18:03:07 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs -2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' -2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest -2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'Bearer wf_buh230o9iaea4n6aefsddcexa7p27ydl'} -2025-12-20 18:03:07 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None -2025-12-20 18:03:07 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:03:06 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) -2025-12-20 18:03:07 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started -2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:03:06 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { +2025-12-23 18:19:55 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-23 18:19:55 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-23 18:19:55 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:19:54 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:19:55 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:19:54 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { "msg": "查询成功", "code": 200, "data": [ @@ -39,9 +39,9 @@ "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -56,13 +56,13 @@ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] } -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { "msg": "查询成功", "code": 200, "data": [ @@ -71,9 +71,9 @@ "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -88,21 +88,21 @@ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] } -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ { "id": "2002300699812753409", "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -117,36 +117,36 @@ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 -2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) -2025-12-20 18:03:07 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor -2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') -2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: -2025-12-20 18:03:08 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest -2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest -2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 -2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... -2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} -2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 -2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent -2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: -2025-12-20 18:03:12 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest -2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-23 18:19:55 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) +2025-12-23 18:19:55 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-23 18:19:55 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:19:56 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-23 18:19:56 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:20:00 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:20:00 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-23 18:20:00 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { "id": "2002300699812753409", "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -161,97 +161,128 @@ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { "workflowId": "2002300699510763521", "inputs": { "query": "你好啊" } } -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "Bearer wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { "workflowId": "2002300699510763521", "inputs": { "query": "你好啊" } } -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 401, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'40f82dcb-2055-46b4-a9ae-1bbee5591306'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Content-Length', b'61'), (b'Date', b'Sat, 20 Dec 2025 10:03:10 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) -2025-12-20 18:03:12 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 401 " -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started -2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 401 -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '40f82dcb-2055-46b4-a9ae-1bbee5591306', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'content-length': '61', 'date': 'Sat, 20 Dec 2025 10:03:10 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - ERROR - [api_client.py:182] - [API错误] 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - ERROR - [api_client.py:183] - [API错误] 响应内容: {"msg":"API Key无效","code":401,"errorCode":"UNAUTHORIZED"} -2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - ERROR - [main.py:236] - 工作流执行失败: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute -Traceback (most recent call last): - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 167, in execute_workflow - response.raise_for_status() - File "D:\anaconda3\Lib\site-packages\httpx\_models.py", line 829, in raise_for_status - raise HTTPStatusError(message, request=request, response=self) -httpx.HTTPStatusError: Client error '401 ' for url 'http://192.168.2.236:8088/open/workflow/execute' -For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401 - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\main.py", line 232, in handle_call_tool - result = execute_workflow(request_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 268, in execute_workflow - return default_client.execute_workflow(request_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 184, in execute_workflow - raise Exception(error_msg) -Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute -2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent -2025-12-20 18:04:18 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs -2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' -2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest -2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} -2025-12-20 18:04:18 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None -2025-12-20 18:04:18 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:04:16 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) -2025-12-20 18:04:18 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started -2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:04:16 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { +2025-12-23 18:20:00 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'2c574f18-2d6b-4580-bd8a-eda8c94c26eb'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:20:00 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:20:01 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '2c574f18-2d6b-4580-bd8a-eda8c94c26eb', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:20:00 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 0.926932, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json" + } +} +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 +2025-12-23 18:20:01 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 0.926932, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json" + } +} +2025-12-23 18:20:01 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:24:44 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:275] - ================================================== +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:276] - Workflow MCP Server 启动 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:277] - ================================================== +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:285] - 使用模式: api +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-23 18:24:44 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-23 18:24:44 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:24:43 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:24:44 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:24:43 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { "msg": "查询成功", "code": 200, "data": [ @@ -260,9 +291,9 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -277,13 +308,13 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] } -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { "msg": "查询成功", "code": 200, "data": [ @@ -292,9 +323,9 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -309,21 +340,21 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] } -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ { "id": "2002300699812753409", "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -338,36 +369,36 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } ] -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 -2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) -2025-12-20 18:04:18 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor -2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') -2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: -2025-12-20 18:04:19 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest -2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest -2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 -2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... -2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} -2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 -2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent -2025-12-20 18:04:22 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: -2025-12-20 18:04:22 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest -2025-12-20 18:04:22 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-23 18:24:44 - lzwcai_workflow_to_mcp.main - INFO - [main.py:293] - 开始运行 MCP Server (stdio 模式) +2025-12-23 18:24:44 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-23 18:24:44 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:24:45 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-23 18:24:45 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-23 18:24:45 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:24:48 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-23 18:24:48 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-23 18:24:48 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { "id": "2002300699812753409", "createBy": "yy8z9", "createTime": "2025-12-20 16:51:02", "updateBy": "yy8z9", - "updateTime": "2025-12-20 17:59:26", + "updateTime": "2025-12-20 18:31:56", "serviceId": "2002300699804364801", - "uniqueName": "未命名工的方式作流001", + "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee", "description": "3123123123", "visualizable": 0, @@ -382,50 +413,50 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "tableMetadataIds": null, "executionCount": 0, "visualizationConfigs": null, - "inputJsonSchema": null, + "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}", "outputJsonSchema": null, "lastExecutionTime": null } -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { "workflowId": "2002300699510763521", "inputs": { "query": "你好啊" } } -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { "workflowId": "2002300699510763521", "inputs": { "query": "你好啊" } } -2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s -2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= -2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete -2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= -2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete -2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= -2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'62311551-e7ab-4d5d-adef-f59b1969a4cf'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:04:22 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) -2025-12-20 18:04:24 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " -2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= -2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete -2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started -2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '62311551-e7ab-4d5d-adef-f59b1969a4cf', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:04:22 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { +2025-12-23 18:24:48 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-23 18:24:48 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'282e2c5e-e68e-48f5-bfdb-1e04ffc18682'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Tue, 23 Dec 2025 10:24:48 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-23 18:24:49 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-23 18:24:49 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '282e2c5e-e68e-48f5-bfdb-1e04ffc18682', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Tue, 23 Dec 2025 10:24:48 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { "msg": "操作成功", "code": 200, "data": { "success": true, - "execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", + "execution_id": "1f154317-ca19-4073-b7b5-a2b2beb38a3f", "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", "status": "success", - "duration": 2.206175, + "duration": 1.146157, "nodes_executed": 3, "errors_count": 0, "final_output": { @@ -433,26 +464,26 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "query": "你好啊" }, "a480a344-7fa9-439b-8db6-79b136a79736": { - "text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + "text": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" }, "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { - "q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + "q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" } }, "error": null, - "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/1f154317-ca19-4073-b7b5-a2b2beb38a3f.json" } } -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 -2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { "msg": "操作成功", "code": 200, "data": { "success": true, - "execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", + "execution_id": "1f154317-ca19-4073-b7b5-a2b2beb38a3f", "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", "status": "success", - "duration": 2.206175, + "duration": 1.146157, "nodes_executed": 3, "errors_count": 0, "final_output": { @@ -460,14 +491,16 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/ "query": "你好啊" }, "a480a344-7fa9-439b-8db6-79b136a79736": { - "text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + "text": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" }, "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { - "q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + "q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?" } }, "error": null, - "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/1f154317-ca19-4073-b7b5-a2b2beb38a3f.json" } } -2025-12-20 18:04:24 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:294] - 提取 final_output 最后节点成功: key=f54a21ba-e3a3-461e-9a6b-e952087f4a5b +2025-12-23 18:24:49 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:295] - 提取结果: {"q": "你好!很高兴见到你。我注意到你用了特别的表情符号,是想表达亲切吗?🤗 如果你有任何问题或需要帮助,随时告诉我哦。今天想聊些什么呢?"} +2025-12-23 18:24:49 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log.2025-12-20 b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log.2025-12-20 new file mode 100644 index 0000000..b9c9ce5 --- /dev/null +++ b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/logs/lzwcai_workflow_to_mcp_daily.log.2025-12-20 @@ -0,0 +1,473 @@ +2025-12-20 18:03:07 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'Bearer wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-20 18:03:07 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-20 18:03:07 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:03:06 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-20 18:03:07 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:03:06 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } +] +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) +2025-12-20 18:03:07 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-20 18:03:07 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-20 18:03:08 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-20 18:03:08 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-20 18:03:12 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null +} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "Bearer wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 401, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'40f82dcb-2055-46b4-a9ae-1bbee5591306'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Content-Length', b'61'), (b'Date', b'Sat, 20 Dec 2025 10:03:10 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-20 18:03:12 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 401 " +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 401 +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '40f82dcb-2055-46b4-a9ae-1bbee5591306', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'content-length': '61', 'date': 'Sat, 20 Dec 2025 10:03:10 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - ERROR - [api_client.py:182] - [API错误] 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - ERROR - [api_client.py:183] - [API错误] 响应内容: {"msg":"API Key无效","code":401,"errorCode":"UNAUTHORIZED"} +2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.main - ERROR - [main.py:236] - 工作流执行失败: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute +Traceback (most recent call last): + File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 167, in execute_workflow + response.raise_for_status() + File "D:\anaconda3\Lib\site-packages\httpx\_models.py", line 829, in raise_for_status + raise HTTPStatusError(message, request=request, response=self) +httpx.HTTPStatusError: Client error '401 ' for url 'http://192.168.2.236:8088/open/workflow/execute' +For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401 + +During handling of the above exception, another exception occurred: + +Traceback (most recent call last): + File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\main.py", line 232, in handle_call_tool + result = execute_workflow(request_data) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 268, in execute_workflow + return default_client.execute_workflow(request_data) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\utils\api_client.py", line 184, in execute_workflow + raise Exception(error_msg) +Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/open/workflow/execute +2025-12-20 18:03:12 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-20 18:04:18 - root - INFO - [logger_config.py:117] - 日志系统初始化完成 - 日志目录: E:\yh-ai\project\lzwcai-szyg\lzwcai-mcp-server-package\lzwcai_workflow_to_mcp\lzwcai_workflow_to_mcp\logs +2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server' +2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest +2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:272] - ================================================== +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:273] - Workflow MCP Server 启动 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:274] - ================================================== +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:279] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None} +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:282] - 使用模式: api +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化,工作流ID: 2002300699510763521 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置,工作流ID: 2002300699510763521 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:56] - [客户端初始化] base_url=http://192.168.2.236:8088 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:57] - [客户端初始化] token=wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:58] - [客户端初始化] execute_timeout=300.0s +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:89] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:90] - [API请求] Headers: {'X-API-Key': 'wf_buh230o9iaea4n6aefsddcexa7p27ydl'} +2025-12-20 18:04:18 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None +2025-12-20 18:04:18 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value= +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:04:16 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-20 18:04:18 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2002300699510763521 "HTTP/1.1 200 " +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:97] - [API响应] HTTP 200 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:98] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:04:16 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:103] - [API响应] 获取工作流配置成功: workflow_id=2002300699510763521 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: { + "msg": "查询成功", + "code": 200, + "data": [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } + ] +} +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [ + { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null + } +] +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功,工作流ID: 2002300699510763521, 配置数量: 1 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 +2025-12-20 18:04:18 - lzwcai_workflow_to_mcp.main - INFO - [main.py:290] - 开始运行 MCP Server (stdio 模式) +2025-12-20 18:04:18 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor +2025-12-20 18:04:18 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0') +2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-20 18:04:19 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest +2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest +2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1 +2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:179] - 处理工具配置: name=weimingminggongdefangshizuoliu001_91bc43ee, description=3123123123... +2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:183] - 工具 weimingminggongdefangshizuoliu001_91bc43ee 的 inputSchema: {"type": "object", "properties": {"query": {"description": "问题", "type": "string", "format": "paragraph", "maxLength": 3000}}, "required": ["query"]} +2025-12-20 18:04:19 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 +2025-12-20 18:04:19 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent +2025-12-20 18:04:22 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: +2025-12-20 18:04:22 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest +2025-12-20 18:04:22 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type CallToolRequest +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:203] - 收到 CallTool 请求: name=weimingminggongdefangshizuoliu001_91bc43ee, arguments={"query": "你好啊"} +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: { + "id": "2002300699812753409", + "createBy": "yy8z9", + "createTime": "2025-12-20 16:51:02", + "updateBy": "yy8z9", + "updateTime": "2025-12-20 17:59:26", + "serviceId": "2002300699804364801", + "uniqueName": "未命名工的方式作流001", + "name": "weimingminggongdefangshizuoliu001_91bc43ee", + "description": "3123123123", + "visualizable": 0, + "toolPrompt": null, + "toolType": "api", + "datasourceId": null, + "sqlTemplate": null, + "sqlParams": "[{\"type\":\"paragraph\",\"name\":\"query\",\"displayName\":\"问题\",\"maxLength\":3000,\"defaultValue\":\"\",\"required\":true}]", + "resultType": null, + "sourceType": null, + "trainingTaskId": null, + "tableMetadataIds": null, + "executionCount": 0, + "visualizationConfigs": null, + "inputJsonSchema": null, + "outputJsonSchema": null, + "lastExecutionTime": null +} +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:220] - 使用工作流ID: 2002300699510763521 +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.main - INFO - [main.py:228] - 执行工作流请求数据: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:150] - [执行工作流] URL: http://192.168.2.236:8088/open/workflow/execute +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:151] - [执行工作流] Token: wf_buh230o9iaea4n6aefsddcexa7p27ydl +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:152] - [执行工作流] Headers: {"X-API-Key": "wf_buh230o9iaea4n6aefsddcexa7p27ydl", "Content-Type": "application/json", "Accept": "*/*"} +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:153] - [执行工作流] 请求参数: { + "workflowId": "2002300699510763521", + "inputs": { + "query": "你好啊" + } +} +2025-12-20 18:04:22 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s +2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request= +2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete +2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request= +2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete +2025-12-20 18:04:22 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request= +2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'', [(b'Vary', b'Origin'), (b'Vary', b'Access-Control-Request-Method'), (b'Vary', b'Access-Control-Request-Headers'), (b'X-Trace-Id', b'62311551-e7ab-4d5d-adef-f59b1969a4cf'), (b'X-RateLimit-Limit', b'100'), (b'X-RateLimit-Remaining', b'99'), (b'X-Content-Type-Options', b'nosniff'), (b'X-XSS-Protection', b'1; mode=block'), (b'X-Frame-Options', b'SAMEORIGIN'), (b'Content-Type', b'application/json;charset=UTF-8'), (b'Transfer-Encoding', b'chunked'), (b'Date', b'Sat, 20 Dec 2025 10:04:22 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')]) +2025-12-20 18:04:24 - httpx - INFO - [_client.py:1025] - HTTP Request: POST http://192.168.2.236:8088/open/workflow/execute "HTTP/1.1 200 " +2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request= +2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete +2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started +2025-12-20 18:04:24 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200 +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:165] - [API响应] Headers: {'vary': 'Origin, Access-Control-Request-Method, Access-Control-Request-Headers', 'x-trace-id': '62311551-e7ab-4d5d-adef-f59b1969a4cf', 'x-ratelimit-limit': '100', 'x-ratelimit-remaining': '99', 'x-content-type-options': 'nosniff', 'x-xss-protection': '1; mode=block', 'x-frame-options': 'SAMEORIGIN', 'content-type': 'application/json;charset=UTF-8', 'transfer-encoding': 'chunked', 'date': 'Sat, 20 Dec 2025 10:04:22 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'} +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功 +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 2.206175, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" + } +} +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 +2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: { + "msg": "操作成功", + "code": 200, + "data": { + "success": true, + "execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", + "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", + "status": "success", + "duration": 2.206175, + "nodes_executed": 3, + "errors_count": 0, + "final_output": { + "da9400b0-4754-4842-8a5e-dc20e2868cc6": { + "query": "你好啊" + }, + "a480a344-7fa9-439b-8db6-79b136a79736": { + "text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + }, + "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { + "q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我都很乐意陪伴你聊天哦!😊" + } + }, + "error": null, + "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" + } +} +2025-12-20 18:04:24 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/main.py b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/main.py index dd4a0f6..4b8f395 100644 --- a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/main.py +++ b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/main.py @@ -20,12 +20,12 @@ from mcp.server.stdio import stdio_server try: from .schema_converter import convert_sql_params_to_input_schema - from .utils.api_client import execute_workflow, get_workflow_by_id + from .utils.api_client import execute_workflow, get_workflow_by_id, extract_final_output from .utils.env_config import get_workflow_id from .utils.logger_config import setup_system_logging, get_logger except ImportError: from schema_converter import convert_sql_params_to_input_schema - from utils.api_client import execute_workflow, get_workflow_by_id + from utils.api_client import execute_workflow, get_workflow_by_id, extract_final_output from utils.env_config import get_workflow_id from utils.logger_config import setup_system_logging, get_logger @@ -232,6 +232,9 @@ async def handle_call_tool( result = execute_workflow(request_data) logger.info(f"工作流执行成功: {workflow_id}") logger.debug(f"工作流执行结果: {json.dumps(result, ensure_ascii=False, indent=2)}") + + # 提取 final_output 最后一个节点的值 + result = extract_final_output(result) except Exception as e: logger.error(f"工作流执行失败: {e}", exc_info=True) result = { diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/__pycache__/api_client.cpython-312.pyc b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/__pycache__/api_client.cpython-312.pyc index 5b7e5d4..eea50fb 100644 Binary files a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/__pycache__/api_client.cpython-312.pyc and b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/__pycache__/api_client.cpython-312.pyc differ diff --git a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/api_client.py b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/api_client.py index 700a097..8658ef0 100644 --- a/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/api_client.py +++ b/lzwcai_workflow_to_mcp/lzwcai_workflow_to_mcp/utils/api_client.py @@ -268,6 +268,39 @@ def execute_workflow( return default_client.execute_workflow(request_data) +def extract_final_output(response: Dict[str, Any]) -> Dict[str, Any]: + """ + 提取工作流执行结果中 final_output 的最后一个属性的所有值 + + Args: + response: execute_workflow 返回的响应数据 + + Returns: + final_output 中最后一个节点的输出值 + """ + try: + # 获取 data.final_output + data = response.get("data", {}) + final_output = data.get("final_output", {}) + + if not final_output: + logger.warning("final_output 为空") + return {} + + # 获取最后一个 key 的值 + last_key = list(final_output.keys())[-1] + result = final_output[last_key] + + logger.info(f"提取 final_output 最后节点成功: key={last_key}") + logger.debug(f"提取结果: {json.dumps(result, ensure_ascii=False)}") + + return result + + except Exception as e: + logger.error(f"提取 final_output 失败: {e}", exc_info=True) + return {} + + def process_workflow_response(response: Dict[str, Any]) -> List[Dict[str, Any]]: """ 处理API响应数据,映射为工作流配置格式