Skip to main content
Glama
inhabitants

sapiens-mcp

by inhabitants

sapiens_pipeline

Handle the full Sapiens content lifecycle: create productions from sources, generate carousels/mega-graphics, and finalize publishables with snapshots.

Instructions

CRUD do content pipeline Sapiens (sources/productions/publishables). Sub-actions: list_sources, list_articles (use includeDrafts pra incluir drafts; onlyAvailable pra esconder os já virados em source), get_source, get_production, list_versions, add_article_as_source, create_draft_article_and_source (seed), create_production (sourceId+format → productionId draft), update_production (substitui payload, opcionalmente muda status), finalize_production (cria publishable v1, v2... com snapshot), remove_production, remove_source, set_source_done, update_source_notes, restore_version (volta payload duma versão antiga), set_publishable_title (renomeia um publishable), backfill_via (rotula em lote o campo 'via' das productions antigas; dryRun=true só lista), propose_mega_grafico_plan (granular: só gera plano via Gemini, devolve fullPrompt+spec), run_mega_grafico_full (ONE-SHOT, recomendado: cria production+propõe plano+gera imagem+aplica selo Sapiens+finaliza publishable numa chamada só), generate_carousel (gera um carrossel editorial standalone a partir de brief OU articleId — 7-9 slides na voz Sapiens + imagens do banco; devolve id + url do editor pro humano abrir, ajustar e exportar; admin-only, cobra Sinapses, reembolsa se falhar). generate_carousel_production (o IRMÃO PIPELINE do generate_carousel: recebe um sourceId de artigo, CRIA a production carrossel_ig e a preenche pelo MESMO motor da casa, já no shape editorial (templateId+slots) que o editor de pipeline renderiza — prefira ESTE a create_production+payload cru pro carrossel, que abre VAZIO no editor; devolve productionId + url do editor de pipeline; admin-only, cobra Sinapses, reembolsa se falhar). CARROSSEL FINO (edição sem tela, admin-only): list_carousels (seus carrosséis standalone), get_carousel (payload completo + catálogo de templates com slots/limites + paletas — tudo pra VOCÊ escrever os slides), update_carousel (payload inteiro de volta, sanitizado no servidor; preserve os campos image dos slides que não mexeu), carousel_auto_images (IA escolhe imagens do banco pros slides de foto, 60 Sinapses; makeVisual=true converte slides de texto pra layouts de foto antes — ritmo visual; generateMissing=true gera imagem nova pros que o banco não cobrir, ~450 Sinapses cada, até 4, avise o custo antes), carousel_generate_image (imagem nova pra UM slide, ~450 Sinapses, customPrompt opcional). Fluxo confortável (standalone): generate_carousel → get_carousel → update_carousel (afia os textos) → carousel_auto_images → humano abre a url pra exportar. Fluxo pipeline (carrossel atrelado a um artigo/source): generate_carousel_production (sourceId) → humano abre a url do editor de pipeline pra revisar e finalizar (finalize_production). Pra mega_grafico, SEMPRE prefira run_mega_grafico_full em vez de sequenciar manualmente (menos drift). Idempotente só na production (passa productionId pra reusar a MESMA row), mas cada run RE-GERA a imagem e cobra de novo (~900 Sinapses): não é grátis re-rodar. OBRIGATÓRIO perguntar ao user antes se withHelen=true (cartoon Helen interage com tema, ~15-25% do poster) ou false (poster 100% diagramático). Custo ~900-1000 sinapses por geração. run_mega_grafico_full, generate_carousel, generate_carousel_production, carousel_auto_images (com generateMissing) e carousel_generate_image são SÍNCRONAS e pesadas: vale a REGRA DO TIMEOUT (podem cobrar mesmo voltando 'Timeout'; cheque get_carousel/dashboard antes de repetir). Use skipFinalize=true se quiser deixar production em 'ready' pro admin revisar antes de publishable. Payload livre por formato — chame sapiens_meta action=formats pra ver schemas sugeridos.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
viaNoEx: 'claude-mcp', 'modo-antigo', 'manual'
slugNo
tagsNo
tldrNo
briefNoTema/ângulo do carrossel (fonte 'brief'). Quanto mais específico, melhor. Alternativa: articleId pra partir de um artigo publicado.
forceNocarousel_auto_images: TRUE substitui as imagens já aplicadas por escolhas novas. Default false = preenche só o que falta.
notesNoupdate_source_notes: nota livre no source.
titleNo
actionYes
assetsNo
dryRunNo
formatNo
isDoneNoset_source_done: true fecha o source, false reabre.
statusNoupdate_production: muda o status junto do payload (ex: 'ready').
captionNo
contentNo
excerptNo
payloadNoPayload livre por formato
slideIdNocarousel_generate_image: id do slide (ex: 'slide-3'), do payload do get_carousel.
categoryNo
hashtagsNo
sourceIdNocontentSources:_id — get_source/create_production/generate_carousel_production/remove_source/set_source_done/update_source_notes. Vem de list_sources/add_article_as_source.
articleIdNoarticles:_id — add_article_as_source e generate_carousel (fonte artigo). Vem de list_articles.
withHelenNoSe TRUE, plano reserva 1 painel pra Helen Ailith interagindo com o tema (cartoon editorial). Se FALSE, poster 100% diagramático sem figura humana. Pergunte ao user antes de definir.
carouselIdNocarousels_standalone:_id — get_carousel/update_carousel/carousel_auto_images/carousel_generate_image. Vem de generate_carousel ou list_carousels.
makeVisualNocarousel_auto_images: TRUE converte slides de texto pra layouts de foto antes de escolher (ritmo visual pro carrossel texto-pesado). O texto fica, muda a moldura.
customPromptNocarousel_generate_image: direção extra da cena (opcional; sem ela a IA usa o texto do slide).
productionIdNocontentProductions:_id — get_production/update_production/finalize_production/remove_production/list_versions. Vem de create_production.
skipBrandingNoSe TRUE, pula o composite do selo Sapiens + tEXt chunks. Use só quando o Convex storage está fora ou pra debug. Default false.
skipFinalizeNoSe TRUE, gera plano + imagem + branding + salva payload mas NÃO cria publishable (deixa production em 'ready' pro admin revisar). Default false.
specOverrideNoOverride de model/aspectRatio/size sobre os defaults do template. Cada um valida contra o allowedX do template; se sair do whitelist, action throws.
templateSlugNoSlug do template de receita (admin edita em /dashboard/admin/image-templates). Se omitido, usa o template marcado isDefault=true pro formato. Ex: 'mega-grafico-blueprint-v1'.
thumbnailUrlNo
useSinteticoNogenerate_carousel: se TRUE, a voz do Sintético do dono dirige o copy (amplificar). Default false = estilo do dono.
includeDraftsNo
onlyAvailableNoSe true, só artigos que ainda NÃO foram virados em source
publishableIdNocontentPublishables:_id — set_publishable_title/restore_version.
autoPickImagesNogenerate_carousel: a IA escolhe imagens do banco pros slides de foto (default true).
sinceCreatedAtNo
beforeCreatedAtNo
generateMissingNocarousel_auto_images: TRUE gera imagem NOVA (nanoBanana, ~450 Sinapses cada, até 4) pros slides que o banco não cobriu. O fallback stock→gerador. Avise o usuário do custo antes.
includeArchivedNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv1.38.0

TDQS

A4.7/5.0
Behavior5/5

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

The annotations are minimal, so the description carries the burden—and it does so thoroughly. It discloses idempotency limits, regeneration costs (~900 Sinapses), billing/refund behavior, admin restrictions, and the timeout rule: 'podem cobrar mesmo voltando Timeout; cheque get_carousel/dashboard antes de repetir'. No statement contradicts the annotations.

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 content is dense and almost always relevant, but it is delivered as one long unbroken paragraph with semicolon-separated action lists and mixed-language abbreviations. Key workflows and warnings are buried rather than scannable, making the description harder for an agent to parse efficiently despite its substance.

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 26-action, 42-parameter tool with no output schema, the description covers most operational hazards: return hints, editor URLs, costs, idempotency, ordering rules, and workflow alternatives. It is not exhaustive—some actions lack explicit return descriptions and some parameter combinations are left to inference—but the critical decision-making context is present.

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

Parameters5/5

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

With only 57% schema coverage, the description compensates heavily by mapping actions to parameters: sourceId/productionId/carouselId origins, withHelen's layout effect, force/makeVisual/generateMissing behaviors, specOverride whitelist validation, and skipFinalize semantics. It also directs the agent to sapiens_meta action=formats for free-form payload schemas.

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

Purpose5/5

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

The description opens with a specific resource and operation class: 'CRUD do content pipeline Sapiens (sources/productions/publishables)'. It then enumerates 26 sub-actions with one-line explanations, making the tool's scope unambiguous and distinguishing it from the other sapiens_* tools.

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

Usage Guidelines5/5

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

The description gives explicit routing guidance: 'prefira ESTE a create_production+payload cru pro carrossel' and 'Pra mega_grafico, SEMPRE prefira run_mega_grafico_full em vez de sequenciar manualmente'. It also names two complete workflows, clarifies admin-only actions, and instructs when to ask the user about withHelen.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/inhabitants/sapiens-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server