MCP

Riferimento degli strumenti

Ogni strumento esposto dal server MCP di DesignerBox, con i suoi input, la struttura di risposta e un esempio pronto da copiare e incollare.

Autenticazione

Ogni richiesta a /api richiede un header Authorization con un Bearer token. Hai due modi per ottenerne uno.

OAuth (consigliato per i client AI)

I client AI eseguono la Dynamic Client Registration alla prima connessione, poi guidano l'utente attraverso una schermata di consenso OAuth. La pagina /mcp/connect gestisce tutto automaticamente. Il tuo client riceve un token di accesso valido 30 giorni.

Chiave API

Per script e CI, genera una API key personale nell'app DesignerBox in Account / API Keys. La chiave inizia con apikey_ e viene presentata come bearer token come qualsiasi altro.

Endpoint

Tutte le chiamate agli strumenti vanno a un unico endpoint JSON-RPC 2.0 tramite HTTPS POST.

POST https://mcp.designerbox.ai/api

Strumenti

list_designs

Elenca i progetti del team corrente, con filtro cartella e paginazione opzionali.

Argomenti

limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).
folderIdstring · opzionale
ID cartella opzionale per filtrare i progetti in una cartella specifica.

Restituisce

Un oggetto con designs: [{id, title, folderId, brandProfileId, createdAt, updatedAt}]. Fino a limit risultati.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":1,
 "params":{"name":"list_designs","arguments":{"limit":10}}}

get_design

Recupera tutti i metadati di un singolo progetto, inclusi titolo, cartella, riferimenti al profilo brand e data di creazione.

Argomenti

designIdstring · obbligatorio
ID progetto DesignerBox da una chiamata di elenco.

Restituisce

Un oggetto con tutti i metadati del progetto: id, title, folderId, brandProfileId, createdAt, updatedAt e gli eventuali dati provider associati.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":2,
 "params":{"name":"get_design","arguments":{"designId":""}}}

search_designs

Ricerca a testo completo tra i titoli e le descrizioni dei progetti del team attivo. Filtri: limit (1-100, default 20).

Argomenti

querystring · obbligatorio
Sottostringa da cercare (3-200 caratteri).
limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).

Restituisce

Un oggetto con designs: [{id, title, folderId, snippet, updatedAt}]. Snippet contiene il contesto corrispondente.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":3,
 "params":{"name":"search_designs","arguments":{"query":"logo","limit":10}}}

list_brand_profiles

Restituisce tutti i profili brand del team corrente con i campi voice, temi, nicchia e settore.

Argomenti

Nessun argomento.

Restituisce

Un oggetto con profiles: [{id, name, brandVoice, mainThemes, primaryNiche, industry, isActive}].

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":4,
 "params":{"name":"list_brand_profiles","arguments":{}}}

list_folders

Elenca le cartelle nel workspace del team attivo. Utile per indirizzare list_designs a una cartella specifica.

Argomenti

Nessun argomento.

Restituisce

Un oggetto con folders: [{id, name, designCount, createdAt}].

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":5,
 "params":{"name":"list_folders","arguments":{}}}

list_photo_packs

Esplora i photo pack disponibili. Accetta un parametro lingua opzionale per filtrare le etichette di categoria.

Argomenti

languagestring · opzionale
Codice lingua BCP-47 per filtrare le etichette di categoria dei photo pack (es. en, de, es).

Restituisce

Un oggetto con packs: [{id, name, category, imageCount, language}].

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":6,
 "params":{"name":"list_photo_packs","arguments":{}}}

list_teams

Restituisce i team di cui l'utente autenticato è proprietario o membro, con il team attivo contrassegnato.

Argomenti

Nessun argomento.

Restituisce

Un oggetto con currentTeamId e teams: [{teamId, teamName, isCurrent}].

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":7,
 "params":{"name":"list_teams","arguments":{}}}

get_plan_limits

Leggi il livello di abbonamento corrente e le quote per livello (spazio e crediti AI). Il bucket aiCredits contiene i crediti dell'abbonamento mensile, il purchasedBalance dei pack di crediti una tantum, il tetto totale e la disponibilità residua. Utile prima degli strumenti di modifica per prevedere se la chiamata andrà a buon fine.

Argomenti

Nessun argomento.

Restituisce

Un oggetto con tier, isPaid, isTrial, upgradeUrl, limits.storage ({limit, current, exceeded}), limits.aiCredits ({monthly:{limit,current,exceeded}, purchasedBalance, total, available}) e creditsAvailable ({monthly, purchasedBalance, total}). Per ULTRA Unlimited, limits.aiCredits.monthly.limit e limits.aiCredits.total valgono entrambi -1, limits.aiCredits.available è null e creditsAvailable.monthly e creditsAvailable.total sono entrambi null. purchasedBalance è sempre un numero (zero quando non ci sono pack).

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":8,
 "params":{"name":"get_plan_limits","arguments":{}}}

get_plan

Leggi il nome del piano, il ciclo di fatturazione (mensile o annuale), lo stato dell'abbonamento Stripe, la valuta, la data di rinnovo, la fine della prova e il numero di postazioni. Si abbina a get_plan_limits, che restituisce l'utilizzo delle quote. Disponibile su ogni piano senza costo in crediti AI.

Argomenti

Nessun argomento.

Restituisce

Un oggetto con tier, isPaid, isTrial, billingCycle (monthly o yearly o null), status (stato dell'abbonamento Stripe), currency, renewalDate (ISO 8601), trialEnd (ISO 8601 o null), quantity (numero di postazioni o null), cancelAtPeriodEnd e upgradeUrl.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":43,
 "params":{"name":"get_plan","arguments":{}}}

search_tools

Cerca nel catalogo strumenti MCP per query a testo libero, categoria o intento. Restituisce categorie, requiresScope, descrizioni in una riga e i tag di caso d'uso corrispondenti. Gratuito per tutti i piani (superficie di discovery).

Argomenti

All optional. Call with no arguments to list all 43 tools.

querystring · opzionale
Ricerca a testo libero tra nomi degli strumenti, descrizioni e tag di caso d'uso.
categorystring · opzionale
Filtra su una categoria: designs, brand, teams, discovery, other.

Restituisce

Un oggetto con totalTools, matchCount, categories: [string[]] e tools: [{name, category, requiresScope, description, useCases, matchedOn: [name|category|description|use_case]}].

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":9,
 "params":{"name":"search_tools",
           "arguments":{"query":"brand profile"}}}

create_avatarPiano a pagamento

Genera un'immagine avatar AI da un prompt testuale. Restituisce un URL all'immagine generata e l'ID del task. Richiede crediti AI e un piano a pagamento.

Argomenti

promptstring · obbligatorio
Descrizione testuale dell'avatar da generare (10-500 caratteri).
stylestring · opzionale
Suggerimento di stile opzionale passato al modello di immagini (es. "photorealistic", "cartoon").
clientRequestIdstring · opzionale
Chiave di idempotenza opzionale. La stessa chiave entro 5 minuti restituisce il risultato memorizzato in cache.

Restituisce

Un oggetto con taskId, status, imageUrl (quando pronta) e creditsUsed.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":10,
 "params":{"name":"create_avatar",
           "arguments":{"prompt":"professional headshot, warm lighting"}}}

set_current_team

Cambia il team attivo per questo Bearer token. L'utente deve esserne membro. Viene salvato sul token OAuth; la modifica in sessione lo rende effettivo immediatamente per gli strumenti successivi nella stessa conversazione.

Argomenti

teamIdstring · obbligatorio
teamId di destinazione da list_teams. L'appartenenza viene ri-validata lato server.

Restituisce

Un oggetto con teamId, teamName, persisted (true se OAuth, false se API key) e una nota opzionale.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":11,
 "params":{"name":"set_current_team",
           "arguments":{"teamId":"team_xxxxx"}}}

update_brand_profile

Modifica il profilo brand attivo. Campi consentiti: brandVoice, mainThemes, contentGoals, contentTypes, primaryNiche, subNiches, industry, industries. Qualsiasi altro campo viene ignorato silenziosamente.

Argomenti

brandVoicearray<string> · opzionale
Array di descrittori della brand voice (es. ["bold", "minimal"]).

Other patchable fields: mainThemes, contentGoals, contentTypes, primaryNiche, subNiches, industry, industries.

Restituisce

Un oggetto con profileId, name, updated: [nomi dei campi modificati] e i valori attuali di brandVoice, mainThemes, contentGoals, contentTypes, primaryNiche, industry dopo la modifica.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":12,
 "params":{"name":"update_brand_profile",
           "arguments":{"brandVoice":["bold","minimal"]}}}

Avatar

list_avatars

Elenca i task di generazione avatar dell'utente corrente (a livello utente, non di team). Filtro di stato opzionale e limit (default 50, max 100).

Argomenti

statusstring · opzionale
Filtro di stato avatar opzionale: pending, generating, completed, failed, cancelled.
limitnumber · opzionale · default 50
Numero massimo di risultati da restituire (1-100, default 20).

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":13,
 "params":{"name":"list_avatars","arguments":{"status":"completed"}}}

get_avatar

Recupera tutti i dettagli di un singolo task avatar tramite taskUUID. Restituisce lo stato del task incluse le immagini generate al completamento. L'accesso cross-team viene rifiutato quando teamId è risolto.

Argomenti

taskUUIDstring · obbligatorio
L'UUID del task avatar restituito da create_avatar.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":14,
 "params":{"name":"get_avatar","arguments":{"taskUUID":""}}}

get_avatar_status

Interroga l'avanzamento di un task avatar. Restituisce uno snapshot di stato essenziale (status, progress, message). Usa get_avatar per recuperare tutti i dettagli incluse le immagini generate al completamento.

Argomenti

taskUUIDstring · obbligatorio
L'UUID del task avatar restituito da create_avatar.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":15,
 "params":{"name":"get_avatar_status","arguments":{"taskUUID":""}}}

Template

list_templates

Elenca i content template raggruppati per categoria. Strutturato come catalogo (non limitato al team). Passa una lingua per restringere i risultati a una singola localizzazione; ometti per tutte le localizzazioni. Usa get_template per il corpo completo.

Argomenti

languagestring · opzionale
Codice lingua BCP-47 per filtrare le etichette di categoria dei photo pack (es. en, de, es).

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":16,
 "params":{"name":"list_templates","arguments":{"language":"en"}}}

get_template

Recupera un singolo template tramite id o slug. Restituisce il corpo del template da usare come scaffold di contenuto. È obbligatorio uno tra id o slug.

Argomenti

idstring · opzionale
ID del template. È obbligatorio id oppure slug.
slugstring · opzionale
Slug del template. È obbligatorio id oppure slug.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":17,
 "params":{"name":"get_template","arguments":{"slug":"hero-banner"}}}

Asset

list_assets

Elenca gli asset (immagini, video e file caricati) del team attivo. Filtri opzionali per cartella o prefisso di tipo MIME. Usa get_asset per tutti i dettagli.

Argomenti

folderIdstring · opzionale
ID cartella opzionale per filtrare i progetti in una cartella specifica.
pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
limitnumber · opzionale · default 30
Numero massimo di risultati da restituire (1-100, default 20).
typestring · opzionale
Filtro opzionale per prefisso di tipo MIME (per esempio "image" o "video").

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":18,
 "params":{"name":"list_assets","arguments":{"type":"image","limit":20}}}

get_asset

Recupera tutti i dettagli di un singolo asset tramite ID. L'accesso cross-team viene rifiutato dal servizio sottostante.

Argomenti

idstring · obbligatorio
ID dell'asset (Mongo _id) restituito da list_assets.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":19,
 "params":{"name":"get_asset","arguments":{"id":""}}}

list_brand_assets

Elenca gli asset del brand (logo, font, campioni di palette e simili) del team attivo. Filtri opzionali per profilo brand, tipo di file, categoria, tag o ricerca a testo libero. Diverso dai profili brand, che descrivono voice e temi.

Argomenti

brandProfileIdstring · opzionale
ID del profilo brand opzionale per limitare gli asset a un singolo profilo.
fileTypestring · opzionale
Filtro opzionale per tipo di file (per esempio "png", "svg", "ttf").
categorystring · opzionale
Etichetta di categoria opzionale (per esempio "logo", "palette", "font").
tagsarray<string> · opzionale
Elenco opzionale di stringhe tag per restringere gli asset del brand.
searchstring · opzionale
Query a testo libero opzionale tra i nomi degli asset del brand.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":20,
 "params":{"name":"list_brand_assets","arguments":{"category":"logo"}}}

Generazione AI

generate_imagePiano a pagamento

Genera una o più immagini AI in modo sincrono (circa 30 secondi). Costa almeno 1 credito AI per immagine. Il livello FREE è bloccato. Passa clientRequestId per tentativi idempotenti entro 5 minuti. Restituisce subito gli URL delle immagini generate.

Argomenti

promptstring · obbligatorio
Descrizione testuale dell'immagine da generare (1-2000 caratteri).
modelstring · opzionale
ID modello di immagini opzionale. Per impostazione predefinita usa la catena di fallback della piattaforma.
aspectRatiostring · opzionale
Rapporto d'aspetto dell'immagine: 1:1, 3:4, 4:3, 9:16 o 16:9.
numberResultsnumber · opzionale · default 1
Quante immagini generare (1-4). Default 1. Ogni immagine costa un credito.
negativePromptstring · opzionale
Parole o frasi opzionali che il modello dovrebbe evitare nell'immagine generata.
clientRequestIdstring · opzionale
Chiave di idempotenza opzionale. La stessa chiave entro 5 minuti restituisce il risultato memorizzato in cache.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":21,
 "params":{"name":"generate_image",
           "arguments":{"prompt":"sunset over the alps","aspectRatio":"16:9"}}}

generate_videoPiano a pagamento

Invia un task di generazione video AI. Restituisce subito un taskUUID; il task viene elaborato in modo asincrono (supportato da BullMQ). Usa get_video_status per verificarne il completamento. Il costo in crediti è calcolato in base al modello e alla durata. Il livello FREE è bloccato.

Argomenti

promptstring · obbligatorio
Descrizione testuale del video da generare (1-2000 caratteri).
modelstring · obbligatorio
ID del modello video. Vedi /api/v1/ai/video-models per gli ID disponibili.
typestring · opzionale · default text-to-video
Modalità di generazione: text-to-video (default), image-to-video o audio-to-video.
durationnumber · opzionale
Durata richiesta del video in secondi (1-60). Per impostazione predefinita usa il valore predefinito del modello.
resolutionstring · opzionale
Stringa di risoluzione opzionale (per esempio 720p, 1080p). Dipende dal modello.
aspectRatiostring · opzionale
Rapporto d'aspetto opzionale (per esempio 16:9, 9:16). Dipende dal modello.
inputImagestring · opzionale
Obbligatorio per la modalità image-to-video: un URL pubblico all'immagine sorgente.
negativePromptstring · opzionale
Parole o frasi opzionali che il modello dovrebbe evitare nel video generato.
clientRequestIdstring · opzionale
Chiave di idempotenza opzionale. La stessa chiave entro 5 minuti restituisce il risultato memorizzato in cache.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":22,
 "params":{"name":"generate_video",
           "arguments":{"prompt":"a cat surfing","model":""}}}

get_video_status

Interroga l'avanzamento di un task di generazione video. Restituisce lo stato completo del task incluso l'URL finale del video al completamento. Supportato da una coda BullMQ (asincrono reale).

Argomenti

taskUUIDstring · obbligatorio
L'UUID del task video restituito da generate_video.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":23,
 "params":{"name":"get_video_status","arguments":{"taskUUID":""}}}

Foto stock

search_stock_photos

Cerca foto stock su Unsplash, Pexels e Pixabay simultaneamente. Restituisce i risultati di ogni provider più gli eventuali errori per provider. Solo ricerca; nessun elenco o esplorazione.

Argomenti

querystring · obbligatorio
Sottostringa da cercare (3-200 caratteri).
pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
perPagenumber · opzionale · default 20
Risultati per pagina (1-50). Default 20.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":24,
 "params":{"name":"search_stock_photos","arguments":{"query":"mountains"}}}

Workflow della community e pipeline

list_community_workflows

Elenca i workflow pubblicati dalla community. Filtra per categoria, ordina per popolari, recenti o visualizzazioni e limita a mine, team o all. Usa get_community_workflow per il grafo completo.

Argomenti

pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).
categorystring · opzionale · default all
Filtro di categoria per i workflow della community. Usa "all" per nessuna restrizione di categoria.
sortstring · opzionale · default popular
Ordinamento: popular, recent o views. Default popular.
searchstring · opzionale
Query a testo libero opzionale per restringere i workflow della community.
filterstring · opzionale · default all
Filtro di ambito: all (tutti), mine (i tuoi workflow pubblicati) o team. Default all.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":25,
 "params":{"name":"list_community_workflows","arguments":{"sort":"recent"}}}

get_community_workflow

Recupera tutti i dettagli di un workflow della community incluso il grafo di nodi e collegamenti. Usa list_community_workflows per l'esplorazione.

Argomenti

idstring · obbligatorio
ID del workflow della community (Mongo _id) restituito da list_community_workflows.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":26,
 "params":{"name":"get_community_workflow","arguments":{"id":""}}}

list_pipelines

Elenca le pipeline (canvas dei workflow) del team attivo. Restituisce una struttura essenziale con il numero di nodi; usa get_pipeline per il grafo completo.

Argomenti

pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).
sortstring · opzionale · default updatedAt
Ordinamento delle pipeline: updatedAt, createdAt o name. Default updatedAt.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":27,
 "params":{"name":"list_pipelines","arguments":{}}}

get_pipeline

Recupera una pipeline (canvas del workflow) tramite ID, limitata al team attivo. Restituisce il grafo completo di nodi e collegamenti.

Argomenti

idstring · obbligatorio
ID della pipeline (Mongo _id) restituito da list_pipelines.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":28,
 "params":{"name":"get_pipeline","arguments":{"id":""}}}

list_whiteboards

Elenca le lavagne MySpace dell'utente corrente, limitate al team attivo. Il contenuto delle lavagne è omesso nella vista elenco; usa l'endpoint di lettura dedicato per il contenuto.

Argomenti

Nessun argomento.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":29,
 "params":{"name":"list_whiteboards","arguments":{}}}

Conversazioni e lavagne

list_conversations

Elenca le conversazioni chat dell'AI Assistant dell'utente per il team attivo. Filtro di stato opzionale (active o archived) e filtro per tag. Usa get_conversation per l'intera cronologia dei messaggi.

Argomenti

statusstring · opzionale · default active
Filtro di stato della conversazione: active (default) o archived.
pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).
tagsarray<string> · opzionale
Elenco opzionale di stringhe tag. Restituisce le conversazioni che corrispondono a uno qualsiasi dei tag forniti.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":30,
 "params":{"name":"list_conversations","arguments":{"status":"archived"}}}

get_conversation

Recupera una singola conversazione dell'AI Assistant inclusa l'intera cronologia dei messaggi. L'accesso cross-user e cross-team viene rifiutato dal servizio sottostante.

Argomenti

idstring · obbligatorio
ID della conversazione restituito da list_conversations.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":31,
 "params":{"name":"get_conversation","arguments":{"id":""}}}

Gallerie e skill

generate_designPiano a pagamento

Genera un design di galleria applicando una skill a un'immagine sorgente (image-to-image). Sincrono ~30-45s. Costa 1 credito AI per chiamata. Il livello FREE è bloccato. Usa list_skills per scoprire i valori skillId validi. Passa clientRequestId per tentativi idempotenti entro 5 minuti.

Argomenti

sourceImageUrlstring · obbligatorio
URL pubblico dell'immagine sorgente da trasformare.
skillIdstring · obbligatorio
ID della skill da applicare. Chiama prima list_skills per scoprire gli ID disponibili.
clientRequestIdstring · opzionale
Chiave di idempotenza opzionale. La stessa chiave entro 5 minuti restituisce il risultato memorizzato in cache.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":32,
 "params":{"name":"generate_design",
           "arguments":{"sourceImageUrl":"https://example.com/photo.jpg","skillId":""}}}

list_galleries

Elenca gli asset di galleria AI (design generati tramite generate_design) per il team e l'utente attivi. Supporta la paginazione e un filtro di categoria opzionale. Restituisce una struttura essenziale: assetId, assetUrl, slug, displayName, galleryCategory, createdAt.

Argomenti

limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).
pagenumber · opzionale · default 1
Numero di pagina (partendo da 1). Default 1.
categorystring · opzionale
Filtro di categoria di galleria opzionale (per esempio "portrait", "landscape").

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":33,
 "params":{"name":"list_galleries","arguments":{"limit":10}}}

list_skills

Elenca le skill attive disponibili per generate_design. Restituisce skillId, name, type (image o video), group e category. Usalo per scoprire i valori skillId validi prima di chiamare generate_design.

Argomenti

typestring · opzionale
Filtro opzionale: skill image o video.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":34,
 "params":{"name":"list_skills","arguments":{"type":"image"}}}

Generazione cinematografica

generate_cinema_studioPiano a pagamento

Genera immagini AI cinematografiche usando una combinazione di corpo macchina, obiettivo, lunghezza focale, apertura e rapporto d'aspetto. Sincrono ~30s. Costa 1 credito AI per immagine. Il livello FREE è bloccato. Fornisci referenceImageUrl per passare alla modalità reference-image (trasferimento di stile). Passa clientRequestId per tentativi idempotenti entro 5 minuti.

Argomenti

scenePromptstring · obbligatorio
Descrizione della scena per lo scatto cinematografico (1-2000 caratteri).
cameraBodystring · opzionale · default arri-alexa-65
ID del corpo macchina che controlla la firma di rendering (per esempio "arri-alexa-65", "red-v-raptor", "sony-venice-2").
lensstring · opzionale · default panavision-primo
ID descrittore dell'obiettivo (per esempio "classic-anamorphic", "master-prime", "panavision-primo").
focalLengthstring · opzionale · default fl-50
ID della lunghezza focale da fl-14 a fl-200 (copre da 14mm a 200mm).
aperturestring · opzionale · default f-2.8
ID dell'apertura da f-1.2 a f-11.
aspectRatiostring · opzionale · default 16:9
Rapporto d'aspetto dell'immagine: 16:9, 1:1, 9:16 o 4:3. Default 16:9.
imageCountnumber · opzionale · default 2
Numero di fotogrammi cinematografici da generare (1-4). Default 2. Ogni fotogramma costa un credito.
referenceImageUrlstring · opzionale
URL di un'immagine di riferimento opzionale. Se fornito, passa alla modalità reference-image (trasferimento di stile).
clientRequestIdstring · opzionale
Chiave di idempotenza opzionale. La stessa chiave entro 5 minuti restituisce il risultato memorizzato in cache.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":35,
 "params":{"name":"generate_cinema_studio",
           "arguments":{"scenePrompt":"a wide shot of a foggy harbour at dawn","aspectRatio":"16:9","imageCount":2}}}

Gestione dei task asincroni

cancel_avatar_taskDistruttivi

Annulla un task di generazione avatar in attesa o in corso. Il percorso di rimborso lato servizio restituisce i crediti addebitati in precedenza. I task in stato terminale (completed o failed) non possono essere annullati; la chiamata restituisce un errore strutturato.

Argomenti

taskUUIDstring · obbligatorio
L'UUID del task avatar restituito da create_avatar.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":36,
 "params":{"name":"cancel_avatar_task","arguments":{"taskUUID":""}}}

cancel_video_taskDistruttivi

Annulla un task di generazione video in attesa o in corso. Il percorso di rimborso lato servizio restituisce i crediti addebitati in precedenza. I task in stato terminale (completed o failed) non possono essere annullati; la chiamata restituisce un errore strutturato.

Argomenti

taskUUIDstring · obbligatorio
L'UUID del task video restituito da generate_video.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":37,
 "params":{"name":"cancel_video_task","arguments":{"taskUUID":""}}}

list_video_tasks

Elenca i task di generazione video dell'utente corrente (a livello utente, in parità con list_avatars). Filtro di stato opzionale (pending, processing, completed, failed, cancelled) e limit (default 20, max 100). Usa get_video_status per i dettagli completi di polling.

Argomenti

statusstring · opzionale
Filtro di stato opzionale: pending, processing, completed, failed, cancelled.
limitnumber · opzionale · default 20
Numero massimo di risultati da restituire (1-100, default 20).

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":38,
 "params":{"name":"list_video_tasks","arguments":{"status":"completed"}}}

Recupero dei dettagli singoli

get_brand_profile

Recupera tutti i dettagli di un singolo profilo brand tramite ID. L'accesso cross-team viene rifiutato con un generico not-found (nessuna rivelazione di esistenza). Usa list_brand_profiles per enumerare gli ID.

Argomenti

brandProfileIdstring · obbligatorio
ID del profilo brand (uuid) restituito da list_brand_profiles.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":39,
 "params":{"name":"get_brand_profile","arguments":{"brandProfileId":""}}}

get_brand_asset

Recupera tutti i dettagli di un singolo asset del brand tramite ID. L'accesso cross-team viene rifiutato con un generico not-found (nessuna rivelazione di esistenza). Usa list_brand_assets per enumerare gli ID.

Argomenti

brandAssetIdstring · obbligatorio
ID dell'asset del brand (uuid) restituito da list_brand_assets.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":40,
 "params":{"name":"get_brand_asset","arguments":{"brandAssetId":""}}}

get_photo_pack

Recupera una singola categoria di photo pack incluse le sue immagini. Strutturato come catalogo (non limitato al team). Codice lingua opzionale; ripiega sull'inglese quando la localizzazione richiesta manca.

Argomenti

categoryIdstring · obbligatorio
ID della categoria di photo pack (per esempio "3d-rendered-object").
languagestring · opzionale · default en
Codice lingua BCP-47 per filtrare le etichette di categoria dei photo pack (es. en, de, es).

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":41,
 "params":{"name":"get_photo_pack","arguments":{"categoryId":"3d-rendered-object"}}}

get_whiteboard

Recupera una singola lavagna tramite ID incluso l'intero blob di contenuto. Le lavagne sono a livello utente (solo il creatore); l'accesso cross-user viene rifiutato con un generico not-found.

Argomenti

whiteboardIdstring · obbligatorio
ID della lavagna (uuid) restituito da list_whiteboards.

Esempio

{"jsonrpc":"2.0","method":"tools/call","id":42,
 "params":{"name":"get_whiteboard","arguments":{"whiteboardId":""}}}

Risorse MCP

Le risorse sono contesto in sola lettura che il client può recuperare tramite il metodo MCP resources/read. Claude le recupera all'inizio della conversazione per avere il contesto di account, team e brand senza doverlo richiedere a ogni sessione.

designerbox://account/summary

Piano, crediti AI usati / limite, numero di progetti, nome del team attivo e numero di cartelle. I conteggi sono limitati a 100 ciascuno per un caricamento rapido.

designerbox://brand-profiles/active

Il profilo brand attivo per il team corrente. Restituisce i campi rilevanti per l'LLM: brandVoice, mainThemes, contentGoals, contentTypes, primaryNiche, industry.

designerbox://teams/current

Metadati del team corrente (teamId, teamName) più il conteggio totalTeamsAvailable. Abbinalo a list_teams + set_current_team per cambiare team.

designerbox://recent-designs

I 10 progetti più recenti del team attivo, precaricati nel contesto di Claude così da avere conoscenza immediata della libreria di progetti senza una chiamata a strumenti.

Workflow con nome

Scorciatoie del menu slash che coordinano più strumenti. Scegline una e lascia che il tuo assistente AI segua un compito in più passaggi, con conferma prima di modificare qualsiasi cosa.

/weekly-design-batch

Legge il profilo brand e i progetti recenti, poi propone temi di design e cartelle di destinazione per la settimana in arrivo.

/audit-gallery

Scorre i progetti recenti tramite list_designs e segnala gli elementi che si discostano dal tuo profilo brand attivo. Sola lettura.

/brand-sync

Confronta i progetti con il tuo profilo brand attivo ed evidenzia lacune o campi obsoleti. Propone aggiornamenti; approvi tu prima che qualcosa cambi.

/regenerate-with-style

Rigenera un progetto esistente in uno stile diverso. Chiama get_asset, poi list_skills se necessario, poi generate_design.

Endpoint di discovery e OAuth

Metadati conformi agli standard così qualsiasi client MCP può configurarsi automaticamente.

  • GET /.well-known/oauth-protected-resource/api RFC 9728
  • GET /.well-known/oauth-authorization-server RFC 8414
  • GET /oauth/.well-known/openid-configuration OIDC
  • POST /oauth/reg Dynamic Client Registration (RFC 7591)
  • GET /oauth/auth Authorize (PKCE-S256 required)
  • POST /oauth/token Token exchange

Controlla il tuo workflow di design da qualsiasi assistente AI

Cerca progetti, esplora photo pack, aggiorna profili brand e genera avatar chattando con Claude o Cursor. Una connessione sicura, tutte le funzionalità di DesignerBox.