roboflow-cloud-storage
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseFor agents: This skill is authored in. If your client already has it loaded as a skill (for example from a Roboflow plugin), use that copy. Theroboflow/computer-vision-skillsMCP resources serve the same skills for clients that don't have them loaded.skill://roboflow/<name>/SKILL.md
对于 Agent: 此 skill 编写于。如果你的客户端已经将其作为 skill 加载(例如通过 Roboflow plugin),请使用该副本。roboflow/computer-vision-skillsMCP resources 为尚未加载这些 skill 的客户端提供相同的 skills。skill://roboflow/<name>/SKILL.md
Cloud Storage (Datasources & Credentials)
云存储(Datasources 与 Credentials)
Mirror a cloud bucket's contents into a Roboflow workspace so new objects flow
in automatically. Two pieces work together:
- Credential — the secret Roboflow uses to reach the bucket (stored, masked server-side, reusable across datasources).
- Datasource — a bucket-mirror configuration: which bucket (via a credential), which objects (glob rules), and how they sync. "Datasource" is the user-facing name; the platform stores it as a bucket-mirror config.
Imports land at the workspace level. The datasource API cannot target a specific project/dataset today.
Only want to run a model/Workflow over the files and collect the outputs, without importing anything into Roboflow? That is batch processing — see theskill. Mirroring composes with it too: imported files become Asset Library images, and bulk predictions over them run as Asset Library batch processing jobs (same skill).roboflow-batch-processing
将云存储桶中的内容镜像到 Roboflow 工作区,使新对象能够自动流入。以下两部分协同工作:
- Credential — Roboflow 用于访问存储桶的密钥(存储在服务器端并经过掩码处理,可在多个数据源之间复用)。
- Datasource — 存储桶镜像配置:指定使用哪个 credential 访问哪个存储桶、选择哪些对象(glob 规则),以及如何进行同步。“Datasource”是面向用户的名称;平台将其存储为 bucket-mirror 配置。
导入内容会落在 workspace 层级。目前 datasource API 无法指定特定的 project/dataset。
只需要对文件运行 model/Workflow 并收集输出,而不向 Roboflow 导入任何内容?那属于 batch processing——请参阅skill。Mirroring 也可以与其组合使用:导入的文件会成为 Asset Library 图像,对它们进行批量预测则作为 Asset Library batch processing 任务运行(使用同一 skill)。roboflow-batch-processing
Fast path — one call
快速路径——一次调用
connect_cloud_storage- Reuse a credential: pass (from
credential_id).credentials_list - Create a new credential: pass +
credential_name(the secret is collected securely out-of-band — see Security).credential_type - Describe the datasource so it can be created first: (
bucket_type/s3),gcs,bucket_name, plus optionalregionglob rules (see Datasources). The datasource must exist before anything can be validated or triggered — there is nothing to mirror without it.mirror_configs - (default true) starts a mirror run only if validation passes; triggering consumes credits.
trigger - Returns . If a new credential was created but a later step failed, you get
{credentialId, credentialCreated, datasourceId, validation, triggered, batchIds?}with the ids so you can clean up withstatus: "partial"/credentials_delete.datasource_delete
connect_cloud_storage- 复用 credential:传入 (来自
credential_id)。credentials_list - 创建新 credential:传入 +
credential_name(密钥通过安全的带外方式收集——参见安全部分)。credential_type - 描述 datasource,以便先创建它:(
bucket_type/s3)、gcs、bucket_name,以及可选的regionglob 规则(参见 Datasources)。必须先存在 datasource,才能进行验证或触发;没有 datasource 就无法镜像任何内容。mirror_configs - (默认为 true)仅在验证通过后启动镜像同步;触发操作会消耗 credits。
trigger - 返回 。如果已创建新 credential,但后续步骤失败,则会返回
{credentialId, credentialCreated, datasourceId, validation, triggered, batchIds?}及相关 ids,以便使用status: "partial"/credentials_delete进行清理。datasource_delete
Credentials
Credentials
Security — secrets never enter the chat
安全——密钥绝不进入聊天
The secret (keys, service-account JSON, password) is collected out-of-band
via MCP elicitation, never as a tool argument and never in the transcript or
model context. returns only masked, non-secret fields.
If your client can't elicit securely, the tool returns
with a URL to create the credential in the app
(), then call
to get its id.
credentials_listmanual_entry_requiredapp.roboflow.com/<workspace>/settings/datasourcescredentials_list密钥(访问密钥、service-account JSON、密码)通过 MCP elicitation 带外收集,绝不会作为工具参数传入,也不会出现在对话记录或模型上下文中。 仅返回经过掩码处理的非敏感字段。
如果你的客户端无法安全地执行 elicitation,工具将返回 以及一个用于在应用中创建 credential 的 URL(),随后调用 获取其 id。
credentials_listmanual_entry_requiredapp.roboflow.com/<workspace>/settings/datasourcescredentials_listCredential types
Credential 类型
| Provider | Secret fields collected |
|---|---|---|
| AWS S3 | |
| AWS S3 | |
| AWS S3 | |
| Google Cloud Storage | |
| S3-compatible | |
| S3-compatible | |
AWS PrivateLink () requires anrequire_vpcecredential; the server rejects the datasource otherwise.AssumeRoleWithWebIdentity
| 服务商 | 收集的密钥字段 |
|---|---|---|
| AWS S3 | |
| AWS S3 | |
| AWS S3 | |
| Google Cloud Storage | |
| S3 兼容存储 | |
| S3 兼容存储 | |
AWS PrivateLink() 要求使用require_vpcecredential;否则服务器会拒绝该 datasource。AssumeRoleWithWebIdentity
Datasources
Datasources
Bucket
Bucket
- :
bucket_typeors3gcs - (no scheme/path),
bucket_name(e.g.region)us-east-1 - : custom URL for S3-compatible providers (S3 only)
endpoint
- :
bucket_type或s3gcs - (不包含 scheme/path)、
bucket_name(例如region)us-east-1 - :S3 兼容服务提供商的自定义 URL(仅限 S3)
endpoint
Mirror rules (mirror_configs
)
mirror_configs镜像规则(mirror_configs
)
mirror_configsOptional list; omit to mirror the whole bucket with default settings. Each
rule selects a subset and controls sync behavior:
- (list) — the key field. Selects objects, e.g.
glob_patterns. Set it to avoid importing unwanted files or to split a bucket into multiple rules. Omit only when you truly want everything.["images/**/*.jpg", "batch-*/**"] - — alternative: path to a manifest file in the bucket whose lines list object paths to import.
glob_file_path - — rule id (auto-generated; pass an existing id on update to edit in place).
id - (omitted keys use server defaults):
settings- (default true) — delete mirrored images when the source object is removed.
removeOrphanedSourcesWhenDisappeared - (
namingStrategy|fullPath|fileName|eTag, defaultmetadata);fullPathrequired whennamingStrategyMetadataKey.metadata - (true) /
updateImageWhenNewer(updateImageStrategy).overwrite - (true) /
updateMetadataWhenNewer(updateMetadataStrategydefault; alsomergeBucketWins|overwrite|merge|mergeUserWins|untilFirstChange).append - (hours, default 0 = off) — >0 enables a recurring mirror (fixed 24h cadence today; only on/off is honored).
runScheduledEvery
可选列表;如果省略,则使用默认设置镜像整个存储桶。每条规则用于选择对象子集并控制同步行为:
- (列表)——核心字段。用于选择对象,例如
glob_patterns。设置该字段可避免导入不需要的文件,或将一个存储桶拆分为多条规则。只有确实需要导入全部内容时才可省略。["images/**/*.jpg", "batch-*/**"] - ——备选项:存储桶内 manifest 文件的路径,该文件的每一行列出要导入的对象路径。
glob_file_path - ——规则 id(自动生成;更新时传入已有 id 可原地编辑规则)。
id - (省略的键使用服务器默认值):
settings- (默认 true)——源对象被删除时,同时删除已镜像的图像。
removeOrphanedSourcesWhenDisappeared - (
namingStrategy|fullPath|fileName|eTag,默认metadata);当使用fullPath时,必须设置metadata。namingStrategyMetadataKey - (true)/
updateImageWhenNewer(updateImageStrategy)。overwrite - (true)/
updateMetadataWhenNewer(updateMetadataStrategy为默认值;还支持mergeBucketWins|overwrite|merge|mergeUserWins|untilFirstChange)。append - (小时,默认 0 = 关闭)——大于 0 时启用周期性镜像同步(目前固定为每 24 小时一次;仅支持开启或关闭)。
runScheduledEvery
Lifecycle & validation
生命周期与验证
- Create (, or
datasource_create). Nothing is mirrored yet.connect_cloud_storage - Validate () — checks
datasource_validate,listFiles,headFile, and per-rulegetFile; returnsheadGlobFile. Run it to self-diagnose a bad credential/bucket before triggering.{checks, errors} - Trigger () — starts the mirror job; consumes compute/storage credits. Returns
datasource_trigger.{batchIds} - Poll (with a
datasource_job_get) —batchId(running/completed/failed), per-stagestatus,counters, timestamps.errors
Update (): only fields you pass change; to change the
bucket pass + + together.
Delete (): removes the config, not already-mirrored
images. Deleting a credential still referenced by a datasource makes its runs
fail.
datasource_updatebucket_typebucket_nameregiondatasource_delete- 创建(或
datasource_create)。此时尚未镜像任何内容。connect_cloud_storage - 验证()——检查
datasource_validate、listFiles、headFile以及每条规则的getFile;返回headGlobFile。触发前运行此步骤,可自行诊断 credential 或存储桶配置问题。{checks, errors} - 触发()——启动镜像同步任务;消耗 compute/storage credits。返回
datasource_trigger。{batchIds} - 轮询(使用 调用
batchId)——查询datasource_job_get(running/completed/failed)、各阶段的status、counters和时间戳。errors
更新():仅修改传入的字段;要更改存储桶,必须同时传入 + + 。
删除():移除配置,不会删除已经镜像的图像。如果删除仍被 datasource 引用的 credential,其运行任务将会失败。
datasource_updatebucket_typebucket_nameregiondatasource_deleteMCP Tools Available
可用的 MCP Tools
| Tool | Purpose |
|---|---|
| End-to-end: credential + datasource + validate + first run |
| List masked cloud-storage credentials |
| Get a Roboflow app link for AWS storage credential setup; enter secrets in the app |
| Delete a credential |
| List / inspect datasource configs |
| Manage a datasource |
| Check bucket access before a run |
| Start a mirror run (consumes credits) |
| Poll a mirror run's status and counters |
| Tool | 用途 |
|---|---|
| 端到端流程:credential + datasource + 验证 + 首次运行 |
| 列出经过掩码处理的云存储 credentials |
| 获取用于设置 AWS 存储 credential 的 Roboflow 应用链接;在应用中输入密钥 |
| 删除 credential |
| 列出或查看 datasource 配置 |
| 管理 datasource |
| 在运行前检查存储桶访问权限 |
| 启动镜像同步任务(消耗 credits) |
| 轮询镜像同步任务的状态和 counters |
Related Pages
相关页面
- — what to do with the images once mirrored (tags, splits, versions, search)
skill://roboflow/roboflow-data-management/SKILL.md - — the app's
skill://roboflow/roboflow-product-navigation/SKILL.mdpagesettings/datasources
- ——图像镜像同步后的管理操作(tags、splits、versions、search)
skill://roboflow/roboflow-data-management/SKILL.md - ——应用中的
skill://roboflow/roboflow-product-navigation/SKILL.md页面settings/datasources