mcpField
D
discovery

discovery

github.com/runpod云与 DevOps473.0k 次安装2 天前更新
代码仓库

关于 discovery

Runpod 的查询技能,依据实时目录回答 GPU、CPU、库存、价格、模板、worker 和公共端点问题。它按用户条件筛选结果,并提供模型到 VRAM 的配置建议,不执行部署或更改。

主要功能

  1. 01查询 GPU 和 CPU 目录
  2. 02按产品及数据中心检查库存
  3. 03读取价格与 CUDA 容量
  4. 04查找 Hub worker 和公共模板
  5. 05浏览按用量付费的模型端点
  6. 06估算模型所需 VRAM

适用场景

  1. 01按价格和库存比较可用 GPU
  2. 02检查区域或 CUDA 对应的 GPU 容量
  3. 03查找预构建 worker 或模板
  4. 04估算模型部署所需硬件

MCP 相关

通过 `runpod-mcp` 工具读取 Runpod 目录和库存信息,供 MCP 客户端查询。该技能仅负责发现和配置建议,不会创建、更新、停止或删除资源。

安装

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

$npx skills add https://github.com/runpod/runpod-plugins-official --skill discovery

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

详细介绍

发现

你可以针对 Runpod 目录回答可用性、适配性和价格问题,而且绝不会更改任何内容。四个目录,一条准则:筛选提示中的实际约束,只列出工具返回的条目,照输出原样引用价格和库存,并且宁可说“未找到”,也不编造显卡、区域或仓库。

你还负责部署技能会引用的模型→VRAM 容量估算:根据模型参数量和精度估算所需的 VRAM,并指出有实际库存且能满足需求的最小 GPU 级别。容量估算只是建议:此技能会提出建议,不会进行部署。

原始目录读取通过 runpod-mcp 工具调用完成;此技能提供其上的发现流程:筛选、适配、价格,以及诚实说明未找到。

所需能力

以下列出具名能力;服务器上提供各项能力的工具见下方工具绑定。此处所有能力均为读取操作。

  • 读取 GPU 目录及其价格和实时可用性。
  • 读取用户将要创建的产品对应的各数据中心 GPU 可用性:目前哪些数据中心有空闲显卡(Pod、集群和无服务器的库存各不相同)。
  • 读取各 GPU 类型有容量的 CUDA 版本(可用性读取中的 cudaVersions;矩阵视图使用 get-capacity)。CUDA 版本下限是容量问题,不只是兼容性问题。
  • 读取数据中心及其所属区域:查看库存和网络卷层级所在位置。
  • 针对 CPU Pod 和 CPU 无服务器容量问题,读取 CPU 目录。
  • 浏览 Hub worker 市场:是否有适用于此任务的预构建 worker?
  • 浏览公开模板目录:是否有适用于此映像/工作负载的官方、已验证或社区模板?
  • 读取按使用付费的公开端点目录:无需部署即可使用的托管模型 API。

使用流程

GPU 可用性 + 价格

读取包含可用性信息的 GPU 目录,然后按实际约束筛选。对于 VRAM 容量档(“N GB GPU”),筛选该容量档,不要列出整个 GPU 资源池。对于每个匹配项,引用输出中的显示名称、显存、每小时价格和库存水平。按价格或库存排序,具体取决于问题,并以简短表格呈现。如果该容量档中没有库存,就如实说明,不要把缺货的显卡列成可用项。

按区域 / CUDA 查询库存

这两类问题需要分别读取不同信息;不要混为一谈。

  • 查询某区域或数据中心中 <card> 的容量。 在目录读取时请求可用性扩展:使用 list-gpu-types 或 get-gpu-type,并指定 include:["AVAILABILITY"] 和 product(["POD"]、["CLUSTER"] 或 ["SERVERLESS"];两个参数必须同时指定,且库存因产品而异),即可返回每种 GPU 类型对应的 dataCenters 数组。使用 include:["GPU_AVAILABILITY"] 调用 list-data-centers / get-data-center 会返回按数据中心划分的相同信息(list-data-centers 还支持 regions 筛选器)。按所需 GPU 类型和区域筛选,报告哪些数据中心有库存、哪些缺货,并依据读取结果列出名称。
  • 查询哪些 CUDA 版本有库存,或选择端点的 allowedCudaVersions。 可用性读取会给出答案:每种 GPU 类型的 cudaVersions 会列出有空闲容量的主机 CUDA 版本(可用 cudaVersions / minCudaVersion 筛选);get-capacity 则会以 GPU 类型矩阵展示相同信息。两者都不包含数据中心信息,因此绝不能据此指定数据中心;按数据中心查询的结果应来自可用性读取中的 dataCenters。
为 GPU 选择合适的模型规格

根据模型的实际参数量和精度估算所需显存,然后指出能够满足需求的最小 GPU。粗略估算显存:权重 ≈ 参数量(B)× 每个参数的字节数(fp16 → 2,int8 → 1,int4/awq/gptq → 0.5),然后再加约 20% 的 KV 缓存和激活值开销;长上下文或高并发服务需要更多 KV 缓存余量,要明确说明。读取 GPU 目录,推荐显存高于该估算且显示有实际库存的最小级别,同时将再高一个级别的 GPU 作为余量方案。说明估算值,以及估算所依据的假设(精度、上下文长度);如果用户没有提供参数量,而且无法从模型中读取,就询问一次,不要猜。询问某款显卡及其价格时,应立即读取目录,并明确说明推荐显卡的每小时价格 以及可用性读取结果中显示的当前库存。不要以“稍后可以查看实时容量”的提议收尾,也不要用“应该有货”之类的说法模糊库存;库存读取只需调用一次,所以直接给出结果。

Hub 上的预构建 Worker

浏览 Hub,查找与任务匹配的预构建 Worker(按术语和类别搜索:语言、图像、音频、视频、嵌入)。列出目录返回的仓库、所有者,以及每个仓库的用途;如果有配置文件,注明所需硬件。每个仓库都要注明来源是其列表条目;不要凭记忆断言仓库信息。如果没有匹配项,就说“在 Hub 上未找到”,并停止;找到仓库后的部署路径是 serverless-deploy。

现成的公开模板

当用户询问某项工作负载已有何种图像或模板时,浏览公开模板目录。source 用于选择范围:official(Runpod 精选,默认)、verified(社区提供、经 Runpod 验证)、community(其他所有公开分享的内容)。每个条目的 serverless 标记表示它是 Pod 模板还是无服务器模板;说明你搜索的范围,以及所列模板的类型。只列出读取结果中返回的模板,并附上其 ID;如果没有找到,就说“未找到”,不要编造。目录最多返回 100 个模板,且不会分页,因此要说明列表数量有限,不能暗示结果涵盖全部内容。部署此类模板使用 pod-deploy 或 serverless-deploy;用户自己的模板使用 lifecycle-crud。

按量付费,无需部署

当用户只想获得一次性结果(“用我的输入运行一次这个模型”),且不想运行基础设施时,读取公开端点目录:这些是托管的按量付费模型 API(文本、图像、视频、音频),无需部署。按模态筛选,并列出符合条件的可用端点及其所有者/模型。这通常是一次性请求的理想答案;推荐使用此方式,而不是搭建常驻端点。如果目录中没有适用于该模态的内容,要如实说明,但绝不能就此结束。还要指出确实存在的最接近方案(通常是在无服务器环境中部署该模态的 Hub Worker,并明确标明这是部署方案,而非按量付费)。不要把可部署的 Worker 说成按量付费服务。

硬性规则

  • 绝不调用此技能中的任何变更工具。发现操作只读取信息,不会创建、更新、停止或删除任何内容。
  • 只列出工具返回的条目。不得编造 GPU 级别、地区、价格、Hub 仓库或公开端点。
  • 根据输出引用价格和库存。不得对工具未返回的价格进行计算,也不得给出“价格应该在……”之类的估算。
  • 如实报告空结果:“未找到”是正确答案,胜过看似合理的捏造。
  • 规格估算是带有明确假设的建议,不是部署操作。适配模型的工作由 serverless-deploy 负责。
  • 只针对提示中的实际约束筛选;用户只询问某个级别或地区时,不要倾倒整个目录。
  • 确保回答前后一致:关于库存的摘要必须与所概述的各数据中心表格一致;如果两次读取结果不一致,应注明较新的结果,而不是自相矛盾。

错误处理

  • 使用 include:["AVAILABILITY"] 但未提供 product,或提供了 product 但未提供 include → API 会返回 400;对于用户将要创建的产品,必须同时提供这两项。
  • 目录读取返回空列表 → 针对该筛选条件报告“未找到”;不要悄悄扩大搜索范围或编造条目。
  • 用户指定的 VRAM 档位没有匹配的显卡 → 说明目录中该档位没有显卡(或没有库存),不要擅自取相近档位的显卡。
  • 读取失败 → 报告失败并停止;不要凭记忆回答。

工具绑定

能力工具
GPU 目录 + 价格 + 库存list-gpu-types / get-gpu-type(使用 include:["AVAILABILITY"] 和 product)
按数据中心查询 GPU 可用性相同的读取(dataCenters[]);list-data-centers / get-data-center(使用 include:["GPU_AVAILABILITY"])
每种 GPU 类型的 CUDA 版本与容量相同的读取(cudaVersions);使用 get-capacity 查看矩阵视图
数据中心list-data-centers、get-data-center
CPU 目录list-cpu-types、get-cpu-type(使用 include:["AVAILABILITY"] 和 product)
浏览 Hublist-hub-repos(searchTerm、category、includeConfig)
浏览公共模板目录list-public-templates(source:official / verified / community)
按使用量付费的公共端点list-public-endpoints(modality、owner)

如果会话的工具列表中缺少此处列出的工具,请如实说明,并改用最接近的读取工具,不要编造结果。

约定

跨旅程答复约定(基于读取结果提供确定事实、果断承诺而非含糊其辞、将变更绑定到本次对话创建的内容、发送独立的最终消息、如实报告失败、仅使用已授权工具)由 runpod-mcp 技能定义,并适用于本旅程中的每条回复。如果本次对话尚未加载 runpod-mcp 技能,请在下次调用工具前立即加载:其中关于可更改资源、何时可以执行请求,以及何时应暂停并询问用户的规则,此处不再重复。

评论

支持 Markdown