# Standards for AI writing: the API and the MCP tool

**Category:** [Glossary and blocklists](https://help.totalctrl.app/hc/totalctrl/totalctrl-help-center/en-US/categories/standards-glossary)
**Updated:** 2026-10-04

## What it returns

`GET /api/v1/standards/context?app_slug=wiki&language=en` returns everything somebody writing in that app is meant to follow. The MCP tool `standards_get_context` returns the same thing as text an assistant can read.
KeyWhat it holds
`glossary`Terms marked *preferred* — the words to use.
`avoid`Terms marked forbidden, deprecated or rejected, each with a replacement where one was recorded.
`blocked`The package blocklist. `severity` is `forbid` or `warn`, with the reason and what to say instead.
`blocked_total`The true count, since `blocked` is capped.
`style_rules`Active rules that apply to this app, with the wording for the language you asked for.
`tone_profile`The app's default tone of voice profile.

## avoid and blocked are new

Until now this returned only what to *prefer*. The rules a workspace had written down specifically to stop a word being used — a forbidden glossary term, a deprecated one, everything on the blocklist — were the one thing it never sent. Anything writing against this endpoint, including TotalCtrl's own AI features, could produce exactly the wording that had been ruled out.

Both keys are additive. Existing keys and their shapes are unchanged, so an integration that ignores them keeps working.

## blocked is not scoped to the app

Style rules and tone profiles are per app. The blocklist is not, and must not be: a competitor's trademark is off limits wherever it is written, and an app-scoped blocklist would be missing from whichever surface nobody had configured — which is the surface it was needed on.

## If you built against this before

Two things are worth knowing. Filtering style rules or tone profiles by `applies_to` used to fail with a server error rather than narrowing the list — that is fixed, on the REST endpoint and on the `standards_list_style_rules` and `standards_list_tone_profiles` tools. And `standards_get_context` itself was affected by the same fault, so an assistant calling it received an error instead of your standards.

---

## Related Articles

- [Deprecating a term, and finding out whether it is still used](https://help.totalctrl.app/en-US/articles/standards-glossary-deprecated-1)
- [Domain and Subject on a glossary term](https://help.totalctrl.app/en-US/articles/standards-glossary-domain-subject-1)
- [Blocklists: words that must not be used](https://help.totalctrl.app/en-US/articles/standards-blocklist-1)
- [Change history for a glossary term](https://help.totalctrl.app/en-US/articles/standards-glossary-history-1)
- [Standards &amp; Brand Hub webhooks](https://help.totalctrl.app/en-US/articles/standards-webhooks-1)

---
[← Back to TotalCtrl Help Center](https://help.totalctrl.app/en-US/)