Skip to main content
Glama

Write a coaching narrative

generate_narrative
Read-only

Premium: write a plain-language coaching narrative for one person, or for a pair when compare_with is given, synthesized from all 21 frameworks. Business context stays on working behavior only. Slower than other tools. Costs 5 units.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
focusNoOptional topic to emphasize, e.g. 'giving feedback'.
lengthNoApproximate length of the narrative.standard
personYesWho the narrative is about. Accepts a profile id, an exact email, or a full name. If a name matches more than one person the tool asks which one instead of guessing.
contextNoRelationship context that sets framework weighting. 'business' (default) is work-safe and withholds personal-life signals (love language, attachment style, date of birth); the other contexts include them.business
audienceNoWho will read it. Hiring or candidate-screening audiences are intentionally not supported.manager
compare_withNoOptional second person for a pair narrative. Accepts a profile id, an exact email, or a full name. If a name matches more than one person the tool asks which one instead of guessing.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
unitsNoTool-call units this narrative costs.
billingNoUnits billed.
contextNoRelationship context for pair narratives.
scoringNoScores the narrative is based on.
subjectNoPerson the narrative is about.
audienceNoWho the narrative is written for.
sectionsNoNarrative split into sections.
narrativeNoThe written coaching narrative.
disclaimerNoDecision-support disclaimer.
guardrailsNoSafety check results.
action_itemsNoAction items pulled from the narrative.
compared_withNoSecond person, for pair narratives.
requires_confirmationNoTrue when the price must be confirmed before running.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "action_items": {
      +      "description": "Action items pulled from the narrative."
      +    },
      +    "audience": {
      +      "description": "Who the narrative is written for.",
      +      "type": "string"
      +    },
      +    "billing": {
      +      "additionalProperties": {
      +        "$ref": "#/properties/guardrails/additionalProperties"
      +      },
      +      "description": "Units billed.",
      +      "type": "object"
      +    },
      +    "compared_with": {
      +      "description": "Second person, for pair narratives.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "context": {
      +      "description": "Relationship context for pair narratives.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "disclaimer": {
      +      "description": "Decision-support disclaimer.",
      +      "type": "string"
      +    },
      +    "guardrails": {
      +      "additionalProperties": {},
      +      "description": "Safety check results.",
      +      "type": "object"
      +    },
      +    "narrative": {
      +      "description": "The written coaching narrative.",
      +      "type": "string"
      +    },
      +    "requires_confirmation": {
      +      "description": "True when the price must be confirmed before running.",
      +      "type": "boolean"
      +    },
      +    "scoring": {
      +      "description": "Scores the narrative is based on."
      +    },
      +    "sections": {
      +      "description": "Narrative split into sections."
      +    },
      +    "subject": {
      +      "description": "Person the narrative is about.",
      +      "type": "string"
      +    },
      +    "units": {
      +      "description": "Tool-call units this narrative costs.",
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed12 schema fields changed
    • addedInput schema / properties / audience / default
      Added value: +"manager"
    • changedInput schema / properties / audience / description
      Previous value: -"Who the narrative is for. Hiring or candidate-screening audiences are intentionally not supported."New value: +"Who will read it. Hiring or candidate-screening audiences are intentionally not supported."
    • addedInput schema / properties / compare_with / description
      Added value: +"Optional second person for a pair narrative. Accepts a profile id, an exact email, or a full name. If a name matches more than one person the tool asks which one instead of guessing."
    • addedInput schema / properties / context / default
      Added value: +"business"
    • addedInput schema / properties / context / description
      Added value: +"Relationship context that sets framework weighting. 'business' (default) is work-safe and withholds personal-life signals (love language, attachment style, date of birth); the other contexts include them."
    • addedInput schema / properties / context / enum
      Added value: +[
      +  "business",
      +  "romantic",
      +  "friendship",
      +  "coparenting"
      +]
    • addedInput schema / properties / focus / description
      Added value: +"Optional topic to emphasize, e.g. 'giving feedback'."
    • addedInput schema / properties / focus / maxLength
      Added value: +200
    • addedInput schema / properties / length / default
      Added value: +"standard"
    • addedInput schema / properties / length / description
      Added value: +"Approximate length of the narrative."
    • addedInput schema / properties / length / enum
      Added value: +[
      +  "short",
      +  "standard",
      +  "deep"
      +]
    • addedInput schema / properties / person / description
      Added value: +"Who the narrative is about. Accepts a profile id, an exact email, or a full name. If a name matches more than one person the tool asks which one instead of guessing."
  3. Changed2 schema fields changed
    • addedInput schema / properties / audience / description
      Added value: +"Who the narrative is for. Hiring or candidate-screening audiences are intentionally not supported."
    • addedInput schema / properties / audience / enum
      Added value: +[
      +  "manager",
      +  "self",
      +  "partner"
      +]
  4. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnlyHint/openWorld/destructive, and the description layers on non-obvious behavior: metered cost of 5 units, elevated latency, privacy weighting per context (business withholds love language, attachment style, DOB), and disambiguation behavior when a name matches multiple people. These are exactly the operational traits annotations cannot express.

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 compact sentences, front-loaded with the premium/scope qualifier, then the privacy constraint, then cost and latency. Zero filler and nothing buried.

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 no explanation. For a 6-parameter tool with pair mode and context weighting, the description covers cost, latency, privacy behavior, and audience limits; the only thin spot is not restating accepted identifier forms, which the schema already handles.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents every parameter including the context enum's withholding rules and the compare_with pair trigger. The description reinforces pair mode and framework synthesis but adds no format, syntax, or default semantics beyond the schema; baseline 3 applies.

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

Purpose5/5

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

States a specific verb (write) and resource (plain-language coaching narrative), names the person/pair scope modifier (compare_with), and identifies the synthesis source ('all 21 frameworks'). No sibling tool covers narrative generation, so the tool is unambiguously distinguishable from the rest of the set.

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?

Gives a clear trigger for pair mode ('when compare_with is given') and an explicit exclusion ('Hiring or candidate-screening audiences are intentionally not supported'), plus cost/speed signals ('Slower than other tools. Costs 5 units.') that steer an agent toward cheaper tools when adequate. It stops short of naming a specific alternative to use instead, so not a 5.

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