Skip to main content
Glama

Update world settings

update_world
DestructiveIdempotent

Update a world's V4 settings. Only provided fields change. Set status to publish/unpublish. playable accepts startingChoices (max 6, the role doors), endings (max 7, minTurns floored at 10, each may bind mcRoleTemplateId to a role), images (max 100 scene instructions); each sub-list you send replaces that list while the others are kept, so you can send just endings without losing the doors. worldKind can only promote 'private' to 'playable'. Cover art and wiki content are managed in the Lunafic editor. The intro video cannot be set here: ask the user to upload it on lunafic.ai in the world's Basics step.

Input Schema

NameRequiredDescriptionDefault
hookNo
slugNo
tagsNo
rulesNo
titleNo
genresNo
statusNo
worldIdNoWorld id from list_worlds.
maturityNo
playableNo
prologueNoThe prologue: the opening players read first, on the world page and before they play, written like the first page of a novel. Plain paragraphs separated by a blank line, 400 to 4000 characters. Say who the player is (write {{player}} for the player's character, never a role's name), where they are, who is there (each name with one plain description), and what is going on, then stop right before the first move. Explain every made-up word the first time it appears. Only facts the wiki already holds. Required to publish.
synopsisNo
formalityNo
worldKindNo
derivationNo
visibilityNoWho can find the world once published: public (every shelf + search), search (search only), link (unlisted, only people with the link).
authoringModeNo
dialogueFormatNo
targetAudienceNo
characterLanguageNo
narrativeLanguageNo
recommendedMcEntryIdNoWorld bible entry id of the recommended player role; empty string clears it.
signatureCharacterIdNoWorld bible entry id of the world’s signature character; empty string clears it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / playable / properties / startingChoices / description
      Previous value: -"Max 6 first moves (the opening choices): strings or { id, label, imageUrl?, mcRoleTemplateId? }."New value: +"Max 6 first moves (the opening choices): strings or { id, label, imageUrl?, mcRoleTemplateId? }. In a label, write {{player}} for the player's character."
    • changedInput schema / properties / prologue / description
      Previous value: -"The prologue: the opening players read first, on the world page and before they play, written like the first page of a novel. Plain paragraphs separated by a blank line, 400 to 4000 characters. Say who the player is, where they are, who is there (each name with one plain description), and what is going on, then stop right before the first move. Explain every made-up word the first time it appears. Only facts the wiki already holds. Required to publish."New value: +"The prologue: the opening players read first, on the world page and before they play, written like the first page of a novel. Plain paragraphs separated by a blank line, 400 to 4000 characters. Say who the player is (write {{player}} for the player's character, never a role's name), where they are, who is there (each name with one plain description), and what is going on, then stop right before the first move. Explain every made-up word the first time it appears. Only facts the wiki already holds. Required to publish."
  2. Changed1 schema field changed
    • changedInput schema / properties / playable / properties / endings / description
      Previous value: -"Max 7 endings: { id?, name?, rarity?, minTurns?, conditions?, epilogue?, hint?, mcRoleTemplateId?, imageUrl?, requiresSecret? }."New value: +"Max 7 endings: { id?, name?, rarity?, minTurns?, conditions?, epilogue?, hint?, mcRoleTemplateId?, imageUrl?, requiresSecret? }. In conditions, epilogue and hint, write {{player}} for the player's character."
  3. Changed1 schema field changed
    • addedInput schema / properties / prologue
      Added value: +{
      +  "description": "The prologue: the opening players read first, on the world page and before they play, written like the first page of a novel. Plain paragraphs separated by a blank line, 400 to 4000 characters. Say who the player is, where they are, who is there (each name with one plain description), and what is going on, then stop right before the first move. Explain every made-up word the first time it appears. Only facts the wiki already holds. Required to publish.",
      +  "type": "string"
      +}
  4. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true; the description adds real value beyond that by spelling out partial-update semantics and per-sub-list replacement ("each sub-list you send replaces that list while the others are kept"). One-way constraints are also disclosed (worldKind can only promote 'private' to 'playable'), though the destructive hint is never reconciled with what actually gets destroyed.

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

Conciseness4/5

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

Dense and front-loaded: partial-update semantics come first, then the nested playable rules, then exclusions. No filler sentences, though the long run-on parenthetical about endings packs several constraints into one clause and reads tightly.

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

Completeness3/5

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

For a 23-parameter mutation with no output schema, the description covers the trickiest nested structure well but leaves the majority of top-level fields unexplained. It also says status accepts "publish/unpublish" while the schema enum is draft/published/unlisted, forcing the agent to reconcile the two.

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

Parameters2/5

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

Schema description coverage is only 22% across 23 parameters. The description adds meaning for a handful—playable sub-lists, their max sizes, minTurns floored at 10, worldKind and status—but says nothing about rules, tags, genres, languages, visibility, derivation, authoringMode, dialogueFormat, targetAudience, or the two entry-id fields. Given the low coverage, the description does not compensate enough.

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?

States a specific verb and resource ("Update a world's V4 settings") and immediately clarifies the update semantics with "Only provided fields change." Sibling tools like get_world and create_world are distinguishable by name, though the description never explicitly says what it is not.

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

Usage Guidelines3/5

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

Provides concrete routing for out-of-scope fields (cover art/wiki go to the Lunafic editor, intro video must be uploaded by the user on lunafic.ai), which is genuinely useful guidance. However, it gives no directive on when to use this vs. the sibling set_world_status, and in fact claims status changes belong here, leaving the agent to guess between two tools.

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.

Resources