Telemetry 命令
有关收集数据、安装标识、保留期限和关闭方法的说明,请阅读隐私与产品使用遥测。
使用 telemetry 查看或修改当前操作系统用户的产品使用遥测设置。
1mcp telemetry status
1mcp telemetry status --json
1mcp telemetry disable
1mcp telemetry enable
1mcp telemetry reset作用范围与控制
即使通过 --context 或 --url 选择了远程运行时,这些命令也只修改本地设置。--config-dir、检出目录和项目选择不改变安装状态的存储位置。状态查询和控制命令不计为使用活动,也不会创建 UUID 或队列。帮助和版本查询同样不创建产品状态。
status显示持久化偏好、当前进程的有效策略、标识是否存在、队列大小和协调状态,不显示 UUID。状态目录不存在时不会创建它。disable保存关闭偏好并清除未发送数据,保留已有 UUID。enable保存开启偏好,不创建 UUID,也不覆盖进程、CI 或测试抑制。reset清除本地 UUID 和未发送数据,保留偏好。只有之后允许采集时才会创建新 UUID;已经发送到服务端的记录不会被删除。旧进程不能恢复旧标识或队列。
在文件系统正常运行时,本地运行时会在五秒内观察到已保存的关闭或重置设置,丢弃旧代际事实,并尽力中止自身正在发送的请求。已经传输的数据无法撤回。轮询和发送时机不产生使用活动或标识。重置或重新开启后,之后的真实活动可以申请新代际;接纳尚未完成时到达的活动可能丢失。远程运行时仍遵循其所有者的设置。
采集策略
采集默认开启,聚合摘要发送到第一方接收端 https://ingest.1mcp.app/v1/summaries。采集字段由版本化代码固定,不会通过下载的策略扩展。首次接纳活动前,会在标准错误输出中显示通知,包含关闭命令和文档链接。正常并发启动共享一次通知和一个随机 UUID。在通知已输出但完成状态尚未落盘时崩溃,通知可能重复。
有效命令处理器记录一次固定命令族结果;生命周期命令在启动就绪、失败或取消时计数一次。运行时负责已接纳的 MCP 操作和支持的 Admin 功能操作。代理转发及所有者启动的内部 CLI 子进程不重复计数。命令、功能和操作是不同指标,不能相加作为独立用户操作数。协议 v1 将取消归为失败;按既有语义以零退出的交互取消仍归为命令成功。很短的命令及立即退出可能在异步持久化完成前丢失计数。遥测不会写入 MCP 标准输出。
覆盖范围、固定标签及解释见CLI 与 Admin 采用情况、MCP 操作及配置分桶。不支持的 Admin 操作不计数。input_required 表示协议响应成功,不代表用户任务已经完成。传输方式描述运行时入口:标准输入输出代理转发到 HTTP 时记录 http,直接连接运行时标准输入输出时记录 stdio。
| 设置 | 效果 |
|---|---|
--product-telemetry=false、--no-product-telemetry 或 ONE_MCP_PRODUCT_TELEMETRY=false | 仅抑制当前进程,不修改其他进程的队列 |
DO_NOT_TRACK=true | 抑制当前进程 |
CI=true | 默认关闭,需单独指定 --product-telemetry-ci=true 或 ONE_MCP_PRODUCT_TELEMETRY_CI=true 才允许采集 |
已保存的 disable | 始终优先于进程开启和 CI 开启设置 |
| 测试进程 | 始终抑制,普通端到端测试不能开启采集 |
布尔值支持不区分大小写的 true/false、1/0 和 yes/no。标准 CI/DO_NOT_TRACK 未设置或为空时视为 false,其他无效值会被拒绝。两个遥测选项应使用显式值。CI 数据使用独立的 CI 维度。
标识、存储与发送
macOS/Linux 的私有状态位于 ~/.config/1mcp/product-telemetry,Windows 位于 ~/AppData/Roaming/1mcp/product-telemetry。同一操作系统用户的本地运行时作用域共享此状态。POSIX 目录和文件必须仅所有者可访问(0700/0600);Windows 使用受保护的当前用户 ACL,并拒绝重解析点。隐私验证不可用或被拒绝时停止采集。状态和控制命令会报告失败,不会误报成功。
摘要包含随机安装 UUID、实际活动发生时间(秒精度)、版本、操作系统、架构、Node 主版本和 CI 分类。计数按 UTC 日期及上述维度聚合。每个计数器仅包含固定的类型、名称、结果、传输、客户端族、分桶及计数;客户端族不包含任意名称、标题或版本。不采集业务内容、参数及结果、凭据、URL/IP/请求头、路径、后端/工具/预设/标签名称、原始错误、环境快照、诊断指纹、追踪关联信息及运行时/作用域/会话标识。产品使用遥测与运维遥测及诊断日志独立。未发送数据七天过期;序列化队列最多 256 KiB,过期或最早数据会被丢弃。每批最多 100 条摘要、64 KiB;每条摘要最多 16 个计数器,每个计数器最多 1,000,000。
发送利用已有执行机会,请求期限为 1.5 秒。每批在唯一一次发送尝试前从持久队列中移除。错误、拒绝、超时、结果不明和进程终止均不会使已尝试的数据重新入队。移除后、传输前崩溃会丢失该批数据。命令、就绪和关闭流程不会等待发送;很短的命令可能丢失最终计数,包括接纳尚未完成的情况。后台定时器和传输句柄不会阻止进程退出。
第一方服务保留明细 90 天,与安装标识关联的同期群历史最多 12 个月,不活跃的服务端标识在 12 个月后过期。不含 UUID 的每日总量可以长期保留。这些服务端期限不会使本地 UUID 过期,本地 UUID 保留到显式重置。这些计数是安装状态的近似观测,不代表人数或设备数。关闭、离线及发送丢失会造成缺失,重置可能将一次安装计为两次。明确开启的 CI 数据独立分组,不进入主要安装及留存指标。各维度的去重安装数存在重叠,不能相加作为全局去重总数。同期群起点是保留历史中首次可见的活动,不是已知的安装日期;第零个月可能仅覆盖部分月份。
私有报表区分已观测、缺失、过时及暂定日期。覆盖缺失不等于观测为零;当天数据仍为暂定值,迟到摘要可能修改历史日期。配置分桶统计观测频次,而不是当前总体配置;工具覆盖不可用时省略观测,确认完整的空目录则记录 0。
协调繁忙或不确定
不会因锁的时间过长而抢占仍存活的所有者。确认主锁所有者已退出后,可以在独立的获取守卫下恢复。所有者元数据缺失或损坏、权限不明或守卫遗留时,系统停止采集。status 显示 busy-or-ambiguous;采集会丢弃工作,不影响原命令。
离线恢复步骤:先停止该操作系统用户的所有本地 1MCP 采集进程,检查存在的 guard/owner.json 和 lock/owner.json,并独立确认每个记录的进程都已退出。只有完成这些检查后,才删除已检查的 guard 和 lock 目录。保留 state.json,包括其中的纪元、代际和偏好。重新启动并查询状态。不能仅凭时间删除协调目录,也不能在其他采集进程可能运行时操作。如果状态本身损坏或隐私检查失败,请保留状态以便诊断并修复具体问题;状态和控制命令会持续报告失败。
长时间运行的进程每五分钟提供一次发送时机;轮询和发送计时器不会阻止进程退出。
