argo-mcp
Qué hace este MCP
Manages tabletop RPG campaigns, sessions, guilds, player relationships, forums and structured campaign lore.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID of the counterparty.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId', 'campaignId'], 'properties': {'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID to add to the guild.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'guildId', 'campaignId'], 'properties': {'guildId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}, 'campaignId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID of the user to promote to co-GM. Must be an existing user.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'gameMasterId', 'campaignName'], 'properties': {'id': {'type': 'string'}, 'ruleSystem': {'type': ['string', 'null']}, 'campaignName': {'type': 'string'}, 'gameMasterId': {'type': 'string'}, 'gameSystemSlug': {'type': ['string', 'null']}, 'coGameMasterIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'campaignDescription': {'type': ['string', 'null']}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId', 'title', 'startDateTime'], 'properties': {'title': {'type': 'string', 'minLength': 1, 'description': 'Event title.'}, 'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}, 'description': {'type': 'string', 'description': 'Optional event description.'}, 'endDateTime': {'type': 'string', 'description': 'Event end, ISO-8601 â\x80\x94 optional.'}, 'startDateTime': {'type': 'string', 'description': 'Event start, ISO-8601 (e.g. 2026-06-12T19:00:00).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID of the counterparty.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relatedEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignName', 'description', 'ruleSystem'], 'properties': {'ruleSystem': {'type': 'string', 'minLength': 1, 'description': "Rule system the campaign uses. E.g. 'Dungeons & Dragons 5e', 'Pathfinder 2e', 'Forbidden Lands'. Free-form; the WebAPI derives the slug from this."}, 'description': {'type': 'string', 'minLength': 1, 'description': "Short description of the campaign's setting, tone, and premise."}, 'campaignName': {'type': 'string', 'minLength': 1, 'description': 'Display name of the campaign.'}, 'gameSystemSlug': {'type': 'string', 'description': "Optional explicit slug for the public URL (e.g. 'dnd5e'). If omitted, the server derives one from ruleSystem."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'gameMasterId', 'campaignName'], 'properties': {'id': {'type': 'string'}, 'ruleSystem': {'type': ['string', 'null']}, 'accessLevel': {'type': ['string', 'null']}, 'campaignName': {'type': 'string'}, 'gameMasterId': {'type': 'string'}, 'gameSystemSlug': {'type': ['string', 'null']}, 'coGameMasterIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'campaignDescription': {'type': ['string', 'null']}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'customType': {'type': 'string', 'description': 'Optional descriptive subtype label.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'date': {'type': 'string'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'outcome': {'type': 'string'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'sessionNumber': {'type': 'integer'}, 'consequenceEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedCharacterIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'levelId': {'type': 'string', 'description': 'Unreal Engine level reference.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relatedEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'sourceEntryId', 'targetEntryId', 'label'], 'properties': {'color': {'type': 'string'}, 'label': {'enum': ['MEMBER', 'ALLY', 'ENEMY', 'RIVAL', 'PARENT_OF', 'CONTAINS', 'LOCATED_IN', 'HAS_SUBQUEST', 'QUEST_GIVER', 'QUEST_LOCATION', 'QUEST_RELATED_NPC', 'QUEST_RELATED_LOCATION', 'SESSION_ATTENDEE_CHARACTER', 'SESSION_ATTENDEE_NPC', 'SESSION_FEATURED_QUEST', 'SESSION_FEATURED_LOCATION'], 'type': 'string'}, 'direction': {'type': 'string', 'description': "Deprecated: leave unset. The label alone decides the edge's shape â\x80\x94 its kind and how it reads belong to the word (Mnemon D29/D33), and the server refuses a contradiction."}, 'campaignId': {'type': 'string', 'minLength': 1}, 'sourceEntryId': {'type': 'string', 'minLength': 1}, 'targetEntryId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['relationshipId', 'sourceId', 'targetId', 'label'], 'properties': {'kind': {'type': 'string'}, 'color': {'type': 'string'}, 'label': {'type': 'string'}, 'sourceId': {'type': 'string'}, 'symmetry': {'type': 'string'}, 'targetId': {'type': 'string'}, 'direction': {'type': 'string'}, 'relationshipId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown', 'npcType'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'npcType': {'enum': ['FACTION', 'INDIVIDUAL'], 'type': 'string', 'description': 'Required: FACTION (organization) or INDIVIDUAL (person).'}, 'sheetId': {'type': 'string'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relationshipIds': {'type': 'array', 'items': {'type': 'string'}}, 'memberNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'FACTION only: members of this faction (NPC entryIds or titles).'}, 'affiliationEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'INDIVIDUAL only: factions this person belongs to.'}, 'primaryLocationEntryId': {'type': 'string', 'description': 'Home location â\x80\x94 entryId or exact title.'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'partyId': {'type': 'string', 'description': 'CampaignParty id (NOT a mnemon entryId).'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'playerKind': {'enum': ['PARTY', 'CHARACTER', 'NOTES'], 'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'characterId': {'type': 'string', 'description': 'SessionCharacter id (required for playerKind=CHARACTER).'}, 'parentEntryId': {'type': 'string', 'description': 'For playerKind=CHARACTER: entryId of the parent PARTY-kind PlayerMnemon.'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'hook': {'type': 'string', 'description': 'The one line players see under the title in the quest log. An empty string clears it.'}, 'kind': {'enum': ['Main', 'Side', 'Personal'], 'type': 'string', 'description': 'Main | Side | Personal. Reads as Side when unset.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Free-text bullet notes for the step.'}, 'title': {'type': 'string', 'description': "Short label for the step, e.g. 'Talk to the innkeeper'."}, 'status': {'enum': ['Hidden', 'Available', 'Active', 'Completed', 'Failed', 'TurnedIn', 'Abandoned', 'Expired', 'OnHold'], 'type': 'string', 'description': "Defaults to 'Available' when omitted. Unknown values are coerced server-side."}, 'stepId': {'type': 'string', 'description': 'Optional. Server generates a fresh UUID when blank. Provide an existing stepId to reuse linkedStepIds.'}, 'description': {'type': 'string'}, 'targetNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'NPCs involved in this step (entryIds or titles).'}, 'targetLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations involved in this step.'}}, 'additionalProperties': False}, 'description': "Retired: the old quest board's steps, for quests the migration has not converted. Send objectives."}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'status': {'enum': ['Available', 'Active', 'Completed', 'Failed'], 'type': 'string', 'description': 'Available | Active | Completed | Failed. Reads as Available when unset.'}, 'giverId': {'type': 'string', 'description': "Who gives the quest: an NPC's entryId or exact title (its Quest giver link). On update an empty string removes it."}, 'gmNotes': {'type': 'string', 'description': 'GM-only notes, in Markdown. Players never see them.'}, 'rewards': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string', 'description': "The chip to rewrite, as get_mnemon's quest.rewards[].id names it. Omit for a new chip."}, 'kind': {'enum': ['currency', 'xp', 'item', 'other'], 'type': 'string', 'description': 'currency | xp | item | other. Makes this a reward chip â\x80\x94 send it on every reward.'}, 'unit': {'type': 'string', 'description': "currency chips: the coin, as the campaign's setting names it (e.g. coin.gp), or free text such as 'gold'."}, 'label': {'type': 'string', 'description': "What the chip says: an item's name, a favour, a title."}, 'notes': {'type': 'string', 'description': 'Retired reward row: notes.'}, 'amount': {'type': 'number', 'description': 'How many: coins, experience points, a stack.'}, 'hidden': {'type': 'boolean', 'description': 'true hides the chip from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'itemId': {'type': 'string', 'description': 'Retired reward row: a free-text item reference.'}, 'entryId': {'type': 'string', 'description': 'item chips: the mnemon entry it links to (entryId or exact title). Not with ruleEntryId.'}, 'unitLabel': {'type': 'string', 'description': "How the coin reads, e.g. 'Gold piece'."}, 'rewardType': {'type': 'string', 'description': 'Retired reward row, without kind: Gold | Item | XP | Reputation â\x80¦'}, 'ruleEntryId': {'type': 'string', 'description': 'item chips: the rules-library entry it links to. Not with entryId.'}, 'linkedStepIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Retired reward row: the stepIds or subquest entry ids that unlock it.'}}, 'additionalProperties': False}, 'description': 'The reward chips, each with its kind.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': "The quest's prose in Markdown: its Background when background is not given. Mentions: @[label](mnemon:<entryId>)."}, 'expiresAt': {'type': 'string', 'description': 'Retired quest board field (ISO-8601).'}, 'background': {'type': 'string', 'description': 'The Background section, in Markdown.'}, 'issuerText': {'type': 'string', 'description': 'Retired quest board field: write it into background.'}, 'locationId': {'type': 'string', 'description': "Where the quest is given or set: a Location's entryId or exact title. On update an empty string removes it."}, 'objectives': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'id': {'type': 'string', 'description': "The objective to rewrite, as get_mnemon's quest.objectives[].id names it. Omit for a new objective."}, 'text': {'type': 'string', 'minLength': 1, 'description': 'The objective, one line of Markdown. Mentions: @[label](mnemon:<entryId>).'}, 'state': {'enum': ['open', 'done', 'failed'], 'type': 'string', 'description': 'open (the default), done or failed.'}, 'hidden': {'type': 'boolean', 'description': 'true hides it from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'children': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'id': {'type': 'string', 'description': "The objective to rewrite, as get_mnemon's quest.objectives[].id names it. Omit for a new objective."}, 'text': {'type': 'string', 'minLength': 1, 'description': 'The objective, one line of Markdown. Mentions: @[label](mnemon:<entryId>).'}, 'state': {'enum': ['open', 'done', 'failed'], 'type': 'string', 'description': 'open (the default), done or failed.'}, 'hidden': {'type': 'boolean', 'description': 'true hides it from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'optional': {'type': 'boolean', 'description': "An optional objective does not count toward the quest's progress. Defaults to false."}}, 'additionalProperties': False}, 'description': 'Its sub-objectives, in order. Omitted keeps the ones it has; an empty list removes them.'}, 'optional': {'type': 'boolean', 'description': "An optional objective does not count toward the quest's progress. Defaults to false."}}, 'additionalProperties': False}, 'description': 'The objectives, in order.'}, 'repeatable': {'type': 'boolean', 'description': 'Retired quest board field.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'questStatus': {'type': 'string', 'description': 'Retired: send status.'}, 'parentQuestId': {'type': 'string', 'description': "The quest this one belongs to: a Quest's entryId or exact title. On update an empty string removes it."}, 'playersCanTick': {'type': 'boolean', 'description': 'Whether players may tick the objectives they can see. Off by default.'}, 'issuerNpcEntryId': {'type': 'string', 'description': 'Retired quest board field: send giverId.'}, 'subQuestEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': "This quest's subquests (entryIds or titles). Prefer parentQuestId on each subquest."}, 'relatedNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'NPCs the quest involves (entryIds or titles).'}, 'relatedLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations the quest involves (entryIds or titles).'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'title', 'startAt'], 'properties': {'endAt': {'type': 'string', 'description': 'Session end time as an ISO-8601 instant.'}, 'title': {'type': 'string', 'minLength': 1, 'description': "Session title (e.g. 'Session 12: The Dragon's Lair')."}, 'startAt': {'type': 'string', 'minLength': 1, 'description': "Session start time as an ISO-8601 instant (e.g. '2026-06-01T19:00:00Z')."}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}, 'description': {'type': 'string', 'description': 'Optional session description / GM notes.'}, 'invitedUserIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'User IDs to invite (must be active campaign members).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'campaignId', 'title', 'startAt'], 'properties': {'id': {'type': 'string'}, 'endAt': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'guildId': {'type': ['string', 'null']}, 'startAt': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'campaignId': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'invitedUserIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'createdByUserId': {'type': ['string', 'null']}, 'invitedPartyIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'attendanceReplies': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'markdown'], 'properties': {'date': {'type': 'string'}, 'loot': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Items, treasure, or rewards acquired.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Title of the new entry.'}, 'combats': {'type': 'array', 'items': {'type': 'object', 'required': ['description'], 'properties': {'outcome': {'type': 'string', 'description': 'How it resolved, e.g. "party victorious, no casualties".'}, 'description': {'type': 'string', 'minLength': 1, 'description': 'Who fought whom and where, in one sentence.'}}, 'additionalProperties': False}, 'description': 'Combat encounters that took place this session.'}, 'markdown': {'type': 'string', 'minLength': 1, 'description': 'Body content as Markdown. Mentions: @[label](mnemon:<entryId>). Images:  â\x80\x94 upload the asset first.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'majorEvents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Significant story beats, in chronological order.'}, 'openThreads': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Unresolved threads and cliffhangers as of session end.'}, 'previouslyOn': {'type': 'string', 'description': 'Where each player ended â\x80\x94 read aloud at the top of the next session.'}, 'npcsMentioned': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'Name as referenced in the session, e.g. "Captain Mira".'}, 'role': {'type': 'string', 'description': 'Role played this session, e.g. "quest-giver", "rescued captive".'}}, 'additionalProperties': False}, 'description': 'NPCs that appeared or were referenced. This is descriptive only â\x80\x94 to link one to an existing NPC mnemon, call create_mnemon_relationship with SESSION_ATTENDEE_NPC.'}, 'partyEndState': {'type': 'object', 'description': 'Character display name -> short end-of-session status line.', 'additionalProperties': {'type': 'string'}}, 'sessionNumber': {'type': 'integer'}, 'partyDecisions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Meaningful choices that will shape future sessions.'}, 'suggestedTitle': {'type': 'string', 'description': 'Short evocative title for the session, like a TV episode title.'}, 'detailedSummary': {'type': 'string', 'description': 'Full narrative summary, 3-5 paragraphs.'}, 'oneSentenceSummary': {'type': 'string', 'description': 'Single-sentence TL;DR of what happened.'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'entryId'], 'properties': {'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry ID (hex) or exact title.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'campaignId', 'entryId'], 'properties': {'entryId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}, 'campaignId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'relationshipId'], 'properties': {'campaignId': {'type': 'string', 'minLength': 1}, 'relationshipId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'campaignId', 'relationshipId'], 'properties': {'success': {'type': 'boolean', 'const': True}, 'campaignId': {'type': 'string'}, 'relationshipId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['types', 'markdownFormat', 'blockOps', 'commonFields', 'relationshipLabels', 'relationships', 'idReferences', 'questBody'], 'properties': {'types': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'tool', 'description'], 'properties': {'tool': {'type': 'string'}, 'type': {'type': 'string'}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'blockOps': {'type': 'object', 'required': ['tool', 'ops', 'atomicity', 'addressing'], 'properties': {'ops': {'type': 'array', 'items': {'type': 'object', 'required': ['op', 'required', 'optional', 'description'], 'properties': {'op': {'type': 'string'}, 'optional': {'type': 'array', 'items': {'type': 'string'}}, 'required': {'type': 'array', 'items': {'type': 'string'}}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'tool': {'type': 'string'}, 'atomicity': {'type': 'string'}, 'addressing': {'type': 'string'}}, 'additionalProperties': False}, 'questBody': {'type': 'object', 'required': ['summary', 'header', 'objective', 'reward', 'prose', 'ticking', 'retired'], 'properties': {'prose': {'type': 'string'}, 'header': {'type': 'object', 'required': ['fields', 'statusValues', 'kindValues', 'notes'], 'properties': {'notes': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}}, 'kindValues': {'type': 'array', 'items': {'type': 'string'}}, 'statusValues': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'reward': {'type': 'object', 'required': ['fields', 'kindValues', 'notes'], 'properties': {'notes': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}}, 'kindValues': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'retired': {'type': 'string'}, 'summary': {'type': 'string'}, 'ticking': {'type': 'string'}, 'objective': {'type': 'object', 'required': ['fields', 'stateValues', 'notes'], 'properties': {'notes': {'type': 'string'}, 'fields': {'type': 'array', 'items': {'type': 'string'}}, 'stateValues': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'commonFields': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'type', 'description'], 'properties': {'name': {'type': 'string'}, 'type': {'type': 'string'}, 'values': {'type': 'array', 'items': {'type': 'string'}}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'idReferences': {'type': 'string'}, 'relationships': {'type': 'array', 'items': {'type': 'object', 'required': ['source', 'label', 'target', 'description'], 'properties': {'label': {'type': 'string'}, 'source': {'type': 'string'}, 'target': {'type': 'string'}, 'description': {'type': 'string'}}, 'additionalProperties': False}}, 'markdownFormat': {'type': 'object', 'required': ['summary', 'mentions', 'images'], 'properties': {'images': {'type': 'string'}, 'summary': {'type': 'string'}, 'mentions': {'type': 'string'}}, 'additionalProperties': False}, 'relationshipLabels': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['title', 'raw', 'categoryId'], 'properties': {'raw': {'type': 'string', 'minLength': 1, 'description': 'Topic body in Markdown.'}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Topic title. Keep it concise and descriptive.'}, 'categoryId': {'type': 'integer', 'description': 'Numeric category ID. Call forum_list_categories first if unsure.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'number'}, 'topic_id': {'type': ['number', 'null']}, 'username': {'type': ['string', 'null']}, 'topic_slug': {'type': ['string', 'null']}, 'post_number': {'type': ['number', 'null']}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic_list'], 'properties': {'topic_list': {'type': 'object', 'required': ['topics'], 'properties': {'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'slug', 'posts_count', 'reply_count', 'created_at'], 'properties': {'id': {'type': 'number'}, 'slug': {'type': 'string'}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'excerpt': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'category_id': {'type': ['number', 'null']}, 'posts_count': {'type': 'number'}, 'reply_count': {'type': 'number'}, 'last_posted_at': {'type': ['string', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['notifications'], 'properties': {'notifications': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'number'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}, 'read': {'type': ['boolean', 'null']}, 'topic_id': {'type': ['number', 'null']}, 'created_at': {'type': ['string', 'null']}, 'post_number': {'type': ['number', 'null']}, 'notification_type': {'type': ['number', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic_list'], 'properties': {'topic_list': {'type': 'object', 'required': ['topics'], 'properties': {'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'slug', 'posts_count', 'reply_count', 'created_at'], 'properties': {'id': {'type': 'number'}, 'slug': {'type': 'string'}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'excerpt': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'category_id': {'type': ['number', 'null']}, 'posts_count': {'type': 'number'}, 'reply_count': {'type': 'number'}, 'last_posted_at': {'type': ['string', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['category_list'], 'properties': {'category_list': {'type': 'object', 'required': ['categories'], 'properties': {'categories': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'slug'], 'properties': {'id': {'type': 'number'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'description_text': {'type': ['string', 'null']}, 'subcategory_list': {'anyOf': [{'type': 'array', 'items': {'$ref': '#/properties/category_list/properties/categories/items'}}, {'type': 'null'}]}}, 'additionalProperties': True}}}, 'additionalProperties': True}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'categoryId': {'type': 'integer', 'description': 'Numeric category ID. Provide this and/or categorySlug.'}, 'categorySlug': {'type': 'string', 'minLength': 1, 'description': "Category slug (e.g. 'bug-reports'). Provide this and/or categoryId."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic_list'], 'properties': {'topic_list': {'type': 'object', 'required': ['topics'], 'properties': {'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'slug', 'posts_count', 'reply_count', 'created_at'], 'properties': {'id': {'type': 'number'}, 'slug': {'type': 'string'}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'excerpt': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'category_id': {'type': ['number', 'null']}, 'posts_count': {'type': 'number'}, 'reply_count': {'type': 'number'}, 'last_posted_at': {'type': ['string', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topicId'], 'properties': {'topicId': {'type': 'integer', 'description': 'Numeric Discourse topic ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'title', 'slug', 'post_stream'], 'properties': {'id': {'type': 'number'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'post_stream': {'type': 'object', 'required': ['posts'], 'properties': {'posts': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'number'}, 'cooked': {'type': ['string', 'null']}, 'username': {'type': ['string', 'null']}, 'created_at': {'type': ['string', 'null']}, 'reply_count': {'type': ['number', 'null']}}, 'additionalProperties': True}}}, 'additionalProperties': True}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topicId', 'raw'], 'properties': {'raw': {'type': 'string', 'minLength': 1, 'description': 'Reply body in Markdown.'}, 'topicId': {'type': 'integer', 'description': 'Numeric Discourse topic ID to reply to.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'number'}, 'topic_id': {'type': ['number', 'null']}, 'username': {'type': ['string', 'null']}, 'topic_slug': {'type': ['string', 'null']}, 'post_number': {'type': ['number', 'null']}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['q'], 'properties': {'q': {'type': 'string', 'minLength': 1, 'description': 'Search query. Supports Discourse search syntax (e.g. #category, @username).'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'posts': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'number'}, 'cooked': {'type': ['string', 'null']}, 'topic_id': {'type': ['number', 'null']}, 'username': {'type': ['string', 'null']}, 'created_at': {'type': ['string', 'null']}}, 'additionalProperties': True}}, {'type': 'null'}]}, 'topics': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'slug', 'posts_count', 'reply_count', 'created_at'], 'properties': {'id': {'type': 'number'}, 'slug': {'type': 'string'}, 'tags': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'title': {'type': 'string'}, 'excerpt': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'category_id': {'type': ['number', 'null']}, 'posts_count': {'type': 'number'}, 'reply_count': {'type': 'number'}, 'last_posted_at': {'type': ['string', 'null']}}, 'additionalProperties': True}}, {'type': 'null'}]}, 'grouped_search_result': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': True}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId'], 'properties': {'campaignId': {'type': 'string', 'minLength': 1, 'description': 'The ID of the campaign to retrieve.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'gameMasterId', 'campaignName'], 'properties': {'id': {'type': 'string'}, 'ruleSystem': {'type': ['string', 'null']}, 'campaignName': {'type': 'string'}, 'gameMasterId': {'type': 'string'}, 'gameSystemSlug': {'type': ['string', 'null']}, 'coGameMasterIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'campaignDescription': {'type': ['string', 'null']}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId'], 'properties': {'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID to retrieve.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'ownerId'], 'properties': {'id': {'type': 'string'}, 'members': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'required': ['userId'], 'properties': {'role': {'type': ['string', 'null']}, 'status': {'type': ['string', 'null']}, 'userId': {'type': 'string'}, 'joinedAt': {'type': ['string', 'null']}, 'invitedAt': {'type': ['string', 'null']}}, 'additionalProperties': False}}, {'type': 'null'}]}, 'ownerId': {'type': 'string'}, 'summary': {'anyOf': [{'type': 'object', 'properties': {'name': {'type': ['string', 'null']}, 'color': {'type': ['string', 'null']}, 'imageUrl': {'type': ['string', 'null']}, 'description': {'type': ['string', 'null']}}, 'additionalProperties': False}, {'type': 'null'}]}, 'campaignIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'entryId'], 'properties': {'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry ID (hex) or exact title.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['entryId', 'title', 'type', 'blocks'], 'properties': {'type': {'type': 'string'}, 'quest': {'type': 'object', 'required': ['status', 'kind', 'playersCanTick'], 'properties': {'kind': {'type': 'string', 'description': 'Main | Side | Personal.'}, 'status': {'type': 'string', 'description': 'Available | Active | Completed | Failed.'}, 'rewards': {'type': 'array', 'items': {'type': 'object', 'required': ['kind'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string', 'description': 'currency | xp | item | other.'}, 'unit': {'type': 'string'}, 'label': {'type': 'string'}, 'amount': {'type': 'number'}, 'hidden': {'type': 'boolean'}, 'entryId': {'type': 'string'}, 'unitLabel': {'type': 'string'}, 'ruleEntryId': {'type': 'string'}}, 'additionalProperties': False}}, 'progress': {'type': 'object', 'required': ['done', 'total'], 'properties': {'done': {'type': 'number'}, 'total': {'type': 'number'}}, 'description': 'Required objectives done of those this user can see; optional and failed ones do not count.', 'additionalProperties': False}, 'objectives': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'state', 'optional', 'depth'], 'properties': {'id': {'type': 'string', 'description': 'Name it in set_quest_objective_state or update_quest_mnemons.'}, 'text': {'type': 'string'}, 'depth': {'type': 'number', 'description': '0 for a top-level objective.'}, 'state': {'type': 'string', 'description': 'open | done | failed.'}, 'hidden': {'type': 'boolean', 'description': 'GM reads only: true when players cannot see it.'}, 'optional': {'type': 'boolean'}, 'parentId': {'type': 'string'}}, 'additionalProperties': False}}, 'rewardTotals': {'type': 'object', 'required': ['currency'], 'properties': {'xp': {'type': ['number', 'null']}, 'currency': {'type': 'array', 'items': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'amount': {'type': 'number'}, 'unitLabel': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'playersCanTick': {'type': 'boolean'}}, 'description': 'Quests only: status, kind, objectives, reward chips and progress as this user may see them.', 'additionalProperties': False}, 'title': {'type': 'string'}, 'blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'type'], 'properties': {'id': {'type': 'string'}, 'text': {'type': 'string'}, 'type': {'type': 'string'}, 'assetId': {'type': 'string'}, 'caption': {'type': 'string'}, 'checked': {'type': 'boolean'}, 'language': {'type': 'string'}, 'mimeType': {'type': 'string'}}, 'additionalProperties': False}}, 'entryId': {'type': 'string'}, 'typeProperties': {'type': 'object', 'additionalProperties': {}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'sessionId'], 'properties': {'sessionId': {'type': 'string', 'minLength': 1, 'description': 'Session ID.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'campaignId', 'title', 'startAt'], 'properties': {'id': {'type': 'string'}, 'endAt': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'guildId': {'type': ['string', 'null']}, 'startAt': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'campaignId': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'invitedUserIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'createdByUserId': {'type': ['string', 'null']}, 'invitedPartyIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'attendanceReplies': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId', 'userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID to invite.'}, 'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'guildId', 'userId'], 'properties': {'userId': {'type': 'string'}, 'guildId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaigns', 'idMap'], 'properties': {'idMap': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'campaigns': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'gameMasterId', 'campaignName'], 'properties': {'id': {'type': 'string'}, 'ruleSystem': {'type': ['string', 'null']}, 'accessLevel': {'type': ['string', 'null']}, 'campaignName': {'type': 'string'}, 'gameMasterId': {'type': 'string'}, 'gameSystemSlug': {'type': ['string', 'null']}, 'coGameMasterIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'campaignDescription': {'type': ['string', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId'], 'properties': {'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['userId'], 'properties': {'userId': {'type': 'string'}, 'displayName': {'type': ['string', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}, 'name': {'type': ['string', 'null']}, 'email': {'type': ['string', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId'], 'properties': {'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['userId'], 'properties': {'role': {'type': ['string', 'null']}, 'status': {'type': ['string', 'null']}, 'userId': {'type': 'string'}, 'joinedAt': {'type': ['string', 'null']}, 'invitedAt': {'type': ['string', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guilds', 'idMap'], 'properties': {'idMap': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'guilds': {'type': 'array', 'items': {'type': 'object', 'required': ['guildId', 'name', 'role', 'canAdmin', 'memberCount', 'campaignCount'], 'properties': {'name': {'type': 'string'}, 'role': {'type': 'string'}, 'guildId': {'type': 'string'}, 'canAdmin': {'type': 'boolean'}, 'memberCount': {'type': 'number'}, 'campaignCount': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'entryId'], 'properties': {'entryId': {'type': 'string', 'minLength': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['outgoing', 'incoming', 'linked'], 'properties': {'linked': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId', 'title', 'type', 'relationshipTypes'], 'properties': {'type': {'type': 'string'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'relationshipTypes': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'incoming': {'type': 'array', 'items': {'$ref': '#/properties/outgoing/items'}}, 'outgoing': {'type': 'array', 'items': {'type': 'object', 'required': ['relationshipId', 'sourceId', 'targetId', 'label'], 'properties': {'kind': {'type': 'string'}, 'color': {'type': 'string'}, 'label': {'type': 'string'}, 'sourceId': {'type': 'string'}, 'symmetry': {'type': 'string'}, 'targetId': {'type': 'string'}, 'direction': {'type': 'string'}, 'relationshipId': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId'], 'properties': {'type': {'type': 'string', 'description': 'Mnemon type filter (NPC, Location, Quest, â\x80¦).'}, 'limit': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Maximum entries to return (default 100).'}, 'title': {'type': 'string', 'description': 'Case-insensitive substring filter on title.'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Entries to skip. Pass the nextOffset from the previous call to fetch the next page.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'ID of the campaign.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['entries', 'idMap', 'hasMore'], 'properties': {'idMap': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'entries': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId', 'title', 'type'], 'properties': {'type': {'type': 'string'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}}, 'additionalProperties': False}}, 'hasMore': {'type': 'boolean'}, 'nextOffset': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId'], 'properties': {'year': {'type': 'integer', 'description': 'Calendar year. Defaults to current year.'}, 'month': {'type': 'integer', 'maximum': 12, 'minimum': 1, 'description': 'Calendar month (1-12). Defaults to current month.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'campaignId', 'title', 'startAt'], 'properties': {'id': {'type': 'string'}, 'endAt': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'guildId': {'type': ['string', 'null']}, 'startAt': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'campaignId': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'invitedUserIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'createdByUserId': {'type': ['string', 'null']}, 'invitedPartyIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'attendanceReplies': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID of the counterparty.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'User ID of the co-GM to remove.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'campaignId', 'userId'], 'properties': {'userId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}, 'campaignId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId', 'userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'User ID of the member to remove.'}, 'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'guildId', 'userId'], 'properties': {'userId': {'type': 'string'}, 'guildId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'query'], 'properties': {'type': {'type': 'string', 'description': 'Mnemon type filter (NPC, Location, Quest, â\x80¦).'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Maximum results (default 20).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Text to find (case-insensitive substring) in mnemon titles, tags, and body content.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'ID of the campaign.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results', 'idMap', 'hasMore'], 'properties': {'idMap': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'hasMore': {'type': 'boolean'}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId', 'title', 'type', 'matchedIn', 'snippets'], 'properties': {'type': {'type': 'string'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'snippets': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string'}, 'blockId': {'type': 'string'}}, 'additionalProperties': False}}, 'matchedIn': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['userId'], 'properties': {'userId': {'type': 'string', 'minLength': 1, 'description': 'Argo user ID of the counterparty.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'senderId', 'receiverId', 'status'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'senderId': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'receiverId': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['guildId', 'userId', 'role'], 'properties': {'role': {'enum': ['Owner', 'Admin', 'Member'], 'type': 'string', 'description': 'New role.'}, 'userId': {'type': 'string', 'minLength': 1, 'description': 'Member to change.'}, 'guildId': {'type': 'string', 'minLength': 1, 'description': 'Guild ID.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['success', 'guildId', 'userId', 'role'], 'properties': {'role': {'enum': ['Owner', 'Admin', 'Member'], 'type': 'string'}, 'userId': {'type': 'string'}, 'guildId': {'type': 'string'}, 'success': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'entryId', 'objectiveId', 'state'], 'properties': {'state': {'enum': ['open', 'done', 'failed'], 'type': 'string', 'description': 'open, done or failed.'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'The quest: entryId (hex) or exact title.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}, 'objectiveId': {'type': 'string', 'minLength': 1, 'description': "The objective, as get_mnemon's quest.objectives[].id names it."}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['entryId', 'title', 'type', 'blocks'], 'properties': {'type': {'type': 'string'}, 'quest': {'type': 'object', 'required': ['status', 'kind', 'playersCanTick'], 'properties': {'kind': {'type': 'string', 'description': 'Main | Side | Personal.'}, 'status': {'type': 'string', 'description': 'Available | Active | Completed | Failed.'}, 'rewards': {'type': 'array', 'items': {'type': 'object', 'required': ['kind'], 'properties': {'id': {'type': 'string'}, 'kind': {'type': 'string', 'description': 'currency | xp | item | other.'}, 'unit': {'type': 'string'}, 'label': {'type': 'string'}, 'amount': {'type': 'number'}, 'hidden': {'type': 'boolean'}, 'entryId': {'type': 'string'}, 'unitLabel': {'type': 'string'}, 'ruleEntryId': {'type': 'string'}}, 'additionalProperties': False}}, 'progress': {'type': 'object', 'required': ['done', 'total'], 'properties': {'done': {'type': 'number'}, 'total': {'type': 'number'}}, 'description': 'Required objectives done of those this user can see; optional and failed ones do not count.', 'additionalProperties': False}, 'objectives': {'type': 'array', 'items': {'type': 'object', 'required': ['text', 'state', 'optional', 'depth'], 'properties': {'id': {'type': 'string', 'description': 'Name it in set_quest_objective_state or update_quest_mnemons.'}, 'text': {'type': 'string'}, 'depth': {'type': 'number', 'description': '0 for a top-level objective.'}, 'state': {'type': 'string', 'description': 'open | done | failed.'}, 'hidden': {'type': 'boolean', 'description': 'GM reads only: true when players cannot see it.'}, 'optional': {'type': 'boolean'}, 'parentId': {'type': 'string'}}, 'additionalProperties': False}}, 'rewardTotals': {'type': 'object', 'required': ['currency'], 'properties': {'xp': {'type': ['number', 'null']}, 'currency': {'type': 'array', 'items': {'type': 'object', 'properties': {'unit': {'type': 'string'}, 'amount': {'type': 'number'}, 'unitLabel': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'playersCanTick': {'type': 'boolean'}}, 'description': 'Quests only: status, kind, objectives, reward chips and progress as this user may see them.', 'additionalProperties': False}, 'title': {'type': 'string'}, 'blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'type'], 'properties': {'id': {'type': 'string'}, 'text': {'type': 'string'}, 'type': {'type': 'string'}, 'assetId': {'type': 'string'}, 'caption': {'type': 'string'}, 'checked': {'type': 'boolean'}, 'language': {'type': 'string'}, 'mimeType': {'type': 'string'}}, 'additionalProperties': False}}, 'entryId': {'type': 'string'}, 'typeProperties': {'type': 'object', 'additionalProperties': {}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relatedEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId'], 'properties': {'campaignId': {'type': 'string', 'minLength': 1, 'description': 'ID of the campaign to update.'}, 'campaignName': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'New display name. Omit to leave unchanged.'}, 'campaignDescription': {'type': 'string', 'maxLength': 5000, 'description': 'New description (setting, tone, premise). Omit to leave unchanged. Pass an empty string to clear the existing description.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'gameMasterId', 'campaignName'], 'properties': {'id': {'type': 'string'}, 'ruleSystem': {'type': ['string', 'null']}, 'campaignName': {'type': 'string'}, 'gameMasterId': {'type': 'string'}, 'gameSystemSlug': {'type': ['string', 'null']}, 'coGameMasterIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'campaignDescription': {'type': ['string', 'null']}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'customType': {'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'date': {'type': 'string'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'outcome': {'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'sessionNumber': {'type': 'integer'}, 'consequenceEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedCharacterIds': {'type': 'array', 'items': {'type': 'string'}}, 'involvedLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'levelId': {'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relatedEntryIds': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId', 'ops'], 'properties': {'ops': {'type': 'array', 'items': {'type': 'object', 'required': ['op'], 'properties': {'op': {'enum': ['append', 'insertAfter', 'replace', 'remove'], 'type': 'string', 'description': 'The op to apply.'}, 'blockId': {'type': 'string', 'description': 'Required for replace and remove: a body node id from get_mnemon.'}, 'markdown': {'type': 'string', 'description': 'Markdown content for append / insertAfter / replace. May produce several body nodes. Mentions: @[label](mnemon:<entryId>); images: .'}, 'afterBlockId': {'type': 'string', 'description': 'Required for insertAfter: the body node id the new content follows.'}}, 'description': 'A single body mutation, keyed by node id. See describe_mnemon_types.blockOps.', 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1, 'description': 'Ordered ops to apply atomically per entry.'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'npcType': {'enum': ['FACTION', 'INDIVIDUAL'], 'type': 'string'}, 'sheetId': {'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'relationshipIds': {'type': 'array', 'items': {'type': 'string'}}, 'memberNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'affiliationEntryIds': {'type': 'array', 'items': {'type': 'string'}}, 'primaryLocationEntryId': {'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'partyId': {'type': 'string'}, 'playerKind': {'enum': ['PARTY', 'CHARACTER', 'NOTES'], 'type': 'string'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'characterId': {'type': 'string'}, 'parentEntryId': {'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'hook': {'type': 'string', 'description': 'The one line players see under the title in the quest log. An empty string clears it.'}, 'kind': {'enum': ['Main', 'Side', 'Personal'], 'type': 'string', 'description': 'Main | Side | Personal. Reads as Side when unset.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'notes': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Free-text bullet notes for the step.'}, 'title': {'type': 'string', 'description': "Short label for the step, e.g. 'Talk to the innkeeper'."}, 'status': {'enum': ['Hidden', 'Available', 'Active', 'Completed', 'Failed', 'TurnedIn', 'Abandoned', 'Expired', 'OnHold'], 'type': 'string', 'description': "Defaults to 'Available' when omitted. Unknown values are coerced server-side."}, 'stepId': {'type': 'string', 'description': 'Optional. Server generates a fresh UUID when blank. Provide an existing stepId to reuse linkedStepIds.'}, 'description': {'type': 'string'}, 'targetNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'NPCs involved in this step (entryIds or titles).'}, 'targetLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations involved in this step.'}}, 'additionalProperties': False}, 'description': "Retired: the old quest board's steps, for quests the migration has not converted. Send objectives."}, 'title': {'type': 'string'}, 'status': {'enum': ['Available', 'Active', 'Completed', 'Failed'], 'type': 'string', 'description': 'Available | Active | Completed | Failed. Reads as Available when unset.'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'giverId': {'type': 'string', 'description': "Who gives the quest: an NPC's entryId or exact title (its Quest giver link). On update an empty string removes it."}, 'gmNotes': {'type': 'string', 'description': 'Replaces the GM-only notes, in Markdown.'}, 'rewards': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string', 'description': "The chip to rewrite, as get_mnemon's quest.rewards[].id names it. Omit for a new chip."}, 'kind': {'enum': ['currency', 'xp', 'item', 'other'], 'type': 'string', 'description': 'currency | xp | item | other. Makes this a reward chip â\x80\x94 send it on every reward.'}, 'unit': {'type': 'string', 'description': "currency chips: the coin, as the campaign's setting names it (e.g. coin.gp), or free text such as 'gold'."}, 'label': {'type': 'string', 'description': "What the chip says: an item's name, a favour, a title."}, 'notes': {'type': 'string', 'description': 'Retired reward row: notes.'}, 'amount': {'type': 'number', 'description': 'How many: coins, experience points, a stack.'}, 'hidden': {'type': 'boolean', 'description': 'true hides the chip from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'itemId': {'type': 'string', 'description': 'Retired reward row: a free-text item reference.'}, 'entryId': {'type': 'string', 'description': 'item chips: the mnemon entry it links to (entryId or exact title). Not with ruleEntryId.'}, 'unitLabel': {'type': 'string', 'description': "How the coin reads, e.g. 'Gold piece'."}, 'rewardType': {'type': 'string', 'description': 'Retired reward row, without kind: Gold | Item | XP | Reputation â\x80¦'}, 'ruleEntryId': {'type': 'string', 'description': 'item chips: the rules-library entry it links to. Not with entryId.'}, 'linkedStepIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Retired reward row: the stepIds or subquest entry ids that unlock it.'}}, 'additionalProperties': False}, 'description': 'Replaces the reward chips; an empty list clears them. Name an existing chip by id to keep it.'}, 'expiresAt': {'type': 'string', 'description': 'Retired quest board field (ISO-8601).'}, 'background': {'type': 'string', 'description': 'Replaces the Background section, in Markdown.'}, 'issuerText': {'type': 'string', 'description': 'Retired quest board field: write it into background.'}, 'locationId': {'type': 'string', 'description': "Where the quest is given or set: a Location's entryId or exact title. On update an empty string removes it."}, 'objectives': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'id': {'type': 'string', 'description': "The objective to rewrite, as get_mnemon's quest.objectives[].id names it. Omit for a new objective."}, 'text': {'type': 'string', 'minLength': 1, 'description': 'The objective, one line of Markdown. Mentions: @[label](mnemon:<entryId>).'}, 'state': {'enum': ['open', 'done', 'failed'], 'type': 'string', 'description': 'open (the default), done or failed.'}, 'hidden': {'type': 'boolean', 'description': 'true hides it from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'children': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'id': {'type': 'string', 'description': "The objective to rewrite, as get_mnemon's quest.objectives[].id names it. Omit for a new objective."}, 'text': {'type': 'string', 'minLength': 1, 'description': 'The objective, one line of Markdown. Mentions: @[label](mnemon:<entryId>).'}, 'state': {'enum': ['open', 'done', 'failed'], 'type': 'string', 'description': 'open (the default), done or failed.'}, 'hidden': {'type': 'boolean', 'description': 'true hides it from players, false shows it; omitted keeps what it has (a new one is shown).'}, 'optional': {'type': 'boolean', 'description': "An optional objective does not count toward the quest's progress. Defaults to false."}}, 'additionalProperties': False}, 'description': 'Its sub-objectives, in order. Omitted keeps the ones it has; an empty list removes them.'}, 'optional': {'type': 'boolean', 'description': "An optional objective does not count toward the quest's progress. Defaults to false."}}, 'additionalProperties': False}, 'description': 'Replaces the objective list. Name an existing objective by id to keep it and what the GM wrote under it; one left out is removed. To tick one objective, use set_quest_objective_state instead.'}, 'repeatable': {'type': 'boolean', 'description': 'Retired quest board field.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'questStatus': {'type': 'string', 'description': 'Retired: send status.'}, 'parentQuestId': {'type': 'string', 'description': "The quest this one belongs to: a Quest's entryId or exact title. On update an empty string removes it."}, 'playersCanTick': {'type': 'boolean', 'description': 'Whether players may tick the objectives they can see. Off by default.'}, 'issuerNpcEntryId': {'type': 'string', 'description': 'Retired quest board field: send giverId.'}, 'subQuestEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': "This quest's subquests (entryIds or titles). Prefer parentQuestId on each subquest."}, 'relatedNpcEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'NPCs the quest involves (entryIds or titles).'}, 'relatedLocationEntryIds': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations the quest involves (entryIds or titles).'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'sessionId'], 'properties': {'endAt': {'type': 'string', 'description': 'ISO-8601 instant.'}, 'title': {'type': 'string'}, 'startAt': {'type': 'string', 'description': 'ISO-8601 instant.'}, 'sessionId': {'type': 'string', 'minLength': 1, 'description': 'Session ID.'}, 'campaignId': {'type': 'string', 'minLength': 1, 'description': 'Campaign ID.'}, 'description': {'type': 'string'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'campaignId', 'title', 'startAt'], 'properties': {'id': {'type': 'string'}, 'endAt': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'guildId': {'type': ['string', 'null']}, 'startAt': {'type': 'string'}, 'createdAt': {'type': ['string', 'null']}, 'updatedAt': {'type': ['string', 'null']}, 'campaignId': {'type': 'string'}, 'description': {'type': ['string', 'null']}, 'invitedUserIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'createdByUserId': {'type': ['string', 'null']}, 'invitedPartyIds': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}]}, 'attendanceReplies': {'anyOf': [{'type': 'object', 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['campaignId', 'items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['entryId'], 'properties': {'date': {'type': 'string'}, 'loot': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Items, treasure, or rewards acquired.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'combats': {'type': 'array', 'items': {'type': 'object', 'required': ['description'], 'properties': {'outcome': {'type': 'string', 'description': 'How it resolved, e.g. "party victorious, no casualties".'}, 'description': {'type': 'string', 'minLength': 1, 'description': 'Who fought whom and where, in one sentence.'}}, 'additionalProperties': False}, 'description': 'Combat encounters that took place this session.'}, 'entryId': {'type': 'string', 'minLength': 1, 'description': 'Mnemon entry id (hex) or exact title.'}, 'visibility': {'enum': ['HIDDEN', 'INTERNAL', 'PUBLIC'], 'type': 'string'}, 'majorEvents': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Significant story beats, in chronological order.'}, 'openThreads': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Unresolved threads and cliffhangers as of session end.'}, 'previouslyOn': {'type': 'string', 'description': 'Where each player ended â\x80\x94 read aloud at the top of the next session.'}, 'npcsMentioned': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'minLength': 1, 'description': 'Name as referenced in the session, e.g. "Captain Mira".'}, 'role': {'type': 'string', 'description': 'Role played this session, e.g. "quest-giver", "rescued captive".'}}, 'additionalProperties': False}, 'description': 'NPCs that appeared or were referenced. This is descriptive only â\x80\x94 to link one to an existing NPC mnemon, call create_mnemon_relationship with SESSION_ATTENDEE_NPC.'}, 'partyEndState': {'type': 'object', 'description': 'Character display name -> short end-of-session status line.', 'additionalProperties': {'type': 'string'}}, 'sessionNumber': {'type': 'integer'}, 'partyDecisions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Meaningful choices that will shape future sessions.'}, 'suggestedTitle': {'type': 'string', 'description': 'Short evocative title for the session, like a TV episode title.'}, 'detailedSummary': {'type': 'string', 'description': 'Full narrative summary, 3-5 paragraphs.'}, 'oneSentenceSummary': {'type': 'string', 'description': 'Single-sentence TL;DR of what happened.'}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1}, 'campaignId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['index', 'success'], 'properties': {'error': {'type': 'string'}, 'index': {'type': 'number'}, 'title': {'type': 'string'}, 'entryId': {'type': 'string'}, 'success': {'type': 'boolean'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'failedOpIndex': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
GripForge
Generates, rigs, animates, analyzes, and packages game characters, weapons, armor, effects, environments, and engine-ready assets.
apex-x1
Provides X1 and Arc token screening, liquidity and exit-risk checks, wallet and bridge data, non-custodial token operations, comm…
spriteship
Generates and manages 2D game characters, assets, animations, tilesets, UI packs, maps, and engine-ready exports for multiple gam…
Moddable Games Tools
Provides chess analysis and puzzles, board and hex-map generation, dice and probability utilities, card decks, scoring, and other…
NOT FOR HUMANS
Provides NFT ownership and marketplace status, wallet-based agent identity and claims, public agent learning records, and multipl…
Clash Royale
Provides Clash Royale player, clan, war, card, ranking, and location data, along with broader structured research and data-routin…
Steam
Provides Steam data for apps, games, profiles, friends, ownership, achievements, player statistics, news, concurrent players, and…
Bungie
Provides Destiny 2 and Bungie.net data for manifests, profiles, characters, clans, loadouts, linked accounts, and historical game…