Skip to main content
Glama

Facebook / Messenger: Accept message request

facebook_accept_message_request
Destructive

Accept the selected message request in its original inbox. External action: preserve explicit user approval. Never retry after an uncertain failure; inspect current state first.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "inbox_id": "<inbox_id>",
      "chat_id": "<chat_id>"
    },
    "name": "facebook_accept_message_request"
  }
}

Input Schema

NameRequiredDescriptionDefault
chat_idYesExact chat.id from facebook_list_inbox_chats. Preserve PAGE_<page_id>_<thread> for Page replies; never strip the Page prefix or substitute a user ID.
inbox_idYesExact inbox.id from facebook_list_inboxes, including PAGE_<page_id>_INBOX for a selected Page. Not a Page profile_id or connection account_id.
account_idNoOwned Facebook unipile_account_id from list_connected_accounts. Not a Facebook person or Page ID. Required when several Facebook accounts exist.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already flag destructive=true, idempotentHint=false and openWorldHint=true; the description adds genuinely new behavioral context beyond them — that user approval must be preserved and that an uncertain failure must be resolved by state inspection rather than retry. It does not say whether the acceptance can be undone or what changes post-acceptance, which keeps it at 4.

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?

Three short sentences with the core action front-loaded and total absence of filler. The 'External action:' label is slightly jargon-y but still efficiently signals the consent requirement.

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 destructive, non-idempotent mutation with no output schema and fully documented parameters, the description covers the two things an agent most needs: consent gating and non-retry semantics. Missing only post-state information (what happens to the thread after acceptance, whether it is reversible).

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 description coverage is 100% and the per-parameter text is already detailed (exact chat.id format, PAGE_<page_id>_INBOX, account_id disambiguation rules). The description adds no parameter-level meaning of its own, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (accept) and resource (a message request) plus the scope constraint (in its original inbox), which separates it from facebook_accept_friend_request and from listing tools like facebook_list_inbox_chats. It never explicitly names a sibling to contrast with, so it stops short of a 5.

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?

'External action: preserve explicit user approval' establishes the precondition for calling it, and 'never retry after an uncertain failure; inspect current state first' gives clear failure-path guidance. It does not tell the agent where to obtain inbox_id/chat_id (e.g., facebook_list_inboxes), so routing to prerequisites is left implicit.

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.