Skip to main content
Manage tag definitions. Tags are hierarchical labels used to categorize documents (e.g., /technology/ai/google). This tool manages the catalog — the definitions themselves. To assign or remove tags on documents, use the documents tool.
New to tags? See Tags for the mental model — what tags are, how hierarchy works, and how they differ from folders.

Parameters

ParameterTypeRequiredDescription
actionenumYeslist, create, delete, or update
tagIdUUIDConditionalRequired for delete and update
tagPathstringConditionalRequired for create — e.g., "/technology/ai/google"
tagDescriptionstring | nullNoDescription for create or update
tagColorstring | nullNoHex color for create or update (e.g., "#3B82F6")
tagDisplayNamestring | nullNoHuman-readable name — shown in UI instead of path segment. For create or update
filesystemstringNoFilesystem slug — optional for create when you have multiple filesystems

Actions

ActiontagIdtagPathNotes
listReturns all tags in the workspace
createREQUIREDAuto-creates ancestor tags that don’t exist yet
deleteREQUIREDCascades — deletes all descendants and removes all document assignments
updateREQUIREDUpdate color, description, or displayName

Tag Hierarchy

Tags are organized as paths using / separators. When you create /technology/ai/google, Moxn auto-creates /technology and /technology/ai if they don’t exist. This hierarchy is used for:
  • Organizing the tag catalog visually
  • Backing database column options (select, multi-select, status, checkbox columns all reference tag IDs)
  • Filtering in find via tagIds

Response (list)

[
  {
    "id": "uuid",
    "path": "/technology/ai",
    "displayName": "AI",
    "description": "Artificial intelligence topics",
    "color": "#3B82F6"
  }
]

Examples

"Create a 'needs-review' tag"
→ tags({action: "create", tagPath: "/status/needs-review", tagColor: "#F59E0B", tagDisplayName: "Needs Review"})

"List all tags"
→ tags({action: "list"})

"Rename the display name of a tag"
→ tags({action: "update", tagId: "...", tagDisplayName: "Under Review"})

"Delete the /drafts tag and all its children"
→ tags({action: "delete", tagId: "..."})
  • documents — assign/remove tags on documents (assign_tag, remove_tag, list_tags, create_tag actions)
  • find — filter documents by tag IDs
  • databases — tag-backed column types (select, multi_select, status, checkbox)