Skip to main content
Glama
facebook-mcp

facebook-mcp

by IvanBBaev

Save reply template

facebook_save_reply
Idempotent

Create or update a local saved reply template that an operator approves once so an agent can send it verbatim; existing IDs require overwrite.

Instructions

Create or update a local saved reply (no Facebook call): a reply template the operator approves once and the agent then sends verbatim. id is a lowercase slug and is derived from the title when omitted; an existing id is refused unless overwrite:true, and an overwrite returns the replaced record. The only placeholder is {{page_name}}, filled from the Page; never put a commenter's or customer's details in a template. Applies immediately.

Input Schema

NameRequiredDescriptionDefault
idNoReply id; derived from the title when omitted.
tagsNo
textYesThe reply text (1–2000 characters), sent verbatim. Placeholders: {{page_name}}.
titleYes
profileNoPage profile key (e.g. "brand-a") or a raw Page ID. Omitted ⇒ the default Page (FB_PAGE_ID).
overwriteNoReplace an existing reply with the same id. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.8.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare the safety profile (readOnly=false, destructive=false, openWorld=false), and the description adds real behavioral context on top: the operation is purely local with no Facebook API call, an existing id is refused rather than silently clobbered, overwrite returns the replaced record, and changes apply immediately. It also carries a concrete safety rule about never embedding customer details, which is exactly the kind of operator-facing constraint annotations cannot express.

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?

The core fact — local create/update, no Facebook call — is front-loaded in the first clause, and every subsequent sentence carries a rule the agent would otherwise have to guess. It is semicolon-dense and the customer-details caution slightly stretches the sentence budget, but there is no 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?

For a 6-parameter mutation with no output schema, the description covers the risky parts: id collision behavior, overwrite return value, placeholder constraints, and immediacy of effect. It leaves the normal create return value and the tags/profile scoping unstated, which keeps it short of fully self-contained.

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 67%, and the description compensates by explaining id derivation from title, the refusal-unless-overwrite semantics, and the placeholder contract for text ({{page_name}} only, filled from the Page). It adds nothing about tags or the title length bound, but those are minor against the schema's own descriptions for id, text, profile, and overwrite.

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 ('Create or update a local saved reply') and immediately scopes it as local ('no Facebook call'), which separates it from facebook_list_saved_replies and facebook_delete_saved_reply. The parenthetical definition of what a saved reply is ('a reply template the operator approves once and the agent then sends verbatim') makes the resource unambiguous 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 workflow context in which the artifact is used (operator approves once, agent sends verbatim) and the overwrite condition that governs update-vs-create. However, it never explicitly says when to prefer this over siblings or when to edit an existing template instead of creating a new id, so there are no stated exclusions.

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