Velox TriFit
DressMe API docs and SDK guidance; OAuth account/guest photo upload and virtual try-on tools.
我該用這個嗎
品質與安全性
發現項目(2)
- LOW在 get_partner_access_requirements 中
- LOW在 fetch 中
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `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#"
}社群
證據