用途:修改已存在的 SigNoz 仪表盘,包括增删面板或组件、修改面板查询/标题/类型/显示设置、增删改仪表盘变量、重命名或改描述、调整面板布局与尺寸、切换面板类型(如图表↔表格↔数值)、增删阈值、更新标签。不适用于解释仪表盘(用 signoz-explaining-dashboards)或新建仪表盘(用 signoz-creating-dashboards)。
前置条件:需可用 SigNoz MCP 工具(signoz_get_dashboard、signoz_patch_dashboard、signoz_update_dashboard、signoz_list_dashboards、signoz_list_metrics、signoz_get_field_keys、signoz_get_field_values、signoz_execute_builder_query)。若不可用,先运行 signoz-mcp-setup,不要退回原始 HTTP 调用或手改 JSON。
主要流程:先用 id 或名称定位仪表盘(仅名称时用 signoz_list_dashboards 分页匹配 spec.display.name);必须调用 signoz_get_dashboard 获取完整状态;规划改动,破坏性操作(删面板、删变量、替换查询、改信号、改聚合或 groupBy)需先确认;优先用 signoz_patch_dashboard(RFC 6902)做定向修改,整体替换才用 signoz_update_dashboard,且需合并到获取到的 data 对象、name 原样回传、去掉只读字段;对新增或改动的查询面板必须做 dry-run(signoz_execute_builder_query,短绝对时间窗);最后简要报告改动。
限制:仅 source=user 的仪表盘可改,system 或 integration 不可变;时间范围与刷新是查看器控制,不持久化;SigNoz 用 12 列网格(0<=x<12,1<=width<=12,x+width<=12);面板与网格项需成对增删;查询面板恰好一个查询,TextPanel 的 queries 为 [];同一数组多次删除需按索引降序;写入失败不要重发相同载荷,同一方法最多两次尝试;不确定指标名时用 signoz_list_metrics 或询问用户,不要猜测。