mcpField
N
nvidia-app

nvidia-app

github.com/nvidia其他3.8k41 次安装今天更新
代码仓库

关于 nvidia-app

nvidia-app 是通过本地 MCP 服务操作 NVIDIA App 的技能,适用于管理驱动、游戏、笔记本功能或支持的 In-Game Overlay 操作。它区分 MCP 连接状态与 Overlay 就绪状态,并将操作限制在文档规定的范围内。

主要功能

  1. 01查询应用和驱动信息
  2. 02启动应用并优化游戏
  3. 03控制支持的 In-Game Overlay 功能
  4. 04录制游戏画面并截取屏幕
  5. 05通过 HTTP 或 stdio 桥接连接

适用场景

  1. 01查看 NVIDIA 驱动状态和发行说明
  2. 02优化游戏或启动应用
  3. 03开始游戏录制或保存 Instant Replay
  4. 04截取屏幕或调整支持的 Overlay 设置

MCP 相关

它通过 Streamable HTTP 或已安装的 stdio 桥接,将 MCP 客户端连接到 NVIDIA App 的本地 MCP 服务。该服务提供应用、驱动、游戏优化、笔记本功能及 In-Game Overlay 操作。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/nvidia/skills --skill nvidia-app

安装后在 Claude Code 中输入/nvidia-app确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

BENCHMARK.md
skill-card.md
skill.oms.sig
evals/
evals.json
references/
connection.md
general-tools.md
mcp-tool-contract.md
overlay-capture.md
overlay-state.md

详细介绍

NVIDIA App MCP 覆盖层

用途

此技能用于一种产品集成:通过本地 MCP 服务操作 NVIDIA App。它包含两种路由模式:

  • 一般 NVIDIA App 操作涵盖应用列表与启动、驱动程序状态与发行说明、单款游戏优化以及笔记本电脑功能。
  • 游戏内覆盖层操作使用下方的工作流。

覆盖层工作流支持:

  • 读取高级覆盖层状态。
  • 开始或停止游戏录制。
  • 启用、禁用或保存即时回放。
  • 启用或禁用精彩集锦。
  • 截取屏幕截图并保存到覆盖层图库。
  • 显示或隐藏统计信息覆盖层。
  • 启用或禁用 RTX 动态鲜艳度滤镜。
  • 识别当前正在运行的游戏。

连接设置支持这两种模式,但不会授权执行其他操作。

何时使用此技能

当用户请求受支持的应用、驱动程序、游戏优化、笔记本电脑功能、覆盖层或连接工作流时,使用此技能。

不要将此技能用于桌面捕获、其他覆盖层滤镜变更、NVIDIA Broadcast、OBS、Xbox Game Bar 或其他捕获软件。

输入

  • 必需: 用户请求执行受支持的 NVIDIA App 查询、变更或连接诊断。
  • 可选: 明确的目标状态、游戏或程序标识符、特定工具所需的值以及客户端连接详情。仅从 references/connection.md 中描述的受保护发现来源获取身份验证令牌;绝不要将其作为普通工具参数接收或公开。

按以下顺序解析信息:用户明确指令、最新的实时 MCP 架构或状态、当前客户端连接配置,然后是适用的自包含技能参考中的静态契约详情。绝不要将之前的工具结果视为当前状态。

前置条件

  • 已安装 NVIDIA App(版本 11.0.9.5xx 或更高版本)且其 NvContainer 托管的 MCP 插件正在运行的 Windows 主机。
  • NVIDIA App 的标准可执行文件路径:%ProgramFiles%\NVIDIA Corporation\NVIDIA App\CEF\NVIDIA App.exe。
  • NVIDIA App 提供主开关时,需启用 MCP 服务访问权限。
  • 在调用任何 nvapp_overlay_ 工具之前,NVIDIA 游戏内覆盖层必须已启用、正在运行且就绪。
  • MCP 客户端支持通过环回连接使用 Streamable HTTP,或通过已安装的 stdio 桥接程序连接。

MCP 服务就绪与覆盖层就绪是两回事。MCP 连接成功并不能证明覆盖层工具已就绪。

说明

  1. 对请求进行分类。 一般 NVIDIA App 请求通过实时工具发现处理。nvapp_overlay_ 请求通过 Overlay 工作流处理。只读 Overlay 状态可能包含已排除功能的字段,但这并不授权更改这些功能。
  2. 在当前 MCP 客户端中注册 nvidia-app,或明确回退。 只有当本次会话的实时工具目录公布了 nvapp_ 工具时,才表示客户端已注册;开放的 loopback 端口或可用的 stdio 桥接程序都不代表已注册。如果这些工具不存在,请在首次调用 nvapp_ 工具前,按照 references/connection.md 尝试注册。注册是默认路径,因为它会在后续轮次和会话中持续生效。可访问的 HTTP 端点不是跳过注册尝试的理由。
  3. 仅将直接连接用作明确声明的回退方案。 如果用户拒绝更改配置、无法修改或重新加载客户端,或者注册成功后本次会话中仍未出现 nvapp_ 工具,则直接连接到 loopback HTTP 端点(或 stdio 桥接程序),并继续遵循相同的已记录工具契约。说明所用的连接方式,并告知用户注册 nvidia-app 可使访问持久生效。不得默默优先选择直接连接。
  4. 发现通用工具。 对于非 Overlay 请求,检查已建立连接上的 tools/list,然后在选择或调用其七个已记录的公开工具之一之前,阅读 references/general-tools.md。仅选择返回的、其描述、架构和注释与用户当前意图最匹配的工具,并遵循任何更具体的实时架构和注释。
  5. 确定 Overlay 目标状态。 对于明确的启动、停止、启用、禁用、显示或隐藏请求,直接调用对应的变更操作。对于没有目标状态的真正切换请求,读取一次状态,并仅反转相应的布尔值。
  6. 验证参数。 对于通用工具,遵循 references/general-tools.md 和任何更具体的实时架构。对于 Overlay 工具,严格使用下方映射的字段。绝不编造不受支持的参数。
  7. 按请求顺序执行。 通过按用户指定的顺序,将每项受支持的操作作为独立工具调用,完成复合请求。只进行完成所请求操作所需的调用。遵守访问级别和任何同意决定;绝不通过提高访问级别或启用其他功能来绕过限制。
  8. 按原样解读结果。 仅报告返回的字段和结果。Overlay 变更操作会返回一条易读消息;应报告该消息,不得编造结构化的成功字段。如果变更消息含义不明确,应说明结果尚未得到独立确认,而不是仅为验证而再次调用 Overlay 状态查询。

连接

默认 HTTP 端点为:

http://127.0.0.1:13508/mcp

已安装的 stdio 桥接程序为:

%ProgramFiles%\NVIDIA Corporation\NVIDIA App\McpServer\NvAppMcpServer.exe

stdio 可执行程序会转发到持久运行的服务;它不会启动或启用该服务。

一般 NVIDIA App 操作

在选择或调用一般 NVIDIA App 工具前,请阅读 references/general-tools.md。其中包含七个受支持的工具名称、确切参数、枚举值、条件架构和前置条件检查。

仅使用实时 tools/list 公布的已记录工具。随附说明是自包含的,不依赖代码库内部的架构来源。

Overlay 操作

仅使用此表中的工具和所列的授权参数:

用户意图工具参数
读取 Overlay 整体状态nvapp_overlay_get_status{}
开始录制nvapp_overlay_capture{ "action": "toggle_recording", "enable": true }
停止并保存录制nvapp_overlay_capture{ "action": "toggle_recording", "enable": false }
启用 Instant Replaynvapp_overlay_capture{ "action": "toggle_instant_replay", "enable": true }
禁用 Instant Replaynvapp_overlay_capture{ "action": "toggle_instant_replay", "enable": false }
保存 Instant Replaynvapp_overlay_capture{ "action": "save_instant_replay" }
启用 Highlightsnvapp_overlay_capture{ "action": "toggle_highlights", "enable": true }
禁用 Highlightsnvapp_overlay_capture{ "action": "toggle_highlights", "enable": false }
截取屏幕截图nvapp_overlay_capture{ "action": "capture_screenshot" }
显示 Statistics Overlaynvapp_overlay_configure_stats{ "enable": true }
隐藏 Statistics Overlaynvapp_overlay_configure_stats{ "enable": false }
启用 RTX Dynamic Vibrancenvapp_overlay_configure_filters{ "filter": "rtx_dvc", "enable": true }
禁用 RTX Dynamic Vibrancenvapp_overlay_configure_filters{ "filter": "rtx_dvc", "enable": false }
获取当前游戏nvapp_overlay_get_current_game_info{}

绝不调用 toggle_desktop_capture。对于 nvapp_overlay_configure_filters,仅使用 rtx_dvc 这一滤镜值。

捕获与隐私

toggle_recording、toggle_instant_replay、save_instant_replay、toggle_highlights 和 capture_screenshot 会录制屏幕内容,并将媒体文件写入用户的系统。录制内容和屏幕截图会保留在 NVIDIA App Overlay 图库中,直到用户将其删除;此技能无法选择文件格式、分辨率或保存位置。

将这些操作全部视为会影响隐私的操作:

  • 用户明确请求开始、停止、保存、启用或捕获,即构成授权。直接调用对应的单一工具,不要额外请求确认;然后报告返回的消息,让用户知道捕获已开始或媒体文件已写入。
  • 绝不发起用户未要求的捕获。不要将开始录制作为其他请求的副作用,也不要将其作为失败操作的变通方法。
  • 请求含糊不清、具有真实切换行为的操作未指定目标状态且状态字段缺失,或请求包含格式或保存位置等不受支持的限定条件时,应先询问用户。
  • 启用 Instant Replay 或 Highlights 后,后台捕获会持续运行,直到将其禁用。启用任一功能时,应告知用户这一点。
  • 不要为了让捕获成功而启用 Desktop Capture。不受支持的游戏之外的内容不属于此技能的范围。

决策规则

  • 如果本次会话的 MCP 工具目录中没有 nvapp_ 工具,请先尝试注册 nvidia-app,再直接连接。注册被拒绝或失败后,本次会话剩余时间内可以直接通过 HTTP 或 stdio 连接,无需再次询问。
  • 无论使用哪种连接方式,都必须遵守相同的工具名称、架构、访问级别和 Overlay 限制。回退只会改变传输方式,不会改变获准使用的功能范围。
  • 对于确实要求切换录制、Instant Replay、Highlights、Statistics Overlay 或 RTX Dynamic Vibrance 状态的请求,调用一次 nvapp_overlay_get_status,并且只反转相应的 recordingActive、instantReplayEnabled、highlightsEnabled、statsOverlayEnabled 或 rtxDvc。
  • 如果缺少必需的状态字段,请询问用户是要启用还是禁用,不要猜测。绝不能将省略的字段转换为 false。
  • nvapp_overlay_capture 只接受一个操作,不接受操作列表。
  • 不要为 save_instant_replay 或 capture_screenshot 添加 enable。
  • 不要从 toggle_recording、toggle_instant_replay、toggle_highlights 或 nvapp_overlay_configure_stats 中省略 enable。
  • 向 nvapp_overlay_configure_filters 传入 filter: "rtx_dvc" 和 enable;绝不要臆造其他筛选器值。
  • 对于混合请求,按顺序执行彼此独立且受支持的操作,并说明或跳过不受支持的操作;不受支持的附带请求不得阻止执行已明确指定且受支持的操作。
  • 如果不受支持的限定条件修饰了其他受支持的状态变更操作,请说明限制,并在执行变更调用前询问用户是否要继续执行受支持的部分。
  • running: false 表示未识别到当前游戏。不要臆造 gameName 或 processId。只有在返回了 fullscreen 时才报告该字段。

输出格式

  • 遵循用户要求的格式;否则,提供简洁、易读的结果。
  • 对于读取操作,只报告存在的结构化字段,并区分省略的字段与 false 或 null。
  • 对于失败,说明操作失败,并保留返回的错误代码、是否可重试以及有用的指导信息。
  • 绝不要泄露身份验证材料。需要提供协议级详情时,只展示请求或响应的结构,并将令牌、授权标头和其他机密替换为 <redacted-token> 等占位符。

限制

  • 不同版本的 NVIDIA App 和访问级别可能会提供不同的通用工具和输出契约;实时 tools/list 信息具有权威性。
  • MCP 已就绪并不保证 Overlay 已就绪;变更成功的消息也不能证明返回结果以外的内容。
  • Overlay 工作流无法更改 Desktop Capture 或 RTX Dynamic Vibrance 以外的筛选器,无法选择截图格式或保存位置,也无法配置 Statistics Overlay 的布局和样式。
  • 缺失的字段表示未知,并非隐含的 false 值;不得用推断数据替代不可用的工具或后端超时。

示例

获取驱动程序状态

对于“显示我的 NVIDIA 驱动程序状态”之类的请求,首先检查当前 MCP 客户端是否公布了 nvapp_ 工具。如果没有,则提议注册 nvidia-app;如果用户拒绝或无法注册,则直接连接到环回端点,并说明这一点。然后在该连接上调用 tools/list,并确认公布的 nvapp_client_get_driver_status 具有空对象输入架构。如果该工具不可用,则说明已连接的 NVIDIA App 版本或访问级别未提供此工作流;未经验证其实时架构,不要改用名称相似的工具。

调用:

{
  "name": "nvapp_client_get_driver_status",
  "arguments": {}
}

按原样使用返回的结构化字段:

  • 报告 systemType、installedDriver.version、可选的 installedDriver.channel 和 installedDriver.availableActions。
  • 报告 preferredChannel。
  • 对于 recommendedDrivers 中的每一项,报告 name、version、channel、releaseDate、isUpdateAvailable 和 availableActions。
  • 如果 previouslyInstalledDriver 为 null,则说明 NVIDIA App 报告没有可用的回滚驱动程序。否则,报告其 name、version、releaseDate 和 availableActions。

此工具为只读工具。不要调用驱动程序变更操作;此七工具范围不包含此类操作。

使用明确的目标状态开始录制

由于请求的目标状态已明确,直接调用变更操作:

{ "name": "nvapp_overlay_capture", "arguments": { "action": "toggle_recording", "enable": true } }

不要在调用前读取状态,也不要在调用后进行验证读取。明确的请求即为授权,因此无需额外确认提示,但此调用会开始屏幕捕获并写入文件;请参阅捕获和隐私。

在未指定目标状态时切换 Instant Replay

首先使用 {} 调用 nvapp_overlay_get_status。如果存在 instantReplayEnabled,则调用一次 nvapp_overlay_capture,并将 enable 设为与该字段相反的值。如果该字段不存在,则询问用户要启用还是禁用 Instant Replay,此时不要进行任何变更。

处理不受支持的截图限定条件

对于“在 D:\Shots 中拍摄 PNG 截图”,说明该工具无法选择格式或目标位置。询问用户是否要捕获到 Overlay 图库。确认后,调用:

{ "name": "nvapp_overlay_capture", "arguments": { "action": "capture_screenshot" } }

故障排除

错误或症状可能原因响应
service_disabled已禁用持久 MCP 服务访问请用户在 NVIDIA App 设置中启用 MCP 服务访问;不要反复启动桥接程序。
overlay_not_availableMCP 已连接,但 In-Game Overlay 尚未就绪请用户启用或启动 In-Game Overlay,然后仅在用户请求时重试。
overlay_timeoutOverlay 未在截止时间前响应保留 retriable;仅当结果允许重试且重试仍在请求范围内时,最多重试一次,然后报告失败并在再次尝试前询问用户。
access_level_restricted当前 MCP 访问上限阻止了此工具报告此限制;不要擅自提高访问级别。
isError: true 或其他后端/验证失败请求的操作未成功保留消息和错误代码;不要推断数据或报告成功。

Overlay 变更操作会返回人类可读的消息,而非结构化成功字段。按原样报告该消息,不要推断其他状态。如果保存 Instant Replay 时报告其已禁用,请在启用前询问用户。如果捕获操作需要 Desktop Capture,请报告此限制,而不要启用 Desktop Capture。

参考资料

  • 阅读 references/connection.md,了解客户端配置、端口、发现和身份验证、协议生命周期、就绪状态以及连接故障排查。
  • 阅读 references/general-tools.md,了解 NVIDIA App Overlay 之外的操作如何进行实时发现、使用架构、路由和处理结果。
  • 阅读 references/overlay-capture.md,了解录制、即时回放、精彩片段、屏幕截图、不受支持的限定条件、访问权限和捕获错误。
  • 阅读 references/overlay-state.md,了解状态路由、实际开关、Statistics Overlay 的可见性、RTX Dynamic Vibrance 以及当前游戏查询。
  • 阅读 references/mcp-tool-contract.md,了解规范的状态字段集,以及何时需要精确的 Overlay 架构、输出、访问级别或错误格式。

评论

支持 Markdown