Skip to main content
Glama
JackJProsp

Prosp MCP Server

by JackJProsp

Send Reply

send_reply

Send a reply in an existing conversation after confirm=true, classifying intent to avoid misdirected responses to prospects.

Instructions

Send a reply in an existing conversation. Requires confirm=true.

BEFORE DRAFTING, classify the reply into exactly one of:

INTERESTED wants more, asks about the offer TIMING interested, not now. Capture the date they named. OBJECTION price, fit, incumbent, capacity WRONG_PERSON not their remit. Ask who owns it. NOT_INTERESTED clear no. Thank them, stop, never pitch again. AUTO_REPLY out of office. Reschedule to their return date. ESCALATE anything below 8 confidence

Below 8 confidence, escalate to a human rather than guessing. Sarcasm, brevity and politeness all read the same in text, and a misread reply going out under someone's name is theirs to apologise for.

Never send to NOT_INTERESTED. A human closes that loop.

MATCH THEIR REGISTER. Reply within roughly 20% of their message length. A three-line reply to a six-word message reads as eager; a six-word reply to three paragraphs reads as dismissive.

ONE QUESTION ONLY. Two gets you an answer to the easier one. Three gets you nothing, because now it is work.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
confirmNo
messageYes
conversation_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does disclose meaningful traits: the confirm gate, a hard prohibition on replying to NOT_INTERESTED, and an escalation path for low-confidence classifications. It stops short of technical traits such as authentication requirements, irreversibility of a sent reply, or any rate limits, which is the main remaining gap.

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?

Front-loads the action and the confirm prerequisite before the taxonomy, and the classification block is formatted for scanning. It is markedly longer than a 3-param tool strictly needs, and some process policy (the full category list) sits at the edge of what belongs in a tool description, but no sentence is pure 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 the decision surface an agent needs: classification, escalation threshold, and the confirm gate. What is missing is operational context around permissions and state effects on the conversation.

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 0%, so the description must compensate and only partially does. 'Requires confirm=true' directly documents that parameter, and the register/length/one-question rules indirectly constrain what belongs in `message`, but `conversation_id` receives no explanation of format or provenance.

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?

Opens with a specific verb and resource (send a reply) and names the scope constraint (in an existing conversation). The agent can distinguish it from siblings like get_conversation, get_inbox, and mark_read without opening any 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?

Provides explicit when-to-use and when-not-to-use rules: 'Never send to NOT_INTERESTED' and 'Below 8 confidence, escalate to a human rather than guessing.' It also names the confirm=true prerequisite, so both the routing decision and the gating condition are stated rather than inferred.

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