DESTRUCTIVE

create_glossary_term

Adds a word the project agrees on, so the vocabulary a brief uses is pinned as the conversation goes.

Add a term to a project's glossary: project_id and term are required, the term unique within the project regardless of case; definition (HTML), aliases (the other names it goes by), related_term_ids (terms of the same project it leans on), source (where the definition comes from) and status (draft by default, or in_review, approved, deprecated) fill in the rest. The term is written through the same action the Dictionary page and the intake wizard run, and glossary_term.created goes out.

Check list_glossary_terms first so a word is defined once; the editors across the project link the term wherever it appears. A staff token with glossary:create on the project is needed.

Requires ability

The token behind the MCP session must hold it, or the call is refused with TOKEN_MISSING_ABILITY.

The REST endpoint and this tool share one action, so validation, permissions and events are identical.

Fires one event

Delivered to every endpoint subscribed to it once the change is made.

Annotations

Destructive

A client that honours annotations asks a person before running it.

Arguments

project_id*string

UUID of the project.

term*string

The word, as the project uses it, 1 to 80 characters.

definitionstringoptional

What it means, as HTML.

aliasesstring[]optional

The other names it goes by.

related_term_idsstring[]optional

UUIDs of the terms of the same project it leans on.

sourcestringoptional

Where the definition comes from: a document, a person, a standard.

statusstringoptional

Where the term stands in review; draft by default.

draftin_reviewapproveddeprecated

What it returns

{  "data": {    "id": "7a8b9c0d-1e2f-4a3b-8c4d-5e6f7a8b9c0d",    "project_id": "7f3d1c92-8b45-4e6a-9d21-5c8e0a4b6f13",    "term": "Drop-off",    "definition": "<p>A customer leaving laundry at the shop counter rather than booking a pickup.</p>",    "aliases": ["Walk-in"],    "related_term_ids": [],    "source": "The shop's own words",    "status": "draft",    "position": 1,    "created_at": "2026-10-28T09:30:00+00:00",    "updated_at": "2026-10-28T09:30:00+00:00"  }}

How it fails

VALIDATION_FAILED

term missing or outside 1 to 80 characters, a term the project already defines, a status outside the four, or a related term that is not the project's.

RESOURCE_NOT_FOUND

unknown project_id, or a project outside the token's scope or the person's visibility.

FORBIDDEN

the token is a client guest's, or the holder's role on the project does not carry glossary:create.

TOKEN_MISSING_ABILITY

token lacks glossary:create.

How is this guide?

Last updated on