Skip to main content
Glama

sapiens_reference

Read-only

O 'popup global de referência' do Sapiens. Espelha o modal 'Selecionar Referência' do gerador web: um lugar só pra navegar os bancos e pegar o que vira referência em imagem/vídeo. READ-ONLY. DUAS sub-actions: 'browse' (navega um banco) e 'resolve' (acha UM asset pelo ID citável). RESOLVE: passe handle= (img… imagem, vid_… vídeo, film_… vídeo programático, trk_… música, comic_… tirinha, char_… personagem, é o ID que o usuário copia no detalhe do item) e o servidor devolve {mine, isPublic, url, title, mediaKind} SE for seu ou público (senão recusa; nunca acessa asset privado de terceiro). Use a url retornada como referência (referenceImageUrls / startImageUrl / endImageUrl). BROWSE + bucket: 'history' (suas imagens recentes, privadas+públicas), 'favorites' (imagens que você curtiu, só as suas), 'videos' (seus vídeos / Meus Vídeos), 'stock_video' (banco de B-roll da casa, público), 'acervo' (stock + comunidade públicos; aceita term=busca e source=all|stock|community), 'characters' (personagens; mode=mine [default, inclui rascunhos] ou public [Explorar]). BUSCA POR SIGNIFICADO: em history e videos, term + semantic=true acha a peça da pessoa pelo sentido mesmo quando o prompt usou outras palavras (volta até limit, do mais parecido pro menos, com score). Paginado (page/limit, default 20, máx 50; use hasMore). Itens normalizados: imagem PRÓPRIA (history/favorites) traz imageId + url (use imageId em sapiens_image sourceImageIds ou sapiens_video startImageId/endImageId; ou a url em referenceImageUrls); acervo e characters são públicos/de terceiros, use a url (characters trazem mainImageUrl + imageUrls + characterId) em referenceImageUrls / startImageUrl / endImageUrl, NÃO em sourceImageIds. Personagens públicos também têm porta dedicada em sapiens_character action=list_public.

Input Schema

NameRequiredDescriptionDefault
modeNoSó bucket 'characters': 'mine' (seus personagens, inclui rascunhos; default) ou 'public' (catálogo do Explorar).
pageNoPágina (default 1). Use com hasMore pra paginar.
sortNoSó bucket 'pose_map': 'recent' (entrada no banco, default) ou 'used' (as que ele acabou de usar, mais úteis pra continuar uma série).
termNoBusca escrita, vale em QUALQUER bucket. Casa por pedaço de palavra, sem acento: 'board' acha 'storyboard'. Olha prompt, título, folha, personagem e modelo nas suas imagens; prompt/título/modelo nos vídeos; nome nos personagens; prompt/tag/mood no acervo e no banco de vídeo. Pra achar UMA peça específica que você já sabe qual é, use action=resolve com o handle (img_…), é mais direto.
grupoNoSó bucket 'pose_map': a chave de um CONJUNTO (vem no campo `grupo` de cada item). Devolve as outras câmeras da MESMA pose, cada uma com seu `angulo` (frente, de-cima, de-baixo, lado, diagonal). É a cobertura de câmera: o gesto travado e a câmera andando. Com grupo, `term` é ignorado (o conjunto já é a resposta); os outros recortes valem.
limitNoItens por página (default 20, máx 50).
vistaNoSó bucket 'pose_map': de onde a câmera vê o corpo. 'costas' inclui três quartos de costas: a fronteira é peito ou costas pra câmera, que a sombra sem rosto não diz sozinha.
actionYes'browse' navega um bucket do acervo; 'resolve' acha UM asset pelo ID citável (handle <tipo>_<id>) e diz se é seu / público + devolve a url pra usar de referência.
bucketNoSó 'browse': qual banco navegar: 'history' (suas imagens recentes; com term+semantic acha pelo significado), 'favorites' (as que você curtiu), 'videos' (seus vídeos; idem), 'stock_video' (Banco de Vídeo da casa: clipes/B-roll prontos, aceita term/orientation/loopOnly), 'acervo' (stock + comunidade públicos de IMAGEM), 'characters' (personagens), 'depth_map' (guias de movimento: os SEUS com shadowSource='mine', ou o banco curado da casa por default), 'pose_map' (seu banco privado de POSE: mapa de profundidade de corpo num quadro parado, mais de 8 mil poses organizadas por familia/vista/camera/enquadramento/leitura; aceita também term/orientation/people/hasObject/hasSuporte/objeto/favoritesOnly/collection/sort, grupo/porPose pra mesma pose em várias câmeras, mais semantic e similarTo pra busca por sentido).
cameraNoSó bucket 'pose_map': a altura da câmera. 'baixo' = de baixo pra cima (contra-plongée), 'nivel' = na altura do corpo, 'alto' = de cima (plongée). Combina com vista: vista é o giro, camera é a altura.
handleNoSó 'resolve': o ID citável do asset, formato <tipo>_<id>: img_… (imagem), vid_… (vídeo), film_… (vídeo programático), trk_… (música), comic_… (tirinha), char_… (personagem). É o ID que o usuário copia no detalhe do item.
objetoNoSó bucket 'pose_map': um objeto específico ('corda', 'espada', 'arco', 'cama').
peopleNoSó bucket 'pose_map': quantas figuras no quadro. 'solo' (uma pessoa), 'dupla' (duas), 'grupo' (três ou mais).
sourceNoSó bucket 'acervo': fonte. Default 'all' (stock + comunidade).
familiaNoSó bucket 'pose_map': o que o corpo faz, a categoria principal do banco (lida por visão, não pela tag do esqueleto). 'em-movimento' = passada, corrida, chute, giro; 'inclinada' = em pé com o tronco dobrado; 'no-ar' = salto, queda, pendurada; 'invertida' = de cabeça pra baixo. Combina com vista e com semantic.
leituraNoSó bucket 'pose_map': 'clara' = a sombra se entende sozinha. 'confusa' = membro fundido, escondido ou cortado, a sombra que devolve braço sem dono ou duas pernas esquerdas. Pra gerar personagem, prefira 'clara'.
porPoseNoSó bucket 'pose_map': true = só poses que vêm em conjunto de câmeras, na ordem do catálogo da fonte, com as câmeras de cada pose coladas. Use pra montar sequência ou história com a mesma pose de vários pontos.
loopOnlyNoSó bucket 'stock_video': só clipes loopFriendly (loop limpo, bom pra fundo).
semanticNoBuckets 'history', 'videos' e 'pose_map': lê o `term` como DESCRIÇÃO em vez de palavra-chave, e acha pelo SIGNIFICADO. Em history/videos acha a peça da pessoa mesmo quando o prompt usou outras palavras ('praia ao entardecer' acha 'golden hour beach'); em pose_map, o pedido que nenhuma tag cobre ('alguém se protegendo do vento', 'caindo de costas apoiado num braço'). Frase inteira funciona melhor que palavra solta. Sem paginação: volta até `limit` (máx 50), do mais parecido pro menos, com `score`.
hasObjectNoSó bucket 'pose_map': true = só poses que seguram/usam algo (corda, espada, arco, bastão); false = só corpo limpo, sem adereço. Omitir = as duas.
similarToNoSó bucket 'pose_map': o id de uma pose; devolve as MAIS PARECIDAS com ela. Use quando o usuário gostou de uma e quer variações do mesmo gesto.
collectionNoSó bucket 'pose_map': uma coleção nomeada pelo dono ('ação', 'editorial', 'íntimo').
hasSuporteNoSó bucket 'pose_map': true = só poses apoiadas em algo além do chão (banco, bloco, parede, cama: vem em `suporte`); false = só no chão. Omitir = as duas.
orientationNoBuckets 'stock_video' e 'pose_map': filtra formato (vertical 9:16, horizontal 16:9, square 1:1).
shadowSourceNoSó bucket 'depth_map': 'mine' (os que VOCÊ extraiu) ou 'house' (o banco curado da casa, default).
enquadramentoNoSó bucket 'pose_map': até onde o quadro mostra o corpo.
favoritesOnlyNoSó bucket 'pose_map': apenas as poses que o dono marcou com estrela. É o recorte mais forte que existe: comece por ele quando o pedido for vago.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / favoritesOnly / description
      Previous value: -"Só bucket 'pose_map': apenas as poses que o dono marcou com estrela. É o recorte mais forte que existe — comece por ele quando o pedido for vago."New value: +"Só bucket 'pose_map': apenas as poses que o dono marcou com estrela. É o recorte mais forte que existe: comece por ele quando o pedido for vago."
    • changedInput schema / properties / handle / description
      Previous value: -"Só 'resolve': o ID citável do asset, formato <tipo>_<id> — img_… (imagem), vid_… (vídeo), film_… (vídeo programático), trk_… (música), comic_… (tirinha), char_… (personagem). É o ID que o usuário copia no detalhe do item."New value: +"Só 'resolve': o ID citável do asset, formato <tipo>_<id>: img_… (imagem), vid_… (vídeo), film_… (vídeo programático), trk_… (música), comic_… (tirinha), char_… (personagem). É o ID que o usuário copia no detalhe do item."
  2. First observed

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint annotation, the description discloses important authorization behavior: resolve only succeeds for assets that are the user's or public, and it never accesses a third party's private asset. It also describes pagination and semantic search behavior, though it does not fully document all return shapes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose and key actions are front-loaded, but the description is a dense, overlong paragraph packed with detail that the schema already documents. It remains usable, but it is not tightly concise for an agent selecting and invoking the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex 27-parameter tool with no output schema, the description is fairly complete: it covers actions, buckets, resolve output, pagination, and normalization. Some return and edge-case details are implicit or delegated to the schema, but an agent has enough context to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, so parameter definitions do the heavy lifting. The description still adds cross-tool meaning, such as which IDs belong in sourceImageIds versus referenceImageUrls, and what resolve returns, but much of the bucket-specific parameter detail duplicates the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly defines the tool as a read-only reference browser/resolver with two sub-actions: 'browse' and 'resolve'. It explains the core resource and distinguishes public characters from a sibling tool, but does not clarify all overlapping siblings such as sapiens_stock_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit routing guidance, such as using 'resolve' for a known handle versus 'browse' for a bucket, and using the url in referenceImageUrls/startImageUrl/endImageUrl. It also points to sapiens_character action=list_public for public characters, but leaves ambiguity around related tools like sapiens_stock_video and sapiens_search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.