chore(lzwcai_demp_tool_server_dify_to_mcp_test): 更新包版本从0.1.0到0.1.1

- 更新pyproject.toml中的版本号从0.1.0到0.1.1
- 更新PKG-INFO中的版本号从0.1.0到0.1.1
- 保持包的描述信息不变
This commit is contained in:
2025-12-23 18:25:22 +08:00
parent 844c77a660
commit cfc00f649a
9 changed files with 1261 additions and 213 deletions

View File

@@ -1,6 +1,6 @@
Metadata-Version: 2.4 Metadata-Version: 2.4
Name: lzwcai-demp-tool-server-dify-to-mcp-test 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平台并进行推理。 Summary: 这是一个Dify to MCP的集成工具通过Dify的API接口将Dify的模型部署到MCP平台并进行推理。
Requires-Python: >=3.10 Requires-Python: >=3.10
Requires-Dist: httpx>=0.28.1 Requires-Dist: httpx>=0.28.1

View File

@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "lzwcai-demp-tool-server-dify-to-mcp-test" 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平台并进行推理。" description = "这是一个Dify to MCP的集成工具通过Dify的API接口将Dify的模型部署到MCP平台并进行推理。"
requires-python = ">=3.10" requires-python = ">=3.10"
dependencies = [ dependencies = [

View File

@@ -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-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=<httpcore._backends.sync.SyncStream object at 0x000001E350E119A0>
2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x000001E350E2DC40>
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: <mcp.shared.session.RequestResponder object at 0x000001E350DDA3C0>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<httpcore._backends.sync.SyncStream object at 0x000001B44A89F380>
2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x000001B44A911070>
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: <mcp.shared.session.RequestResponder object at 0x000001B44A8D15E0>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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

View File

@@ -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-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-20 18:03:07 - 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: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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-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-20 18:03:07 - 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: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-23 18:19:55 - 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-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-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-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-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-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-20 18:03:07 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x00000155217CC380> 2025-12-23 18:19:55 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x000001E350E119A0>
2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']> 2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete 2025-12-23 18:19:55 - 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=<Request [b'GET']> 2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request=<Request [b'GET']>
2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete 2025-12-23 18:19:55 - 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=<Request [b'GET']> 2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request=<Request [b'GET']>
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-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-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-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-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'GET']> 2025-12-23 18:19:55 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'GET']>
2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete 2025-12-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-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-20 18:03:07 - 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 - 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 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:104] - [API响应] Body: {
"msg": "查询成功", "msg": "查询成功",
"code": 200, "code": 200,
"data": [ "data": [
@@ -39,9 +39,9 @@
"createBy": "yy8z9", "createBy": "yy8z9",
"createTime": "2025-12-20 16:51:02", "createTime": "2025-12-20 16:51:02",
"updateBy": "yy8z9", "updateBy": "yy8z9",
"updateTime": "2025-12-20 17:59:26", "updateTime": "2025-12-20 18:31:56",
"serviceId": "2002300699804364801", "serviceId": "2002300699804364801",
"uniqueName": "未命名工的方式作流001", "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee",
"name": "weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee",
"description": "3123123123", "description": "3123123123",
"visualizable": 0, "visualizable": 0,
@@ -56,13 +56,13 @@
"tableMetadataIds": null, "tableMetadataIds": null,
"executionCount": 0, "executionCount": 0,
"visualizationConfigs": null, "visualizationConfigs": null,
"inputJsonSchema": null, "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}",
"outputJsonSchema": null, "outputJsonSchema": null,
"lastExecutionTime": 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": "查询成功", "msg": "查询成功",
"code": 200, "code": 200,
"data": [ "data": [
@@ -71,9 +71,9 @@
"createBy": "yy8z9", "createBy": "yy8z9",
"createTime": "2025-12-20 16:51:02", "createTime": "2025-12-20 16:51:02",
"updateBy": "yy8z9", "updateBy": "yy8z9",
"updateTime": "2025-12-20 17:59:26", "updateTime": "2025-12-20 18:31:56",
"serviceId": "2002300699804364801", "serviceId": "2002300699804364801",
"uniqueName": "未命名工的方式作流001", "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee",
"name": "weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee",
"description": "3123123123", "description": "3123123123",
"visualizable": 0, "visualizable": 0,
@@ -88,21 +88,21 @@
"tableMetadataIds": null, "tableMetadataIds": null,
"executionCount": 0, "executionCount": 0,
"visualizationConfigs": null, "visualizationConfigs": null,
"inputJsonSchema": null, "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}",
"outputJsonSchema": null, "outputJsonSchema": null,
"lastExecutionTime": 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", "id": "2002300699812753409",
"createBy": "yy8z9", "createBy": "yy8z9",
"createTime": "2025-12-20 16:51:02", "createTime": "2025-12-20 16:51:02",
"updateBy": "yy8z9", "updateBy": "yy8z9",
"updateTime": "2025-12-20 17:59:26", "updateTime": "2025-12-20 18:31:56",
"serviceId": "2002300699804364801", "serviceId": "2002300699804364801",
"uniqueName": "未命名工的方式作流001", "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee",
"name": "weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee",
"description": "3123123123", "description": "3123123123",
"visualizable": 0, "visualizable": 0,
@@ -117,36 +117,36 @@
"tableMetadataIds": null, "tableMetadataIds": null,
"executionCount": 0, "executionCount": 0,
"visualizationConfigs": null, "visualizationConfigs": null,
"inputJsonSchema": null, "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}",
"outputJsonSchema": null, "outputJsonSchema": null,
"lastExecutionTime": null "lastExecutionTime": null
} }
] ]
2025-12-20 18:03:07 - 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:135] - 从 API 加载工作流配置成功工作流ID: 2002300699510763521, 配置数量: 1
2025-12-20 18:03:07 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置 2025-12-23 18:19:55 - 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-23 18:19:55 - 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-23 18:19:55 - 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-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-20 18:03:08 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: <mcp.shared.session.RequestResponder object at 0x000001552178D700> 2025-12-23 18:19:56 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: <mcp.shared.session.RequestResponder object at 0x000001E350E2DC40>
2025-12-20 18:03:08 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest 2025-12-23 18:19:56 - 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-23 18:19:56 - 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-23 18:19:56 - 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-23 18:19:56 - 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-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-20 18:03:08 - lzwcai_workflow_to_mcp.main - INFO - [main.py:193] - ListTools 响应: 返回 1 个工具 2025-12-23 18:19:56 - 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-23 18:19:56 - 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: <mcp.shared.session.RequestResponder object at 0x00000155218D4A70> 2025-12-23 18:20:00 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: <mcp.shared.session.RequestResponder object at 0x000001E350DDA3C0>
2025-12-20 18:03:12 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type CallToolRequest 2025-12-23 18:20:00 - 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-23 18:20:00 - 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-23 18:20:00 - 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:20:00 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:216] - 找到工具配置: {
"id": "2002300699812753409", "id": "2002300699812753409",
"createBy": "yy8z9", "createBy": "yy8z9",
"createTime": "2025-12-20 16:51:02", "createTime": "2025-12-20 16:51:02",
"updateBy": "yy8z9", "updateBy": "yy8z9",
"updateTime": "2025-12-20 17:59:26", "updateTime": "2025-12-20 18:31:56",
"serviceId": "2002300699804364801", "serviceId": "2002300699804364801",
"uniqueName": "未命名工的方式作流001", "uniqueName": "3123123123-workflow服务_weimingminggongdefangshizuoliu001_91bc43ee",
"name": "weimingminggongdefangshizuoliu001_91bc43ee", "name": "weimingminggongdefangshizuoliu001_91bc43ee",
"description": "3123123123", "description": "3123123123",
"visualizable": 0, "visualizable": 0,
@@ -161,271 +161,50 @@
"tableMetadataIds": null, "tableMetadataIds": null,
"executionCount": 0, "executionCount": 0,
"visualizationConfigs": null, "visualizationConfigs": null,
"inputJsonSchema": null, "inputJsonSchema": "{\"type\":\"object\",\"properties\":{\"query\":{\"description\":\"问题\",\"type\":\"string\",\"format\":\"paragraph\",\"maxLength\":3000}},\"required\":[\"query\"]}",
"outputJsonSchema": null, "outputJsonSchema": null,
"lastExecutionTime": null "lastExecutionTime": null
} }
2025-12-20 18:03:12 - 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: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:228] - 执行工作流请求数据: {
"workflowId": "2002300699510763521", "workflowId": "2002300699510763521",
"inputs": { "inputs": {
"query": "你好啊" "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-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-20 18:03:12 - 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: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-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-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:153] - [执行工作流] 请求参数: {
"workflowId": "2002300699510763521", "workflowId": "2002300699510763521",
"inputs": { "inputs": {
"query": "你好啊" "query": "你好啊"
} }
} }
2025-12-20 18:03:12 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:154] - [执行工作流] 超时时间: 300.0s 2025-12-23 18:20:00 - 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=<Request [b'POST']> 2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'POST']>
2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete 2025-12-23 18:20:00 - 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=<Request [b'POST']> 2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request=<Request [b'POST']>
2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete 2025-12-23 18:20:00 - 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=<Request [b'POST']> 2025-12-23 18:20:00 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request=<Request [b'POST']>
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-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-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-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-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'POST']> 2025-12-23 18:20:01 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'POST']>
2025-12-20 18:03:12 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete 2025-12-23 18:20:01 - 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-23 18:20:01 - 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-23 18:20:01 - 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-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:164] - [API响应] HTTP 200
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-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-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-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:170] - [API响应] 执行工作流成功
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-23 18:20:01 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:171] - [API响应] Body: {
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=<httpcore._backends.sync.SyncStream object at 0x0000025DD0ED1F70>
2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x0000025DCF92FF50>
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: <mcp.shared.session.RequestResponder object at 0x0000025DD0D21340>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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": "操作成功", "msg": "操作成功",
"code": 200, "code": 200,
"data": { "data": {
"success": true, "success": true,
"execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870",
"workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5",
"status": "success", "status": "success",
"duration": 2.206175, "duration": 0.926932,
"nodes_executed": 3, "nodes_executed": 3,
"errors_count": 0, "errors_count": 0,
"final_output": { "final_output": {
@@ -433,26 +212,26 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/
"query": "你好啊" "query": "你好啊"
}, },
"a480a344-7fa9-439b-8db6-79b136a79736": { "a480a344-7fa9-439b-8db6-79b136a79736": {
"text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我很乐意陪伴你聊天哦!😊" "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊"
}, },
"f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": {
"q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我很乐意陪伴你聊天哦!😊" "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊"
} }
}, },
"error": null, "error": null,
"log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json"
} }
} }
2025-12-20 18:04:24 - lzwcai_workflow_to_mcp.main - INFO - [main.py:233] - 工作流执行成功: 2002300699510763521 2025-12-23 18:20:01 - 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:20:01 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:234] - 工作流执行结果: {
"msg": "操作成功", "msg": "操作成功",
"code": 200, "code": 200,
"data": { "data": {
"success": true, "success": true,
"execution_id": "e6dcd942-1592-45bb-8af7-d7d25df338ed", "execution_id": "d8ff9fc7-530c-4b77-a8a8-07d51aa79870",
"workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5", "workflow_id": "3dc9d954-c270-4bbf-aa3d-5945c6acb2f5",
"status": "success", "status": "success",
"duration": 2.206175, "duration": 0.926932,
"nodes_executed": 3, "nodes_executed": 3,
"errors_count": 0, "errors_count": 0,
"final_output": { "final_output": {
@@ -460,14 +239,268 @@ Exception: 执行工作流API请求失败 (HTTP 401): http://192.168.2.236:8088/
"query": "你好啊" "query": "你好啊"
}, },
"a480a344-7fa9-439b-8db6-79b136a79736": { "a480a344-7fa9-439b-8db6-79b136a79736": {
"text": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我很乐意陪伴你聊天哦!😊" "text": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊"
}, },
"f54a21ba-e3a3-461e-9a6b-e952087f4a5b": { "f54a21ba-e3a3-461e-9a6b-e952087f4a5b": {
"q": "你好呀!✨ 很高兴见到你!今天过得怎么样呀?希望你度过了愉快的一天。我今天刚整理完知识库,准备了很多有趣的话题和实用的信息,希望能和你一起探讨、学习。不知道你今天想聊些什么呢?无论是有趣的故事、需要解决的问题,还是纯粹想聊聊日常,我很乐意陪伴你聊天哦!😊" "q": "你好!看起来你可能感兴趣于某方面,但还没具体说明?如果需要帮助,尽管告诉我,我很乐意帮忙解答或讨论各种话题!😊"
} }
}, },
"error": null, "error": null,
"log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/e6dcd942-1592-45bb-8af7-d7d25df338ed.json" "log_id": "logs/3dc9d954-c270-4bbf-aa3d-5945c6acb2f5/d8ff9fc7-530c-4b77-a8a8-07d51aa79870.json"
} }
} }
2025-12-20 18:04:24 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent 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=<httpcore._backends.sync.SyncStream object at 0x000001B44A89F380>
2025-12-23 18:24:44 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x000001B44A911070>
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: <mcp.shared.session.RequestResponder object at 0x000001B44A8D15E0>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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

View File

@@ -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=<httpcore._backends.sync.SyncStream object at 0x00000155217CC380>
2025-12-20 18:03:07 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x000001552178D700>
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: <mcp.shared.session.RequestResponder object at 0x00000155218D4A70>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<httpcore._backends.sync.SyncStream object at 0x0000025DD0ED1F70>
2025-12-20 18:04:18 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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=<Request [b'GET']>
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: <mcp.shared.session.RequestResponder object at 0x0000025DCF92FF50>
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: <mcp.shared.session.RequestResponder object at 0x0000025DD0D21340>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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=<Request [b'POST']>
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

View File

@@ -20,12 +20,12 @@ from mcp.server.stdio import stdio_server
try: try:
from .schema_converter import convert_sql_params_to_input_schema 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.env_config import get_workflow_id
from .utils.logger_config import setup_system_logging, get_logger from .utils.logger_config import setup_system_logging, get_logger
except ImportError: except ImportError:
from schema_converter import convert_sql_params_to_input_schema 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.env_config import get_workflow_id
from utils.logger_config import setup_system_logging, get_logger from utils.logger_config import setup_system_logging, get_logger
@@ -232,6 +232,9 @@ async def handle_call_tool(
result = execute_workflow(request_data) result = execute_workflow(request_data)
logger.info(f"工作流执行成功: {workflow_id}") logger.info(f"工作流执行成功: {workflow_id}")
logger.debug(f"工作流执行结果: {json.dumps(result, ensure_ascii=False, indent=2)}") logger.debug(f"工作流执行结果: {json.dumps(result, ensure_ascii=False, indent=2)}")
# 提取 final_output 最后一个节点的值
result = extract_final_output(result)
except Exception as e: except Exception as e:
logger.error(f"工作流执行失败: {e}", exc_info=True) logger.error(f"工作流执行失败: {e}", exc_info=True)
result = { result = {

View File

@@ -268,6 +268,39 @@ def execute_workflow(
return default_client.execute_workflow(request_data) 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]]: def process_workflow_response(response: Dict[str, Any]) -> List[Dict[str, Any]]:
""" """
处理API响应数据映射为工作流配置格式 处理API响应数据映射为工作流配置格式