Skip to main content
Glama
inhabitants

sapiens-mcp

by inhabitants

sapiens_write

Create, update, and publish personal Sapiens articles from a brief or existing text. Manage drafts, covers, and voice styles while spending credits, saving results to your profile.

Instructions

Artigos self-serve do PRÓPRIO usuário (qualquer conta logada, não só admin) — espaço pessoal, aparece em /u/, NÃO é o blog editorial. Sub-actions: generate (gera 1 artigo na voz Sapiens a partir de brief livre, ou reescrevendo um artigo publicado/texto teu; custa 400 Sinapses, reembolsa se falhar; salva como rascunho. Capa: por padrão gera uma capa-cortesia grátis; se você JÁ tem a imagem (gerou via sapiens_image, ou o artigo é sobre ela), passe coverImageId (id da tua galeria) ou coverImageUrl (host Sapiens) pra ELA virar a capa em vez da cortesia), list (teus artigos), get (1 artigo teu por id, corpo completo), update (edita title/content/excerpt/tldr), publish (publish=true publica no teu perfil, false volta pra rascunho). Identidade vem do sessionToken; cobra as Sinapses do dono do token. Pra blog editorial curado (owner-only) use sapiens_article. NOTA (generate): é SÍNCRONA (texto + capa) e cai na REGRA DO TIMEOUT; sem idempotência, repetir às cegas cria um 2º rascunho e cobra 400 de novo (cheque action=list antes; o artigo do timeout fica salvo como rascunho).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tldrNo
briefNoBriefing livre (1 parágrafo, até ~600 palavras). Caminho padrão de 'generate'. A IA expande na voz Sapiens. Custa 400 Sinapses.
limitNoDefault 50. Max 100. Só pra action=list.
titleNo
actionYes
contentNoMarkdown completo do corpo (substitui o conteúdo).
excerptNo
publishNoaction=publish: true publica no teu perfil (/u/<username>), false volta pra rascunho. Default true.
articleIdNouser_articles:_id (obrigatório pra get/update/publish).
sourceKindNoDefault 'brief'. 'published_article' reescreve um artigo do blog (passe publishedArticleId); 'user_article' reescreve um texto teu (passe sourceUserArticleId).
voiceStyleNoPreset de tom da voz (opcional).
customVoiceNoInstrução de voz custom (opcional).
voiceSourceNoQual voz molda o texto: 'sapiens' (default, piso da casa) | 'minha' (a tua alma, destilada do teu rastro) | 'sintetico' (a alma do teu Sintético, se tiveres um acordado em Sintonia). Omitido = comportamento igual a 'sapiens'.
coverImageIdNoCapa PRONTA (opcional, só generate): id de uma imagem da TUA galeria (generatedImages:_id, ache via sapiens_gallery/sapiens_reference) que vira a capa do artigo em vez da capa-cortesia gerada do zero. Use quando você JÁ gerou a imagem (sapiens_image) e o artigo é sobre ela — assim a peça não nasce sem capa se a cortesia falhar.
coverImageUrlNoAlternativa a coverImageId: URL de imagem do Sapiens (Bunny CDN / Convex) pra usar como capa pronta. Host fora da allowlist é recusado.
repertorioItemIdsNoAté 5 ids de obras do Repertório do usuário (repertorioItems:_id) pra IA usar como lente/referência do texto (sinopse + nota do dono entram no prompt). Ache os ids via sapiens_repertorio (action=list/search). Só do próprio usuário; ids de outros são ignorados.
publishedArticleIdNoarticles:_id (quando sourceKind='published_article').
sourceUserArticleIdNouser_articles:_id (quando sourceKind='user_article').

Schema Changelog

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

  1. First observedv1.38.0

TDQS

A5/5.0
Behavior5/5

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

Annotations only mark readOnlyHint=false and openWorldHint=true, but the description discloses substantial behavioral traits: the 400 Sinapses cost with refund on failure, synchronous execution subject to timeout, lack of idempotency (blind retry duplicates drafts and re-charges), default courtesy cover behavior, and identity derived from sessionToken. This far exceeds what annotations reveal and directly informs safe invocation.

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

Conciseness5/5

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

The description is long but densely packed, and every sentence contributes a distinct operational fact, from the cost and timeout behavior to cover handling and sibling routing. The structure leads with the critical distinction from the editorial blog, then organized sub-actions, then the crucial timeout/idempotency warning—front-loaded and purposeful.

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

Completeness5/5

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

Given 18 parameters, 5 actions, no output schema, and complex side effects, the description is notably complete: it covers action-specific behaviors, pricing, failure refunds, timeout implications, idempotency constraints, cover selection logic, and the alternative tool. Nothing essential for an agent to call it correctly is missing.

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?

Even with 78% schema coverage, the description clarifies intricate parameter interactions that the schema alone does not convey: how coverImageId/coverImageUrl substitute the courtesy cover, which sourceKind requires which ID parameter, that publish=false returns to draft, and how repertorioItemIds feeds the prompt. This is exactly the cross-parameter meaning an agent needs.

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 by defining the exact scope: self-serve articles of the user himself, appearing at /u/<username>, and explicitly contrasts it with the editorial blog. It then enumerates all five sub-actions (generate, list, get, update, publish), each with a clear verb and resource, making the tool's purpose unmistakable even among many siblings.

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 provides explicit when-to-use guidance: it states this is for personal profile articles and not for the curated editorial blog, directing the agent to sapiens_article instead. It also gives conditional usage for covers (use coverImageId/coverImageUrl when you already have an image) and warns against blind retries, telling the agent to check list first.

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