sapiens-mcp 1.64.2 → 1.65.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/registry.js +1 -1
- package/dist/tools/gallery.js +6 -1
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -75,7 +75,7 @@ export const TOOLS = {
|
|
|
75
75
|
handler: repertorio,
|
|
76
76
|
},
|
|
77
77
|
sapiens_gallery: {
|
|
78
|
-
description: "Browse, publicação e upload das imagens do user. Sub-actions: list (últimas N
|
|
78
|
+
description: "Browse, publicação e upload das imagens do user. Sub-actions: list (últimas N peças, com prompt/model/url + isPublic + acervoUrl; kind=image por default, kind=video traz os takes com posterUrl, a capa, e kind=all mistura. Depois de ingerir ou gerar vídeo, é o list kind=video que dá a capa pra mostrar miniatura + player em vez de link solto), get (1 imagem com metadados, opcionalmente base64), publish (torna a PRÓPRIA imagem pública: entra na galeria pública + feed Pinterest, e ganha página indexável /imagem/<id> se o modelo não for degen devolve publicPageUrl; publicado NÃO despublica, não existe unpublish), upload (traz pra galeria uma peça gerada FORA da casa, por sourceUrl https, filePath local ou base64; ADMIN por ora), ingest (peça que a CASA dirigiu e um motor externo só renderizou: entra NATIVA na timeline e nasce PRIVADA (isPublic false), publicável DEPOIS pelo dono como qualquer geração da casa, nunca sozinha, com custo 0 em Sinapses e o custo real guardado em externalCost; carrega o prompt inteiro, as referências da casa (referenceImageIds) e o personagem (characterId), e é idempotente por sourceUrl, então re-ingerir corrige a ficha em vez de duplicar; ADMIN), refs (acopla peças da casa como REFERÊNCIA numa peça que já existe, de upload ou de ingest; ADMIN, e só na própria peça), cast (QUEM ESTÁ EM CENA numa peça que já existe, quando é mais de uma criatura: characterIds em ordem, o protagonista primeiro, e a peça passa a contar na ficha de todos eles em vez de sumir da segunda; qualquer membro, na própria peça). Use list/get pra reusar imagem como referência (passe o imageId em sapiens_image mode=edit ou mode=variation) ou pra mostrar pro user o que ele já tem; publish quando o user quer divulgar a imagem dele. IMPORTANTE sobre upload: a peça entra PRIVADA e continua privada — o servidor recusa publicar e recusa compartilhar na comunidade, porque ela é do usuário e a responsabilidade é dele. O caminho pra ela virar coisa pública é usar como referência numa geração daqui e publicar o resultado. O refs escreve só proveniência (de que ficha/folha a peça nasceu): não promove nada, e um upload continua sem publicar depois de ganhar referência.",
|
|
79
79
|
schema: gallerySchema,
|
|
80
80
|
handler: gallery,
|
|
81
81
|
},
|
package/dist/tools/gallery.js
CHANGED
|
@@ -47,6 +47,10 @@ export const gallerySchema = z.object({
|
|
|
47
47
|
.string()
|
|
48
48
|
.optional()
|
|
49
49
|
.describe("Filtro de model (action=list). Ex: 'nano-banana-max' pra ver só Pro."),
|
|
50
|
+
kind: z
|
|
51
|
+
.enum(["image", "video", "all"])
|
|
52
|
+
.optional()
|
|
53
|
+
.describe("action=list: que mídia listar. 'image' (default) é o de sempre; 'video' traz só os takes, cada um com `posterUrl` (a capa) e `acervoUrl` (a ficha); 'all' mistura. Use kind=video depois de uma leva de ingest ou de geração de vídeo: é o que permite MOSTRAR a peça (capa + player) em vez de devolver link solto. posterUrl null = capa ainda em produção, volte em alguns segundos."),
|
|
50
54
|
imageId: z
|
|
51
55
|
.string()
|
|
52
56
|
.optional()
|
|
@@ -251,6 +255,7 @@ export async function gallery(args) {
|
|
|
251
255
|
sessionToken,
|
|
252
256
|
limit: args.limit ?? 20,
|
|
253
257
|
model: args.model,
|
|
258
|
+
kind: args.kind,
|
|
254
259
|
});
|
|
255
260
|
return {
|
|
256
261
|
count: result?.items?.length ?? 0,
|
|
@@ -321,7 +326,7 @@ export async function gallery(args) {
|
|
|
321
326
|
});
|
|
322
327
|
return {
|
|
323
328
|
...result,
|
|
324
|
-
aviso: "Peça NATIVA: entra na timeline, publica e vai pra comunidade
|
|
329
|
+
aviso: "Peça NATIVA: entra na timeline PRIVADA (isPublic false), igual a qualquer geração da casa. Ela NÃO publica sozinha e NÃO vai pra comunidade: publicar é ato separado do dono, por action=publish. Custo em Sinapses é 0 e ela NÃO leva assinatura C2PA, porque o motor rodou fora. Use ingest só quando a receita (folha, personagem, prompt) foi da casa; peça achada pronta é action=upload.",
|
|
325
330
|
};
|
|
326
331
|
}
|
|
327
332
|
// cast: quem está EM CENA numa peça que já existe.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sapiens-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.65.1",
|
|
4
4
|
"mcpName": "com.sapiensinteticos/sapiens",
|
|
5
5
|
"description": "MCP server pra operar o Sapiens Sintéticos (sapiensinteticos.com) pelo Claude Code: gerar imagem, escrever artigo, voz, música e mais, na sua conta. Login pelo código de sapiensinteticos.com/conectar-claude.",
|
|
6
6
|
"type": "module",
|