-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
Description
当在 Docker 中部署的 xiaohongshu-mcp 实例上使用 publish_content 工具时,应用程序会发生 Panic 并崩溃。错误信息 {-32000 Inspected target navigated or closed } 和堆栈跟踪表明,底层的 go-rod 浏览器自动化库在尝试执行命令时失去了对目标页面的控制。
根据堆栈跟踪,Panic 具体发生在 mustClickPublishTab 函数中,该函数在 NewPublishImageAction 的初始化过程中被调用。这表明,当自动化脚本尝试在小红书网站上查找并点击“发布”选项卡元素时,页面发生了意外的导航或关闭。这很可能是由于小红书前端UI/UX最近发生了变更,导致现有的自动化逻辑变得脆弱并执行失败。
复现步骤
复现此错误的操作步骤:
- 使用提供的 Docker 环境部署
xiaohongshu-mcp服务。 - 调用
publish_content工具,并提供有效的参数(如title,content,images,tags)。 - 工具尝试运行浏览器自动化以发布内容。
- 服务发生 Panic 并退出。
预期行为
publish_content 工具应成功完成自动化流程,将内容发布到小红书,且应用程序不发生 Panic。
实际行为
应用程序发生 Panic,并报告错误 {-32000 Inspected target navigated or closed }。
环境信息
- 应用:
xiaohongshu-mcp - 部署方式: Docker
- 触发操作:
publish_content
堆栈跟踪 (Stack Trace)
ERRO[1916] Tool handler panicked panic="{-32000 Inspected target navigated or closed }" tool=publish_content
ERRO[1916] Stack trace:
goroutine 578 [running]:
runtime/debug.Stack()
/usr/local/go/src/runtime/debug/stack.go:26 +0x5e
main.registerTools.withPanicRecovery[...].func16.1()
/src/mcp_server.go:111 +0x1dd
panic({0xa1d720?, 0xc00070cba0?})
/usr/local/go/src/runtime/panic.go:792 +0x132
github.com/go-rod/rod/lib/utils.init.func2({0xa1d720?, 0xc00070cba0?})
/go/pkg/mod/github.com/go-rod/rod@v0.116.2/lib/utils/utils.go:68 +0x1d
github.com/xpzouying/headless_browser.New.New.(*Browser).WithPanic.genE.func1({0xc00076ac20?, 0xb252a5?, 0xc0000fc008?})
/go/pkg/mod/github.com/go-rod/rod@v0.116.2/must.go:36 +0x5c
github.com/go-rod/rod.(*Page).MustElement(0xc00089b4a0, {0xb252a5?, 0xc0008933d8?})
/go/pkg/mod/github.com/go-rod/rod@v0.116.2/must.go:583 +0x92
github.com/xpzouying/xiaohongshu-mcp/xiaohongshu.mustClickPublishTab(0xc00089b4a0, {0xb1fa75, 0xc})
/src/xiaohongshu/publish.go:101 +0x45
github.com/xpzouying/xiaohongshu-mcp/xiaohongshu.NewPublishImageAction(0xc00089b4a0)
/src/xiaohongshu/publish.go:41 +0x6a
main.(*XiaohongshuService).publishContent(0xc0008935e8?, {0xe8df78, 0xc000596840}, {{0xc000718090, 0x2a}, {0xc0006ff400, 0x39f}, {0xc00076a5e0, 0x1, 0x1}, ...})
/src/service.go:220 +0xa7
main.(*XiaohongshuService).PublishContent(0x12ec620, {0xe8df78, 0xc000596840}, 0xc000893758)
/src/service.go:191 +0x170
main.(*AppServer).handlePublishContent(0xc0004da160, {0xe8df78, 0xc000596840}, 0xc000893998)
/src/mcp_handlers.go:144 +0x574
main.registerTools.func4({0xe8df78, 0xc000596840}, 0x16?, {{0xc000718090, 0x2a}, {0xc0006ff400, 0x39f}, {0xc00076a530, 0x1, 0x1}, ...})
/src/mcp_server.go:182 +0x3ac
main.registerTools.withPanicRecovery[...].func16(0xc00017d038?, {{0xc000718090, 0x2a}, {0xc0006ff400, 0x39f}, {0xc00076a530, 0x1, 0x1}, {0xc00076a540, 0x1, ...}})
/src/mcp_server.go:126 +0x119
github.com/modelcontextprotocol/go-sdk/mcp.toolForErr[...].func1(0xc000688060)
/go/pkg/mod/github.com/modelcontextprotocol/go-sdk@v0.7.0/mcp/server.go:259 +0x28e
github.com/modelcontextprotocol/go-sdk/mcp.(*Server).callTool(0xc0004ec000, {0xe8df78, 0xc000596840}, 0xc000688060)
/go/pkg/mod/github.com/modelcontextprotocol/go-sdk@v0.7.0/mcp/server.go:527 +0xfb补充说明
在 mustClickPublishTab 处发生错误表明,用于定位到发布页面的元素选择器或预期的页面流程可能已失效。自动化脚本很可能需要更新,以适配当前小红书网站的行为。
Metadata
Metadata
Assignees
Labels
No labels