Skip to main content
Glama

Taplio for LinkedIn

Commit comment draft

commit_comment_draft
Destructive

Commit a comment draft, which SCHEDULES the comment to be posted on LinkedIn under the user's name, on someone else's post. The comment is NOT live when this call returns: Taplio queues it and posts it from the user's account, typically within minutes, but hours later when the user is outside their posting window or has hit their hourly comment limit. The response comes back with status pending and scheduled_for, the time it is due to go out: quote that time to the user, and never tell them the comment is already posted. Confirm the outcome afterwards with get_comment_draft: its status turns to posted with a comment_urn once the comment is live, or to failed or cancelled with a failure_reason. cancel_comment_draft can stop it before it is sent; once posted it is irreversible. Unsafe to retry: committing a draft that was already committed is rejected. The same one-comment rule applies: a commit on a post this account already commented on (or a comment it already replied to) is refused with comment_commit_blocked and code COMMENT_ALREADY_POSTED, and a queued comment that turns out to be a duplicate when it is due is cancelled with that code instead of posted.

Input Schema

NameRequiredDescriptionDefault
idYesThe id of the comment draft to schedule for posting (from list_comment_drafts).

Output Schema

NameRequiredDescriptionDefault
idYes
statusYes
contentYes
post_urnYes
comment_idNo
created_atYes
updated_atYes
scheduled_forYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations (destructive, non-idempotent, open-world) by explaining that the call only queues the comment, that it returns status pending with scheduled_for, that posting can be delayed by posting windows or hourly limits, and that delivery is irreversible once live. It also documents the comment_commit_blocked / COMMENT_ALREADY_POSTED failure paths, which no annotation could convey. Nothing here contradicts destructiveHint=true or idempotentHint=false; it reinforces both.

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-loaded with the crucial 'this only schedules, it is NOT live' correction, then layered with follow-up, cancellation, retry, and error semantics. It is dense and long, but each sentence carries distinct operational information; the error-code sentences in the tail could be tightened.

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?

Covers everything an agent needs despite an output schema being present: the queued semantics, the fields to quote back (scheduled_for), the follow-up verification path, the irreversibility boundary, retry safety, and the duplicate-comment rejection codes. Complete for a non-idempotent, destructive, open-world mutation.

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

Parameters4/5

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

Schema coverage is 100% and the single parameter is already documented, so the baseline is 3. The description adds only mild value by framing the id as a draft to be scheduled rather than an already-posted comment, but the bulk of parameter meaning is still carried by the schema.

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 (commit a comment draft) and immediately clarifies the actual effect: it schedules a comment to be posted on LinkedIn under the user's name on someone else's post. That distinguishes it from the neighboring draft/schedule/publish siblings without the agent needing to open 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?

Explicitly names the follow-up and alternative tools and the conditions that select them: get_comment_draft to confirm the outcome, cancel_comment_draft to stop it before sending, and the fact that it is unsafe to retry because a re-commit is rejected. When-to-use and when-not-to-act guidance is fully covered.

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.