Skip to main content
Glama
IzikStar

linkedin-agent-mcp

by IzikStar

Draft a message

linkedin_draft_message

Draft a LinkedIn message to a specific recipient and save it for review before manual sending; does not send messages.

Instructions

[PREPARE - changes local state only; performs NO external action] Stores a DRAFT LinkedIn message (max 2000 chars) to a recipient for the user to review. Nothing is sent. Draft only when the user asked for a message to a specific person; never because a recruiter was merely found. This version cannot send messages: show the draft so the user can send it manually.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageYes
recipientUrlYesRecipient's profile URL, e.g. https://www.linkedin.com/in/jane-doe/. Must be an https://www.linkedin.com URL.
recipientNameYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
messageYes
nextStepYes
recipientYes
recipientUrlYes
executionAvailableYesFalse when this version cannot execute the action; the user must do it manually.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare generic hints (readOnlyHint=false, destructiveHint=false, openWorldHint=false); the description adds the substantive behavior: changes local state only, nothing is transmitted, and the tool cannot send at all. It also states the 2000-char cap and that the draft must be surfaced to the user. No contradiction with the annotations, since writing a local draft is consistent with readOnlyHint=false.

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?

Front-loaded with the bracketed safety tag, then purpose, then usage rules, then workflow instruction. Every clause earns its place; no filler.

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?

With an output schema present, return values need no explanation; the description covers the safety profile, recipient/length constraints, and the user-review workflow an agent needs to invoke this correctly. No material gap remains for a 3-param local-state tool.

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 33% (only recipientUrl documented in the schema). The description restates the 2000-char message limit but adds no meaning for recipientName or recipientUrl beyond the schema, so it only partially compensates for the coverage gap. Baseline 3 for a low-coverage 3-param tool.

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+resource ('Stores a DRAFT LinkedIn message') with an explicit [PREPARE] tag and the crucial scope limit 'performs NO external action; Nothing is sent'. It clearly distinguishes itself from send/action siblings and from the found-recruiter case.

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?

Gives an explicit when-to-use condition ('only when the user asked for a message to a specific person') and an explicit when-not ('never because a recruiter was merely found'), plus the follow-up workflow ('show the draft so the user can send it manually'). Nothing is left to inference.

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