sapiens-mcp 1.77.0 → 1.77.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 +6 -0
- package/dist/skills.js +0 -1
- package/dist/tools/gallery.js +1 -1
- package/dist/tools/instagram.js +2 -1
- package/dist/tools/meta.js +5 -4
- package/dist/tools/shareDrop.js +1 -1
- package/dist/tools/sintetico.js +1 -1
- package/dist/tools/studios.js +1 -1
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -48,6 +48,12 @@ import { skillMenuLine } from "./skills.js";
|
|
|
48
48
|
* pelos DOIS transportes: o stdio (index.ts, pacote npm/npx) e o remoto
|
|
49
49
|
* streamable HTTP (remote.ts, rota /api/mcp do site). Mexeu aqui, mexeu nos
|
|
50
50
|
* dois ao mesmo tempo — é o ponto.
|
|
51
|
+
*
|
|
52
|
+
* Tool nova ou removida aqui: atualize junto o EXPECTED_TOOLS de
|
|
53
|
+
* test/server.test.mjs e as contagens fixas de test/remote.test.mjs e
|
|
54
|
+
* test/remote-protect.test.mjs (admin e user), senão o gate de teste do
|
|
55
|
+
* release.sh fica vermelho e parece culpa da mudança seguinte (origem:
|
|
56
|
+
* 07c9c77c5).
|
|
51
57
|
*/
|
|
52
58
|
export const TOOLS = {
|
|
53
59
|
sapiens_pipeline: {
|
package/dist/skills.js
CHANGED
|
@@ -60,7 +60,6 @@ Não despeje a lista inteira de tools. O start guia.
|
|
|
60
60
|
| imagem | \`sapiens_gallery action=list\` |
|
|
61
61
|
| artigo do perfil | \`sapiens_write action=list\` |
|
|
62
62
|
| carrossel | \`sapiens_pipeline action=list_carousels\` |
|
|
63
|
-
| pipeline | /dashboard/admin/content |
|
|
64
63
|
|
|
65
64
|
**2. Disjuntor anti-loop.** Três falhas seguidas no MESMO tool fazem o cliente marcar o servidor como "unreachable" por ~56s. Parece que "o MCP caiu", mas foi argumento faltando. Quando um tool volta erro de validação ("exige X", "falta Y"), LEIA o erro e refaça a chamada COM o que falta. Nunca repita a chamada idêntica que falhou.
|
|
66
65
|
|
package/dist/tools/gallery.js
CHANGED
|
@@ -63,7 +63,7 @@ export const gallerySchema = z.object({
|
|
|
63
63
|
.positive()
|
|
64
64
|
.max(100)
|
|
65
65
|
.optional()
|
|
66
|
-
.describe("Default 20. Max 100. Só pra action=list."),
|
|
66
|
+
.describe("Default 20. Max 100. Só pra action=list. Sem offset: com filtro de model ou skill a busca varre só as últimas 200 peças. Pra achar o imageId de peça que não é de hoje, use sapiens_reference action=browse bucket=history term=<palavra> (paginado, devolve o imageId) ou sapiens_reference action=resolve handle=img_xxx."),
|
|
67
67
|
model: z
|
|
68
68
|
.string()
|
|
69
69
|
.optional()
|
package/dist/tools/instagram.js
CHANGED
|
@@ -5,7 +5,8 @@ import { need } from "../schema.js";
|
|
|
5
5
|
* sapiens_instagram — o "ManyChat da casa" via MCP. ADMIN-ONLY (requireMcpAdmin
|
|
6
6
|
* no Convex): opera o auto-DM do Instagram da casa (regras de resposta
|
|
7
7
|
* automática, inbox das conversas, resposta manual pela janela de 24h).
|
|
8
|
-
* Espelha
|
|
8
|
+
* Espelha as regras em /experimentos/distribution-workflow?tab=autodm e o inbox
|
|
9
|
+
* em /dashboard/admin/sapiens-leads/instagram; backend em convex/instagramDm.ts.
|
|
9
10
|
*
|
|
10
11
|
* Sub-actions:
|
|
11
12
|
* - rules: lista as regras (keyword, variações, escopo por post, disparos)
|
package/dist/tools/meta.js
CHANGED
|
@@ -430,8 +430,8 @@ export async function meta(args) {
|
|
|
430
430
|
desktopLogin: `${APP_URL}/desktop-login`,
|
|
431
431
|
dashboard: `${APP_URL}/dashboard`,
|
|
432
432
|
adminCuration: `${APP_URL}/dashboard/admin/blog/sapiens-curation`,
|
|
433
|
-
adminPopArticles: `${APP_URL}/dashboard/admin/
|
|
434
|
-
adminPipeline: `${APP_URL}/
|
|
433
|
+
adminPopArticles: `${APP_URL}/dashboard/admin/blog?type=pop-article`,
|
|
434
|
+
adminPipeline: `${APP_URL}/experimentos/content-pipeline`,
|
|
435
435
|
};
|
|
436
436
|
}
|
|
437
437
|
// version: qual versão do sapiens-mcp está rodando AGORA (lida do package.json
|
|
@@ -577,8 +577,9 @@ export async function meta(args) {
|
|
|
577
577
|
}
|
|
578
578
|
const sessionToken = getSessionToken();
|
|
579
579
|
if (args.action === "whoami") {
|
|
580
|
-
// mcpGetMySubscription usa
|
|
581
|
-
//
|
|
580
|
+
// mcpGetMySubscription usa requireMcpSession sem admin (qualquer logado
|
|
581
|
+
// com token de acesso cheio; chave da voz e OAuth de parceira não passam),
|
|
582
|
+
// então whoami funciona pra user E admin e reporta o tier pro Claude.
|
|
582
583
|
const sub = await convexQuery("mcpExtras:mcpGetMySubscription", {
|
|
583
584
|
sessionToken,
|
|
584
585
|
});
|
package/dist/tools/shareDrop.js
CHANGED
|
@@ -8,7 +8,7 @@ import { need } from "../schema.js";
|
|
|
8
8
|
* Sobe um HTML single-file e recebe o link curto sint.fyi/s/<code>. O ponto:
|
|
9
9
|
* PUBLICAR um artefato e depois RE-PUBLICAR no MESMO link quantas vezes quiser
|
|
10
10
|
* (action=update com o code) — edita aqui no Claude, joga pro ar, atualiza o
|
|
11
|
-
* mesmo arquivo. Espelha
|
|
11
|
+
* mesmo arquivo. Espelha o painel /dashboard/admin/share-drop e o CLI
|
|
12
12
|
* share-drop-sync, mas sem admin key: identidade vem do sessionToken.
|
|
13
13
|
*
|
|
14
14
|
* O HTML entra por `html` (string, funciona no stdio E no remoto) ou por
|
package/dist/tools/sintetico.js
CHANGED
|
@@ -260,7 +260,7 @@ export async function sintetico(args) {
|
|
|
260
260
|
});
|
|
261
261
|
return {
|
|
262
262
|
...res,
|
|
263
|
-
note: "Proposta do seu Reflexo (grátis). Pra gerar a cara dele: action=reflexo_generate. Pra CONSAGRAR e criar o Sintético de fato é na web (/experimentos/
|
|
263
|
+
note: "Proposta do seu Reflexo (grátis). Pra gerar a cara dele: action=reflexo_generate. Pra CONSAGRAR e criar o Sintético de fato é na web (/experimentos/identity-workflow, passo final), ato deliberado, fora do MCP.",
|
|
264
264
|
};
|
|
265
265
|
}
|
|
266
266
|
// -------- reflexo_generate: gera a imagem do Reflexo (cobra 450) --------
|
package/dist/tools/studios.js
CHANGED
|
@@ -199,7 +199,7 @@ export async function studios(args) {
|
|
|
199
199
|
// tivermos lookup slug-by-id.
|
|
200
200
|
return {
|
|
201
201
|
url: slug ? `${APP}/articles/${slug}` : null,
|
|
202
|
-
admin: `${APP}/
|
|
202
|
+
admin: `${APP}/experimentos/content-pipeline`,
|
|
203
203
|
note: slug
|
|
204
204
|
? "URL pública. Pra ver versões anteriores, use sapiens_pipeline list_versions."
|
|
205
205
|
: "publishableId lookup ainda não suportado v1.3. Passe slug.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sapiens-mcp",
|
|
3
|
-
"version": "1.77.
|
|
3
|
+
"version": "1.77.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",
|