Skip to main content
Glama

Professional: write as your person's professional self

pro_message

Write as their professional self: answer a professional conversation (conversationId) or someone's professional profile (to: @handle). Their level decides: refused, a draft they send, or sent now. The reader always sees "via ". Follow their rules (pro_profile); never salary or private details.

Input Schema

NameRequiredDescriptionDefault
toNoOr: the @handle of someone whose professional profile is on.
modeNo"draft" = prepare only, even when you may send.
textYesThe message, as you'd write it for the person.
conversationIdNoAnswer this professional conversation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedInput schema / additionalProperties
      Removed value: -false
    • changedOutput schema / (root)
      Previous value: -{
      -  "$schema": "http://json-schema.org/draft-07/schema#",
      -  "additionalProperties": false,
      -  "properties": {
      -    "conversationId": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "draftId": {
      -      "type": "string"
      -    },
      -    "messageId": {
      -      "type": "string"
      -    },
      -    "note": {
      -      "type": "string"
      -    },
      -    "status": {
      -      "enum": [
      -        "sent",
      -        "draft"
      -      ],
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "status",
      -    "conversationId",
      -    "note"
      -  ],
      -  "type": "object"
      -}New value: +null
  2. Added

TDQS

A3.9/5.0
Behavior4/5

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

Beyond the annotations (which only say non-read-only and non-destructive), it discloses the key behavioral traits: outcomes can be refused or downgraded to a draft, the reader always sees a 'via <your app>' attribution, and content restrictions apply. It still doesn't say what a refusal response looks like or whether a draft becomes visible to the person.

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

Conciseness4/5

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

Dense and front-loaded: the write-as-professional framing comes first, then targets, then outcome semantics, then constraints. The parenthetical shorthand ('refused, a draft they send, or sent now') is compact but borders on cryptic without rereading.

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?

For a mutation tool with no output schema, it covers the essentials an agent needs: target selection, outcome variability, attribution, rule source, and content prohibitions. Missing only the shape of a refusal or draft result, which the agent would otherwise have to discover at call time.

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 four parameters. The description adds modest meaning by clarifying that `to` targets a professional profile and `conversationId` targets a conversation, and implies they are alternatives, but it never mentions the `mode` enum or how it interacts with the person's level.

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?

States a specific verb and persona ('Write as their professional self') and names two distinct targets: a conversation (conversationId) or a professional profile (to: @handle). It implicitly separates this from personal messaging siblings like message_member, but never names an alternative tool directly.

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?

Explains the delegation model clearly: the person's 'level' determines whether the request is refused, produced as a draft, or sent immediately, and it points to pro_profile for their rules. It gives a firm exclusion ('never salary or private details') but never explicitly says when to use message_member or propose_message instead.

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.