Skip to main content
Glama

Field Service Business Platform by Doing Work

notifications_setPrefs

Turn mention emails or texts, or the night-before kit list email, on or off for yourself in one shop. Ask the worker before you change these. Texts stay held and unsent until the shop's texting registration is done.

Input Schema

NameRequiredDescriptionDefault
shop_idYes
mention_textNo
mention_emailNo
kit_list_emailNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / kit_list_email
      Added value: +{
      +  "type": "boolean"
      +}
    • changedOutput schema / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "mention_email": {
      -        "type": "boolean"
      -      },
      -      "mention_text": {
      -        "type": "boolean"
      -      },
      -      "shop_id": {
      -        "format": "uuid",
      -        "type": "string"
      -      },
      -      "texts_sending": {
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "shop_id",
      -      "mention_email",
      -      "mention_text",
      -      "texts_sending"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "properties": {
      -      "approval_id": {
      -        "format": "uuid",
      -        "type": "string"
      -      },
      -      "approval_required": {
      -        "enum": [
      -          true
      -        ],
      -        "type": "boolean"
      -      },
      -      "expires_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      },
      -      "status": {
      -        "enum": [
      -          "pending"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "approval_required",
      -      "approval_id",
      -      "status",
      -      "expires_at",
      -      "message"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "kit_list_email": {
      +        "type": "boolean"
      +      },
      +      "mention_email": {
      +        "type": "boolean"
      +      },
      +      "mention_text": {
      +        "type": "boolean"
      +      },
      +      "shop_id": {
      +        "format": "uuid",
      +        "type": "string"
      +      },
      +      "texts_sending": {
      +        "type": "boolean"
      +      }
      +    },
      +    "required": [
      +      "shop_id",
      +      "mention_email",
      +      "mention_text",
      +      "kit_list_email",
      +      "texts_sending"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "properties": {
      +      "approval_id": {
      +        "format": "uuid",
      +        "type": "string"
      +      },
      +      "approval_required": {
      +        "enum": [
      +          true
      +        ],
      +        "type": "boolean"
      +      },
      +      "expires_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      },
      +      "message": {
      +        "type": "string"
      +      },
      +      "status": {
      +        "enum": [
      +          "pending"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "approval_required",
      +      "approval_id",
      +      "status",
      +      "expires_at",
      +      "message"
      +    ],
      +    "type": "object"
      +  }
      +]
  2. First observed

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations supplied, the description carries the full load and does real work: it discloses that preferences are per-user and per-shop, that worker consent is required, and a non-obvious side effect ('texts stay held and unsent until the shop's texting registration is done'). It does not state whether omitted boolean parameters are left unchanged or reset, which matters for a 1-required-param mutation.

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

Conciseness5/5

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

Three short sentences, front-loaded with the action and its target, followed by the consent rule and then the consequential caveat about held texts. Nothing is repeated from the schema and no sentence is filler.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the description covers scope, consent, and the delayed-text side effect. The remaining gap is partial-update semantics for the three optional booleans, which an agent would need before sending a payload.

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

Parameters4/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does: mention email, mention text, kit list email, and the shop scoping parameter are all mapped to their real-world meaning, and 'on or off' implies booleans. It does not distinguish the two mention channels or clarify what happens when a boolean is omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('turn ... on or off') and names the exact settings (mention emails, mention texts, night-before kit list email) plus the scope ('for yourself in one shop'). It distinguishes itself functionally from notifications_getPrefs by being the mutation counterpart, though it never names that sibling explicitly.

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

Usage Guidelines4/5

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

'Ask the worker before you change these' gives an explicit precondition for invocation, which is unusually actionable. It stops short of naming notifications_getPrefs as the read-before-write alternative or saying when the tool should not be called at all.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources