连续多个 start_article_summary_job 调用报 MCP 超时(-32001 Request timed out),但 job 实际执行了(run_state.json 显示 generate_markdown 阶段失败,job 目录正常生成)。
start_article_summary_job
run_state.json
generate_markdown
server.py 的 start_article_summary_job handler 用同步方式处理请求:
server.py
subprocess.Popen(start_new_session=True)
job 本身正常运行,只是响应没能通过 MCP 通道发回来。
将 job 启动改造为真正的非阻塞模式:
concurrent.futures.ThreadPoolExecutor
get_article_summary_job_status
在 get_article_summary_job_status 正常可用的情况下:
get_article_summary_job_status(job_id)
status=running
所有通过 OpenClaw MCP 调用 start_article_summary_job 的场景
复现时间:2026-04-16
No dependencies set.
The note is not visible to the blocked user.
问题
连续多个
start_article_summary_job调用报 MCP 超时(-32001 Request timed out),但 job 实际执行了(run_state.json显示generate_markdown阶段失败,job 目录正常生成)。根因
server.py的start_article_summary_jobhandler 用同步方式处理请求:subprocess.Popen(start_new_session=True)启动 job runnerjob 本身正常运行,只是响应没能通过 MCP 通道发回来。
修复方向
将 job 启动改造为真正的非阻塞模式:
concurrent.futures.ThreadPoolExecutor)启动 job runner,主线程立即返回响应get_article_summary_job_status查询验证方法
在
get_article_summary_job_status正常可用的情况下:start_article_summary_jobget_article_summary_job_status(job_id)status=running,说明 job 在跑,不能按失败处理影响范围
所有通过 OpenClaw MCP 调用
start_article_summary_job的场景复现时间:2026-04-16