Skip to main content
Glama

Compose the mentoring brief: the artifact + the authoritative price

compose_mentoring_brief
Read-onlyIdempotent

The accumulator — call after every change. Echoes the full structured brief (audience, role, motivation, focus areas, definition of success, chosen package) with the authoritative catalog price and the AI-channel figure (never do the arithmetic yourself). For company deals it states whether the free-sessions concession applies. Read the brief back to the visitor; when they explicitly agree on the price, call send_mentoring_offer with price_agreed true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contextNoOptional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer.
audienceNoRequired. One of: individual, company.
offer_idNoRequired. One of: single-session, first-quarter, monthly, mentor-in-residence, mentor-in-residence-2day.
role_bandNoRequired.
motivationNoRequired.
visibilityNoVisibility answer id from get_mentoring_options visibility_question (consent capture — 'private' is a first-class answer)
leaders_countNoCompany deals: how many leaders are being sponsored
focus_area_idsNoRequired. Agreed focus area ids (visitor can pick any from the taxonomy)
company_contextNoCompany deals: company name + anything relevant
success_definitionNoRequired. The visitor's definition of success, in their own words

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / offer_id / description
      Previous value: -"Required. One of: single-session, first-quarter, two-quarters, monthly, mentor-in-residence."New value: +"Required. One of: single-session, first-quarter, monthly, mentor-in-residence, mentor-in-residence-2day."
  2. Changed17 schema fields changed
    • addedInput schema / properties / audience / description
      Added value: +"Required. One of: individual, company."
    • removedInput schema / properties / audience / enum
      Removed value: -[
      -  "individual",
      -  "company"
      -]
    • changedInput schema / properties / context / description
      Previous value: -"Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\""New value: +"Optional. A short description of your goal and why you are calling this tool. Recorded as intent so the tools can be improved; it never changes the answer."
    • addedInput schema / properties / focus_area_ids / anyOf
      Added value: +[
      +  {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • changedInput schema / properties / focus_area_ids / description
      Previous value: -"Agreed focus area ids (visitor can pick any from the taxonomy)"New value: +"Required. Agreed focus area ids (visitor can pick any from the taxonomy)"
    • removedInput schema / properties / focus_area_ids / items
      Removed value: -{
      -  "type": "string"
      -}
    • removedInput schema / properties / focus_area_ids / type
      Removed value: -"array"
    • addedInput schema / properties / leaders_count / anyOf
      Added value: +[
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / leaders_count / maximum
      Removed value: -9007199254740991
    • removedInput schema / properties / leaders_count / minimum
      Removed value: --9007199254740991
    • removedInput schema / properties / leaders_count / type
      Removed value: -"integer"
    • addedInput schema / properties / motivation / description
      Added value: +"Required."
    • addedInput schema / properties / offer_id / description
      Added value: +"Required. One of: single-session, first-quarter, two-quarters, monthly, mentor-in-residence."
    • removedInput schema / properties / offer_id / enum
      Removed value: -[
      -  "single-session",
      -  "first-quarter",
      -  "two-quarters",
      -  "monthly",
      -  "mentor-in-residence"
      -]
    • addedInput schema / properties / role_band / description
      Added value: +"Required."
    • changedInput schema / properties / success_definition / description
      Previous value: -"The visitor's definition of success, in their own words"New value: +"Required. The visitor's definition of success, in their own words"
    • removedInput schema / required
      Removed value: -[
      -  "audience",
      -  "role_band",
      -  "motivation",
      -  "focus_area_ids",
      -  "success_definition",
      -  "offer_id",
      -  "context"
      -]
  3. Changed1 schema field changed
    • changedInput schema / properties / offer_id / enum
      Previous value: -[
      -  "single-session",
      -  "first-quarter",
      -  "monthly",
      -  "mentor-in-residence"
      -]New value: +[
      +  "single-session",
      +  "first-quarter",
      +  "two-quarters",
      +  "monthly",
      +  "mentor-in-residence"
      +]
  4. Changed2 schema fields changed
    • addedInput schema / properties / context
      Added value: +{
      +  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "audience",
      -  "role_band",
      -  "motivation",
      -  "focus_area_ids",
      -  "success_definition",
      -  "offer_id"
      -]New value: +[
      +  "audience",
      +  "role_band",
      +  "motivation",
      +  "focus_area_ids",
      +  "success_definition",
      +  "offer_id",
      +  "context"
      +]
  5. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only cover the safety profile (readOnly/idempotent/non-destructive); the description adds real behavioral context on top: the price is authoritative and the agent must never compute it, the AI-channel figure is supplied, and the free-sessions concession is conditionally reported for company deals. None of this is derivable from the structured fields.

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?

Four tight sentences, front-loaded with the tool's role as accumulator, then what it returns, then the conditional concession logic, then the handoff rule. No filler and no restatement of the title.

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

Completeness5/5

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

There is no output schema, so the description carries the return burden and does so — it names exactly what is echoed back and what price data accompanies it. Combined with the safety annotations and full schema coverage, an agent has everything needed to call and consume it correctly.

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 coverage is 100%, so the schema already documents all ten parameters including the enumerated answer ids. The description only restates the field list it echoes; it adds no syntax, format, or default guidance beyond what the schema provides, so the 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 and resource ('compose/echo the full structured brief') and enumerates the fields it carries plus the authoritative price. It also distinguishes itself from the sibling it hands off to (send_mentoring_offer) and from the option-listing tools, so an agent can place it without opening the schema.

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

Usage Guidelines5/5

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

Explicit timing ('call after every change') and an explicit downstream condition ('when they explicitly agree on the price, call send_mentoring_offer with price_agreed true'). It also gives the conversational protocol (read the brief back to the visitor) that gates the next call.

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.