feat: 新增HTML转URL工具服务,优化API转换器配置

- 新增lzwcai_mcpskills_visual2url项目,提供本地HTML文件、HTML代码转可访问URL的MCP工具
- 重构lzwcai_mcp_api_converter配置加载逻辑,取消内存缓存复用,强制拉取最新配置并新增缓存降级容错机制
- 升级lzwcai_mcp_api_converter至0.2.5、项目模板至0.1.3
- 更新各示例项目的环境配置参数与模板工具配置
This commit is contained in:
2026-05-25 11:48:12 +08:00
parent 992d97c0a4
commit fb61ae27cf
28 changed files with 1024 additions and 182 deletions

View File

@@ -1,49 +1,49 @@
2026-02-13 15:34:10 - 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
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server'
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:334] - ==================================================
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:335] - Workflow MCP Server 启动
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:336] - ==================================================
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:341] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None}
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:344] - 使用模式: api
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化工作流ID: 2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置工作流ID: 2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:115] - [客户端初始化] base_url=http://192.168.2.236:8088
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:116] - [客户端初始化] token=wf_ce270212b2ee45ab9c81714a7c243c56
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:117] - [客户端初始化] execute_timeout=600.0s
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:148] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:149] - [API请求] Headers: {'X-API-Key': 'wf_ce270212b2ee45ab9c81714a7c243c56'}
2026-02-13 15:34:11 - 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
2026-02-13 15:34:11 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x0000018F42AB4380>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request=<Request [b'GET']>
2026-02-13 15:34:11 - 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'Fri, 13 Feb 2026 07:34:05 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')])
2026-02-13 15:34:11 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2005892514011795457 "HTTP/1.1 200 "
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:156] - [API响应] HTTP 200
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:157] - [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': 'Fri, 13 Feb 2026 07:34:05 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:162] - [API响应] 获取工作流配置成功: workflow_id=2005892514011795457
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:163] - [API响应] Body: {
2026-03-28 12:30:33 - 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
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'workflow_mcp_server'
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:334] - ==================================================
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:335] - Workflow MCP Server 启动
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:336] - ==================================================
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:341] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None}
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:344] - 使用模式: api
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化工作流ID: 2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置工作流ID: 2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:115] - [客户端初始化] base_url=http://192.168.2.236:8088
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:116] - [客户端初始化] token=wf_bd39a583670c42ceab48b3353bf2ba43
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:117] - [客户端初始化] execute_timeout=600.0s
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:148] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:149] - [API请求] Headers: {'X-API-Key': 'wf_bd39a583670c42ceab48b3353bf2ba43'}
2026-03-28 12:30:34 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None
2026-03-28 12:30:34 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x0000016702CF9970>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - 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, 28 Mar 2026 04:30:30 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')])
2026-03-28 12:30:34 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2037527155235225601 "HTTP/1.1 200 "
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:156] - [API响应] HTTP 200
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:157] - [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, 28 Mar 2026 04:30:30 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'}
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:162] - [API响应] 获取工作流配置成功: workflow_id=2037527155235225601
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:163] - [API响应] Body: {
"msg": "查询成功",
"code": 200,
"data": [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -62,20 +62,20 @@
}
]
}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: {
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: {
"msg": "查询成功",
"code": 200,
"data": [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -94,17 +94,17 @@
}
]
}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -122,16 +122,16 @@
"lastExecutionTime": null
}
]
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功工作流ID: 2005892514011795457, 配置数量: 1
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:352] - 开始运行 MCP Server (stdio 模式)
2026-02-13 15:34:11 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor
2026-02-13 15:34:12 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0')
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: <mcp.shared.session.RequestResponder object at 0x0000018F42BC42C0>
2026-02-13 15:34:36 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:178] - 处理工具配置: name=dengjizichan_0220941f, description=阿三大苏打啊...
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:185] - 从 sqlParams 转换的 inputSchema: {"type": "object", "properties": {}, "required": []}
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - INFO - [main.py:237] - ListTools 响应: 返回 1 个工具
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功工作流ID: 2037527155235225601, 配置数量: 1
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:352] - 开始运行 MCP Server (stdio 模式)
2026-03-28 12:30:34 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor
2026-03-28 12:30:34 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0')
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: <mcp.shared.session.RequestResponder object at 0x0000016702D378C0>
2026-03-28 12:30:40 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:178] - 处理工具配置: name=yinxingliushuizhuangtaijiance_7c4d9a63, description=用于检测流水导入状态,检查是否全部导入完成...
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:185] - 从 sqlParams 转换的 inputSchema: {"type": "object", "properties": {}, "required": []}
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - INFO - [main.py:237] - ListTools 响应: 返回 1 个工具
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent

View File

@@ -1,49 +1,49 @@
2026-02-13 15:34:10 - 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
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:154] - Initializing server 'workflow_mcp_server'
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:380] - Registering handler for ListToolsRequest
2026-02-13 15:34:10 - mcp.server.lowlevel.server - DEBUG - [server.py:441] - Registering handler for CallToolRequest
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:334] - ==================================================
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:335] - Workflow MCP Server 启动
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:336] - ==================================================
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:341] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None}
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:344] - 使用模式: api
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化工作流ID: 2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置工作流ID: 2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:115] - [客户端初始化] base_url=http://192.168.2.236:8088
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:116] - [客户端初始化] token=wf_ce270212b2ee45ab9c81714a7c243c56
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:117] - [客户端初始化] execute_timeout=600.0s
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:148] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2005892514011795457
2026-02-13 15:34:10 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:149] - [API请求] Headers: {'X-API-Key': 'wf_ce270212b2ee45ab9c81714a7c243c56'}
2026-02-13 15:34:11 - 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
2026-02-13 15:34:11 - httpcore.connection - DEBUG - [_trace.py:45] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x0000018F42AB4380>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_headers.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - send_request_body.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_headers.started request=<Request [b'GET']>
2026-02-13 15:34:11 - 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'Fri, 13 Feb 2026 07:34:05 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')])
2026-02-13 15:34:11 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2005892514011795457 "HTTP/1.1 200 "
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.started request=<Request [b'GET']>
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - receive_response_body.complete
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.started
2026-02-13 15:34:11 - httpcore.http11 - DEBUG - [_trace.py:45] - response_closed.complete
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:156] - [API响应] HTTP 200
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:157] - [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': 'Fri, 13 Feb 2026 07:34:05 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:162] - [API响应] 获取工作流配置成功: workflow_id=2005892514011795457
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:163] - [API响应] Body: {
2026-03-28 12:30:33 - 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
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:162] - Initializing server 'workflow_mcp_server'
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:439] - Registering handler for ListToolsRequest
2026-03-28 12:30:33 - mcp.server.lowlevel.server - DEBUG - [server.py:519] - Registering handler for CallToolRequest
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:334] - ==================================================
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:335] - Workflow MCP Server 启动
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:336] - ==================================================
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:341] - 命令行参数: {'mode': 'api', 'json_path': None, 'workflow_id': None}
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:344] - 使用模式: api
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:103] - ApiLoader 初始化工作流ID: 2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.main - INFO - [main.py:111] - 开始从 API 加载工作流配置工作流ID: 2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:115] - [客户端初始化] base_url=http://192.168.2.236:8088
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:116] - [客户端初始化] token=wf_bd39a583670c42ceab48b3353bf2ba43
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:117] - [客户端初始化] execute_timeout=600.0s
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:148] - [API请求] GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2037527155235225601
2026-03-28 12:30:33 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:149] - [API请求] Headers: {'X-API-Key': 'wf_bd39a583670c42ceab48b3353bf2ba43'}
2026-03-28 12:30:34 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.started host='192.168.2.236' port=8088 local_address=None timeout=30.0 socket_options=None
2026-03-28 12:30:34 - httpcore.connection - DEBUG - [_trace.py:47] - connect_tcp.complete return_value=<httpcore._backends.sync.SyncStream object at 0x0000016702CF9970>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_headers.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - send_request_body.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_headers.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - 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, 28 Mar 2026 04:30:30 GMT'), (b'Keep-Alive', b'timeout=60'), (b'Connection', b'keep-alive')])
2026-03-28 12:30:34 - httpx - INFO - [_client.py:1025] - HTTP Request: GET http://192.168.2.236:8088/system/workflowManage/getByWorkflowId/2037527155235225601 "HTTP/1.1 200 "
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.started request=<Request [b'GET']>
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - receive_response_body.complete
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.started
2026-03-28 12:30:34 - httpcore.http11 - DEBUG - [_trace.py:47] - response_closed.complete
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:156] - [API响应] HTTP 200
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:157] - [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, 28 Mar 2026 04:30:30 GMT', 'keep-alive': 'timeout=60', 'connection': 'keep-alive'}
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - INFO - [api_client.py:162] - [API响应] 获取工作流配置成功: workflow_id=2037527155235225601
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.utils.api_client - DEBUG - [api_client.py:163] - [API响应] Body: {
"msg": "查询成功",
"code": 200,
"data": [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -62,20 +62,20 @@
}
]
}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: {
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:116] - API 响应原始数据: {
"msg": "查询成功",
"code": 200,
"data": [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -94,17 +94,17 @@
}
]
}
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:124] - API 响应 data 字段: [
{
"id": "2013554734817918978",
"createBy": "yy8z7",
"createTime": "2026-01-20 18:10:33",
"updateBy": "yy8z7",
"updateTime": "2026-02-13 15:30:40",
"serviceId": "2013554734784364545",
"uniqueName": "登记资产",
"name": "dengjizichan_0220941f",
"description": "阿三大苏打啊",
"id": "2037535460665982977",
"createBy": "duchangyuan",
"createTime": "2026-03-27 22:21:24",
"updateBy": "admin",
"updateTime": "2026-03-28 12:21:49",
"serviceId": "2037535460632428546",
"uniqueName": "银行流水状态检测",
"name": "yinxingliushuizhuangtaijiance_7c4d9a63",
"description": "用于检测流水导入状态,检查是否全部导入完成",
"visualizable": 0,
"toolPrompt": null,
"toolType": "api",
@@ -122,16 +122,16 @@
"lastExecutionTime": null
}
]
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功工作流ID: 2005892514011795457, 配置数量: 1
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置
2026-02-13 15:34:11 - lzwcai_workflow_to_mcp.main - INFO - [main.py:352] - 开始运行 MCP Server (stdio 模式)
2026-02-13 15:34:11 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor
2026-02-13 15:34:12 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0')
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:582] - Received message: <mcp.shared.session.RequestResponder object at 0x0000018F42BC42C0>
2026-02-13 15:34:36 - mcp.server.lowlevel.server - INFO - [server.py:619] - Processing request of type ListToolsRequest
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:621] - Dispatching request of type ListToolsRequest
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:178] - 处理工具配置: name=dengjizichan_0220941f, description=阿三大苏打啊...
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:185] - 从 sqlParams 转换的 inputSchema: {"type": "object", "properties": {}, "required": []}
2026-02-13 15:34:36 - lzwcai_workflow_to_mcp.main - INFO - [main.py:237] - ListTools 响应: 返回 1 个工具
2026-02-13 15:34:36 - mcp.server.lowlevel.server - DEBUG - [server.py:662] - Response sent
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:135] - 从 API 加载工作流配置成功工作流ID: 2037527155235225601, 配置数量: 1
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:165] - 已加载 1 个工具配置
2026-03-28 12:30:34 - lzwcai_workflow_to_mcp.main - INFO - [main.py:352] - 开始运行 MCP Server (stdio 模式)
2026-03-28 12:30:34 - asyncio - DEBUG - [proactor_events.py:634] - Using proactor: IocpProactor
2026-03-28 12:30:34 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0')
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:675] - Received message: <mcp.shared.session.RequestResponder object at 0x0000016702D378C0>
2026-03-28 12:30:40 - mcp.server.lowlevel.server - INFO - [server.py:720] - Processing request of type ListToolsRequest
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:723] - Dispatching request of type ListToolsRequest
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - INFO - [main.py:171] - 收到 ListTools 请求,当前配置数量: 1
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:178] - 处理工具配置: name=yinxingliushuizhuangtaijiance_7c4d9a63, description=用于检测流水导入状态,检查是否全部导入完成...
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - DEBUG - [main.py:185] - 从 sqlParams 转换的 inputSchema: {"type": "object", "properties": {}, "required": []}
2026-03-28 12:30:40 - lzwcai_workflow_to_mcp.main - INFO - [main.py:237] - ListTools 响应: 返回 1 个工具
2026-03-28 12:30:40 - mcp.server.lowlevel.server - DEBUG - [server.py:790] - Response sent

View File

@@ -7,8 +7,8 @@ import os
if __name__ == "__main__":
# 设置环境变量
os.environ["workflowId"] = "2005892514011795457"
os.environ["workflowExecuteKey"] = "wf_ce270212b2ee45ab9c81714a7c243c56"
os.environ["workflowId"] = "2037527155235225601"
os.environ["workflowExecuteKey"] = "wf_bd39a583670c42ceab48b3353bf2ba43"
os.environ["backendBaseUrl"] = "http://192.168.2.236:8088"
# Import and run the actual MCP server