Velox TriFit
DressMe API docs and SDK guidance; OAuth account/guest photo upload and virtual try-on tools.
使うべきか
品質と安全性
検出事項(2)
- LOWget_partner_access_requirements 内
- LOWfetch 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"velox-trifit-developer": {
"url": "https://studio.v3lox.com/partner/docs/mcp"
}
}
}リモートエンドポイント
https://studio.v3lox.com/partner/docs/mcpstreamable-httphttps://studio.v3lox.com/partner/trifit/mcpstreamable-httpできること
ツール一覧
ツール(18)
🟢get_trifit_account
Identify whether this verified connection is a guest session or a personal TriFit account before choosing tools. Does not link, switch, create an account or trust a conversational email hint.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"environment": {
"type": "string",
"const": "production"
},
"quotaSource": {
"type": "string",
"enum": [
"trifit-account",
"shared-hosted-demo"
]
}
},
"required": [
"id",
"name",
"environment",
"quotaSource"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_trifit_profile
Read the stable profile represented by this connection. No account creation, switching, uploads or generation. Use get_trifit_account for connection mode and allowance source.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"pattern": "\\S"
},
"name": {
"type": "string"
},
"nickname": {
"type": "string"
}
},
"required": [
"id",
"name",
"nickname"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_trifit_allowance
Read the same daily, weekly and monthly allowances as the TriFit website. Does not create, reset or spend credits.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"environment": {
"type": "string",
"const": "production"
},
"quotaSource": {
"type": "string",
"const": "trifit-account"
},
"checkedAt": {
"type": "string"
},
"stages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"policy": {
"type": "string"
},
"remaining": {
"type": [
"number",
"null"
]
},
"canRequest": {
"type": "boolean"
},
"activeRequests": {
"type": "number"
},
"reconciliationPending": {
"type": "number"
},
"daily": {
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"used": {
"type": "number"
},
"remaining": {
"type": "number"
},
"resetsAt": {
"type": "string"
}
},
"required": [
"limit",
"used",
"remaining",
"resetsAt"
],
"additionalProperties": false
},
"weekly": {
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"used": {
"type": "number"
},
"remaining": {
"type": "number"
},
"resetsAt": {
"type": "string"
}
},
"required": [
"limit",
"used",
"remaining",
"resetsAt"
],
"additionalProperties": false
},
"monthly": {
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"used": {
"type": "number"
},
"remaining": {
"type": "number"
},
"resetsAt": {
"type": "string"
}
},
"required": [
"limit",
"used",
"remaining",
"resetsAt"
],
"additionalProperties": false
}
},
"required": [
"kind",
"policy",
"remaining",
"canRequest",
"activeRequests",
"reconciliationPending"
],
"additionalProperties": false
}
}
},
"required": [
"environment",
"quotaSource",
"checkedAt",
"stages"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢list_trifit_library(kind, offset, limit)
Read metadata for your saved personal photos, products, looks and DressMe requests. No image bytes or guest history transfer.
入力スキーマ
{
"type": "object",
"properties": {
"kind": {
"default": "all",
"type": "string",
"enum": [
"all",
"photos",
"products",
"looks",
"requests"
]
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 10000
},
"limit": {
"default": 20,
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"environment": {
"type": "string",
"const": "production"
},
"librarySource": {
"type": "string",
"const": "trifit-account"
},
"total": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"nextOffset": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"type": {
"type": "string"
},
"status": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"mediaAvailability": {
"type": "string"
},
"personalAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"productAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"resultAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"required": [
"id",
"type",
"status",
"createdAt",
"updatedAt"
],
"additionalProperties": false
}
}
},
"required": [
"environment",
"librarySource",
"total",
"nextOffset",
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡prepare_trifit_upload(clientImportId, role, permissionConfirmed)
For a user-selected local file in Codex, with explicit permission: create a private, one-use upload URL valid for at most five minutes. PUT only that JPEG/PNG/WebP file as raw bytes, with its image Content-Type, no API/OAuth headers and no redirects. Do not print or share the URL. The PUT saves/resizes the image in the connected account library and selects its website photo/product slot; product images use cached description preparation. Preserve clientImportId and the returned assetId. Never retry an uncertain upload automatically. Preparing does not upload or generate.
入力スキーマ
{
"type": "object",
"properties": {
"clientImportId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "Stable UUID for this user-approved import. Never replace after an uncertain upload."
},
"role": {
"type": "string",
"enum": [
"personal",
"product"
]
},
"permissionConfirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"clientImportId",
"role",
"permissionConfirmed"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"uploadUrl": {
"type": "string",
"format": "uri"
},
"method": {
"type": "string",
"const": "PUT"
},
"maxBytes": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"expiresAt": {
"type": "string"
},
"clientImportId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"role": {
"type": "string",
"enum": [
"personal",
"product"
]
},
"environment": {
"type": "string",
"const": "production"
}
},
"required": [
"uploadUrl",
"method",
"maxBytes",
"expiresAt",
"clientImportId",
"role",
"environment"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡upload_trifit_image(clientImportId, role, permissionConfirmed, file)
With explicit permission, import the selected personal or clothing image into the connected TriFit account. Resizes automatically, saves it in the website library and selects its photo/product slot. Product images also use the existing cached description preparation. Never import arbitrary URLs or retry an uncertain import automatically.
入力スキーマ
{
"type": "object",
"properties": {
"clientImportId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "New UUID for this user-approved import. Preserve it; never replace it after an uncertain outcome."
},
"role": {
"type": "string",
"enum": [
"personal",
"product"
]
},
"permissionConfirmed": {
"type": "boolean",
"const": true
},
"file": {
"type": "object",
"properties": {
"download_url": {
"type": "string",
"minLength": 1,
"maxLength": 8192
},
"file_id": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"mime_type": {
"type": "string",
"enum": [
"image/png",
"image/jpeg",
"image/webp"
]
},
"file_name": {
"type": "string",
"maxLength": 512
}
},
"required": [
"download_url",
"file_id"
],
"additionalProperties": false
}
},
"required": [
"clientImportId",
"role",
"permissionConfirmed",
"file"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"assetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"role": {
"type": "string",
"enum": [
"personal",
"product"
]
},
"status": {
"type": "string",
"const": "available"
},
"environment": {
"type": "string",
"const": "production"
},
"librarySource": {
"type": "string",
"const": "trifit-account"
},
"reused": {
"type": "boolean"
}
},
"required": [
"assetId",
"role",
"status",
"environment",
"librarySource",
"reused"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴create_trifit_try_on(requestId, personalAssetId, productAssetId, permissionConfirmed)
Only after explicit user approval, submit one DressMe request using two existing account image IDs. Uses the website queue and existing account allowance, not the guest demo. The attempt can consume allowance. Never automatically retry, replace the request ID or claim that a timeout means it did not run. Check the original receipt.
入力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "New stable UUID for this approved request. Do not change it or replay after an uncertain response."
},
"personalAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"productAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"permissionConfirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"requestId",
"personalAssetId",
"productAssetId",
"permissionConfirmed"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"status": {
"type": "string"
},
"environment": {
"type": "string",
"const": "production"
},
"quotaSource": {
"type": "string",
"const": "trifit-account"
},
"acceptanceUnknown": {
"type": "boolean"
},
"retryAllowed": {
"type": "boolean",
"const": false
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"elapsedSeconds": {
"type": "number",
"minimum": 0
},
"progressPercent": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"timing": {
"type": "object",
"properties": {
"resultUrlReceivedAt": {
"type": "number"
},
"resultDownloadedAt": {
"type": "number"
},
"apiClientMs": {
"type": "number"
},
"userTotalMs": {
"type": "number"
},
"downloadMs": {
"type": "number"
}
},
"required": [
"resultUrlReceivedAt",
"resultDownloadedAt",
"apiClientMs",
"userTotalMs",
"downloadMs"
],
"additionalProperties": false
},
"resultAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"message": {
"type": "string"
}
},
"required": [
"status",
"environment",
"quotaSource",
"acceptanceUnknown",
"retryAllowed"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_trifit_try_on(requestId, jobId)
Read the status, recorded duration and result ID of an existing account DressMe request without generating or replaying. A missing receipt means acceptance is uncertain, not that it never ran.
入力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"status": {
"type": "string"
},
"environment": {
"type": "string",
"const": "production"
},
"quotaSource": {
"type": "string",
"const": "trifit-account"
},
"acceptanceUnknown": {
"type": "boolean"
},
"retryAllowed": {
"type": "boolean",
"const": false
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"elapsedSeconds": {
"type": "number",
"minimum": 0
},
"progressPercent": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"timing": {
"type": "object",
"properties": {
"resultUrlReceivedAt": {
"type": "number"
},
"resultDownloadedAt": {
"type": "number"
},
"apiClientMs": {
"type": "number"
},
"userTotalMs": {
"type": "number"
},
"downloadMs": {
"type": "number"
}
},
"required": [
"resultUrlReceivedAt",
"resultDownloadedAt",
"apiClientMs",
"userTotalMs",
"downloadMs"
],
"additionalProperties": false
},
"resultAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"message": {
"type": "string"
}
},
"required": [
"status",
"environment",
"quotaSource",
"acceptanceUnknown",
"retryAllowed"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢show_trifit_try_on(requestId, jobId)
Show a completed account DressMe image inside the conversation. Requires separate private-image permission. Uses only the existing result; no generation, upload, public share or new allowance is used.
入力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}出力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"status": {
"type": "string"
},
"environment": {
"type": "string",
"const": "production"
},
"quotaSource": {
"type": "string",
"const": "trifit-account"
},
"acceptanceUnknown": {
"type": "boolean"
},
"retryAllowed": {
"type": "boolean",
"const": false
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"elapsedSeconds": {
"type": "number",
"minimum": 0
},
"progressPercent": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"timing": {
"type": "object",
"properties": {
"resultUrlReceivedAt": {
"type": "number"
},
"resultDownloadedAt": {
"type": "number"
},
"apiClientMs": {
"type": "number"
},
"userTotalMs": {
"type": "number"
},
"downloadMs": {
"type": "number"
}
},
"required": [
"resultUrlReceivedAt",
"resultDownloadedAt",
"apiClientMs",
"userTotalMs",
"downloadMs"
],
"additionalProperties": false
},
"resultAssetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"message": {
"type": "string"
},
"accountRequestStatus": {
"type": "string"
},
"durationSeconds": {
"type": "number",
"minimum": 0
}
},
"required": [
"status",
"environment",
"quotaSource",
"acceptanceUnknown",
"retryAllowed",
"accountRequestStatus"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_guest_demo_status
Read the current private guest-session allowance and its perSessionLimit denominator. Does not upload images or generate anything.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"environment": {
"type": "string"
},
"dailyLimit": {
"type": "number"
},
"remainingToday": {
"type": "number"
},
"timeZone": {
"type": "string"
},
"perSessionLimit": {
"type": "number"
},
"sessionRemaining": {
"type": "number"
},
"requestId": {
"type": [
"string",
"null"
]
},
"busy": {
"type": "boolean"
},
"queuePaused": {
"type": "boolean"
},
"queueMode": {
"type": "string"
},
"minimumStartGapSeconds": {
"type": "number"
},
"sessionExpiresAt": {
"type": "string"
}
},
"required": [
"environment",
"dailyLimit",
"remainingToday",
"timeZone",
"perSessionLimit",
"sessionRemaining",
"requestId",
"busy",
"minimumStartGapSeconds",
"sessionExpiresAt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟡prepare_guest_upload(role)
For Codex/local files: reserve one single-use HTTPS PUT upload for a personal photo or product image. Upload the user-selected file bytes to the returned URL; do not disclose that capability. Server resizes JPEG, PNG or WebP automatically. At most one upload per role per guest session. This does not generate a try-on.
入力スキーマ
{
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"personal",
"product"
]
}
},
"required": [
"role"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"uploadUrl": {
"type": "string"
},
"method": {
"type": "string",
"const": "PUT"
},
"maxBytes": {
"type": "number"
},
"expiresInSeconds": {
"type": "number"
},
"role": {
"type": "string"
}
},
"required": [
"uploadUrl",
"method",
"maxBytes",
"expiresInSeconds",
"role"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🔴create_try_on(personal_image, garment_image, personal_asset_id, product_asset_id, consent)
Generate a DressMe virtual try-on from the user’s personal photo and clothing reference only after their explicit request and permission. In ChatGPT pass both attached image files; in Codex pass the two asset IDs returned by completed private uploads. Use one method, not both. Consumes one session attempt and one shared daily attempt. One attempt per guest session, ten per day across all guests. Do not automatically retry or bypass limits. Returns a receipt; get_try_on retrieves its status/result.
入力スキーマ
{
"type": "object",
"properties": {
"personal_image": {
"type": "object",
"properties": {
"download_url": {
"type": "string",
"maxLength": 8192,
"format": "uri"
},
"file_id": {
"type": "string",
"maxLength": 512
},
"mime_type": {
"type": "string",
"maxLength": 128
},
"file_name": {
"type": "string",
"maxLength": 255
}
},
"required": [
"download_url",
"file_id"
],
"additionalProperties": false
},
"garment_image": {
"type": "object",
"properties": {
"download_url": {
"type": "string",
"maxLength": 8192,
"format": "uri"
},
"file_id": {
"type": "string",
"maxLength": 512
},
"mime_type": {
"type": "string",
"maxLength": 128
},
"file_name": {
"type": "string",
"maxLength": 255
}
},
"required": [
"download_url",
"file_id"
],
"additionalProperties": false
},
"personal_asset_id": {
"type": "string",
"maxLength": 128
},
"product_asset_id": {
"type": "string",
"maxLength": 128
},
"consent": {
"type": "boolean",
"const": true
}
},
"required": [
"consent"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string"
},
"status": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"jobId": {
"type": "string"
},
"resultAssetId": {
"type": "string"
},
"durationSeconds": {
"type": "number"
},
"timing": {
"type": "object",
"properties": {
"resultUrlReceivedAt": {
"type": "number"
},
"resultDownloadedAt": {
"type": "number"
},
"apiClientMs": {
"type": "number"
},
"userTotalMs": {
"type": "number"
},
"downloadMs": {
"type": "number"
}
},
"required": [
"resultUrlReceivedAt",
"resultDownloadedAt",
"apiClientMs",
"userTotalMs",
"downloadMs"
],
"additionalProperties": false
},
"error": {
"type": "string"
},
"failureStage": {
"type": "string"
},
"failureCode": {
"type": "string"
},
"failureHttpStatus": {
"type": "number"
},
"submissionAttempted": {
"type": "boolean"
},
"queuePosition": {
"type": [
"number",
"null"
]
},
"queuePaused": {
"type": "boolean"
},
"minimumStartGapSeconds": {
"type": "number"
}
},
"required": [
"requestId",
"status",
"createdAt",
"updatedAt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_try_on(request_id, include_image)
Read only an existing request belonging to this authenticated guest session. With include_image=true, shows the completed image in a result card in ChatGPT and an inline image in other MCP clients. Does not create/retry a generation. Poll no more often than once every five seconds. A needs_review result must not be replayed.
入力スキーマ
{
"type": "object",
"properties": {
"request_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"include_image": {
"default": true,
"type": "boolean"
}
},
"required": [
"request_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"requestId": {
"type": "string"
},
"status": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"updatedAt": {
"type": "string"
},
"jobId": {
"type": "string"
},
"resultAssetId": {
"type": "string"
},
"durationSeconds": {
"type": "number"
},
"timing": {
"type": "object",
"properties": {
"resultUrlReceivedAt": {
"type": "number"
},
"resultDownloadedAt": {
"type": "number"
},
"apiClientMs": {
"type": "number"
},
"userTotalMs": {
"type": "number"
},
"downloadMs": {
"type": "number"
}
},
"required": [
"resultUrlReceivedAt",
"resultDownloadedAt",
"apiClientMs",
"userTotalMs",
"downloadMs"
],
"additionalProperties": false
},
"error": {
"type": "string"
},
"failureStage": {
"type": "string"
},
"failureCode": {
"type": "string"
},
"failureHttpStatus": {
"type": "number"
},
"submissionAttempted": {
"type": "boolean"
},
"queuePosition": {
"type": [
"number",
"null"
]
},
"queuePaused": {
"type": "boolean"
},
"minimumStartGapSeconds": {
"type": "number"
}
},
"required": [
"requestId",
"status",
"createdAt",
"updatedAt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢search(query)
Find official Velox DressMe virtual try-on integration documentation, authentication, SDK languages, upload, polling and recovery guidance. Searches only the deployed public documentation corpus.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
}
},
"required": [
"id",
"title",
"url"
],
"additionalProperties": false
}
}
},
"required": [
"results"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢fetch(id)
Read the full public document for an ID returned by search, with an official source URL and deployed content checksum. Does not fetch arbitrary URLs or private files.
入力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string",
"enum": [
"getting-started",
"sdk-catalog",
"sdk-reference",
"walkthrough",
"hosting",
"offline-example",
"typescript-types",
"security"
]
}
},
"required": [
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"sha256": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sha256"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_integration_example(language)
Retrieve the runnable offline JavaScript/Node.js integration example or accompanying TypeScript declarations. Other language SDKs are not released. The example uses dummy local responses, with no cloud calls or generation charges.
入力スキーマ
{
"type": "object",
"properties": {
"language": {
"type": "string",
"enum": [
"javascript",
"typescript"
]
}
},
"required": [
"language"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"language": {
"type": "string"
},
"simulated": {
"type": "boolean"
},
"repository": {
"type": "string",
"format": "uri"
},
"setup": {
"type": "array",
"items": {
"type": "string"
}
},
"example": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"sha256": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sha256"
],
"additionalProperties": false
},
"declarations": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"sha256": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sha256"
],
"additionalProperties": false
},
"productionGuidance": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"sha256": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sha256"
],
"additionalProperties": false
}
},
"required": [
"language",
"simulated",
"repository",
"setup",
"example",
"productionGuidance"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_partner_access_requirements
Explain how to apply for manually provisioned Velox Partner API access and keep the scoped application key on a backend. Does not create accounts, issue keys, send an application or promise a universal free allowance.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}出力スキーマ
{
"type": "object",
"properties": {
"applicationUrl": {
"type": "string",
"format": "uri"
},
"applicationTopic": {
"type": "string"
},
"provisioning": {
"type": "string"
},
"shopperAuthentication": {
"type": "string"
},
"allowance": {
"type": "string"
},
"credentials": {
"type": "string"
},
"source": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string",
"format": "uri"
},
"sha256": {
"type": "string"
}
},
"required": [
"id",
"title",
"text",
"url",
"sha256"
],
"additionalProperties": false
},
"sdkReference": {
"type": "string",
"format": "uri"
}
},
"required": [
"applicationUrl",
"applicationTopic",
"provisioning",
"shopperAuthentication",
"allowance",
"credentials",
"source",
"sdkReference"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_partner_application_guide
Read the official in-chat Partner API application workflow: [email protected], sender confirmation, optional project details, draft preview, send approval and actual reply verification. Public guidance only; this tool does not send email, inspect a mailbox, submit a form, issue keys or change access. No TriFit account is required.
入力スキーマ
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}コミュニティ
エビデンス