Skip to main content
Glama

excalibur_reply_to_conversation

Post your reply into one of your leads' threads on X (conversation_id is the row id from list_conversations). text is up to 280 characters; markdown inline formatting is converted the same way post_tweet does it. Posted with your own X token as a reply to the lead's post; on X's confirmation the lead is marked engaged and remembers the reply. A refused post changes nothing and refunds the fare. Returns {reply:{tweet_id,url}, conversation}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
npubNoRequired. Your Nostr public key (npub1...) for credit billing.
textYes
dpop_tokenNo
conversation_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

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 burden and does well: it discloses the X token used to post, the side effect of marking the lead 'engaged' and remembering the reply on confirmation, and that a refused post is a no-op that refunds the fare. It omits billing/rate-limit specifics but covers both success and failure behavior concretely.

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?

A tight, front-loaded paragraph that leads with the action and folds in constraints and side effects without padding. The term 'fare' for credit cost is mild jargon, but no sentence is wasted.

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 the brief return-value mention is a bonus rather than a necessity. For a mutation tool with no annotations, the description adequately covers auth, side effects, and failure behavior, leaving only minor gaps like billing confirmation.

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 only 25%, but the description compensates: conversation_id is defined as the row id from list_conversations and text is bounded at 280 chars with markdown converted like post_tweet. dpop_token and the oddly-labeled npub remain undocumented, but the two meaningful parameters are clear.

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 ('post your reply into one of your leads' threads on X') and ties it to the conversation_id sourced from list_conversations, distinguishing it from excalibur_post_tweet and excalibur_create_post. An agent can identify the exact action 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 Guidelines4/5

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

Explains the context (replying into leads' threads) and points to list_conversations as the source of conversation_id, and post_tweet as the formatting reference. It stops short of an explicit when-to-use-this-vs-alternative or when-not statement, so it is clear but not fully routing.

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.