Skip to main content
Glama

Unified Social & Messaging Inbox

inbox_messages

Manage the unified cross-network social and messaging inbox across LinkedIn, X DMs, Instagram, Threads, Telegram, and WhatsApp. Supports listing conversation threads (list_threads), reading full message history in a thread (read_thread), dispatching outbound replies (reply), and marking threads as read (mark_read). Returns normalized conversation objects with sender handles, timestamps, direction (inbound/outbound), and delivery confirmation.

Input Schema

NameRequiredDescriptionDefault
nameNoWorkflow name when `action` is 'create_workflow'.
edgesNoGraph directed edges (`{ from, to, condition }`) connecting workflow nodes.
nodesNoGraph nodes array (`trigger`, `send_message`, `wait_for_reply`, `condition`, `hubspot_upsert_contact`, `handoff`, `end`) when creating an inbox workflow.
actionYesInbox operation: 'list_threads' returns recent DM conversations, 'read_thread' fetches all messages in `threadId`, 'reply' sends a direct message response, and 'mark_read' clears unread flags.
platformNoOptional social or messaging platform filter (e.g. 'linkedin', 'x', 'instagram', 'telegram', 'whatsapp').
threadIdNoConversation thread identifier (`thr_...`). Required when `action` is 'reply' and optional target for 'read_thread' or 'mark_read'.
profileIdNoBrand profile identifier (`prof_...`) whose unified inbox should be queried or replied from.prof_allometrik
replyBodyNoText body of the outbound direct message reply when `action` is 'reply'. Required for 'reply'.
unreadOnlyNoWhen true, filters `list_threads` to return only unread inbound conversations requiring agent or human attention.
workflowIdNoWorkflow identifier (`wf_...`) when getting, activating, pausing, triggering, or deleting an inbox automation workflow graph.
cooldownHoursNoPer-contact cooldown window in hours before re-triggering the workflow.
triggerPayloadNoSimulated or live event payload (`{ contact, message, replyText, event }`) when `action` is 'trigger_workflow'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "list_threads",
      -  "read_thread",
      -  "reply",
      -  "mark_read"
      -]New value: +[
      +  "list_threads",
      +  "read_thread",
      +  "reply",
      +  "mark_read",
      +  "create_workflow",
      +  "list_workflows",
      +  "get_workflow",
      +  "activate_workflow",
      +  "pause_workflow",
      +  "trigger_workflow",
      +  "delete_workflow"
      +]
    • addedInput schema / properties / cooldownHours
      Added value: +{
      +  "default": 24,
      +  "description": "Per-contact cooldown window in hours before re-triggering the workflow.",
      +  "type": "number"
      +}
    • addedInput schema / properties / edges
      Added value: +{
      +  "description": "Graph directed edges (`{ from, to, condition }`) connecting workflow nodes.",
      +  "items": {
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / name
      Added value: +{
      +  "description": "Workflow name when `action` is 'create_workflow'.",
      +  "type": "string"
      +}
    • addedInput schema / properties / nodes
      Added value: +{
      +  "description": "Graph nodes array (`trigger`, `send_message`, `wait_for_reply`, `condition`, `hubspot_upsert_contact`, `handoff`, `end`) when creating an inbox workflow.",
      +  "items": {
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / triggerPayload
      Added value: +{
      +  "description": "Simulated or live event payload (`{ contact, message, replyText, event }`) when `action` is 'trigger_workflow'.",
      +  "type": "object"
      +}
    • addedInput schema / properties / workflowId
      Added value: +{
      +  "description": "Workflow identifier (`wf_...`) when getting, activating, pausing, triggering, or deleting an inbox automation workflow graph.",
      +  "type": "string"
      +}
  2. Changed10 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / action / description
      Added value: +"Inbox operation: 'list_threads' returns recent DM conversations, 'read_thread' fetches all messages in `threadId`, 'reply' sends a direct message response, and 'mark_read' clears unread flags."
    • addedInput schema / properties / platform / description
      Added value: +"Optional social or messaging platform filter (e.g. 'linkedin', 'x', 'instagram', 'telegram', 'whatsapp')."
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "x",
      -  "linkedin",
      -  "instagram",
      -  "facebook",
      -  "threads",
      -  "tiktok",
      -  "youtube",
      -  "bluesky",
      -  "mastodon",
      -  "farcaster",
      -  "reddit",
      -  "pinterest",
      -  "google_business",
      -  "telegram",
      -  "discord",
      -  "ghost",
      -  "wordpress",
      -  "webflow"
      -]New value: +[
      +  "x",
      +  "linkedin",
      +  "bluesky",
      +  "instagram",
      +  "facebook",
      +  "threads",
      +  "tiktok",
      +  "youtube",
      +  "reddit",
      +  "pinterest",
      +  "mastodon",
      +  "telegram",
      +  "discord",
      +  "google_business",
      +  "ghost",
      +  "wordpress",
      +  "webflow",
      +  "whatsapp"
      +]
    • addedInput schema / properties / profileId / default
      Added value: +"prof_allometrik"
    • addedInput schema / properties / profileId / description
      Added value: +"Brand profile identifier (`prof_...`) whose unified inbox should be queried or replied from."
    • addedInput schema / properties / replyBody / description
      Added value: +"Text body of the outbound direct message reply when `action` is 'reply'. Required for 'reply'."
    • addedInput schema / properties / threadId / description
      Added value: +"Conversation thread identifier (`thr_...`). Required when `action` is 'reply' and optional target for 'read_thread' or 'mark_read'."
    • addedInput schema / properties / unreadOnly / default
      Added value: +false
    • addedInput schema / properties / unreadOnly / description
      Added value: +"When true, filters `list_threads` to return only unread inbound conversations requiring agent or human attention."
  3. First observed

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnly=false, openWorld=true, idempotent=false, destructive=false, so the safety bar is lower. The description does add real value by describing the return shape (sender handles, timestamps, direction, delivery confirmation). However, it is silent on the mutation surface: delete_workflow is an irreversible operation that the description never discloses, and nothing is said about permission/auth requirements for dispatching replies on each network.

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 sentences, well front-loaded: scope first, operations second, return value last. The platform roll-call in sentence one is somewhat expendable given the `platform` enum already lists them, but overall there is little waste. The brevity is not padding — the problem is coverage, not verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 12 parameters, nested node/edge graph objects, no output schema, and a destructive delete_workflow action, the description covers well under half the capability surface. An agent could invoke this tool believing it only lists and replies to DMs, and be blindsided by workflow-graph semantics (nodes, edges, triggerPayload, cooldownHours) that appear nowhere in the prose.

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%, so the baseline is 3. The description does not add anything beyond the schema for individual parameters — it does not explain the threadId/action coupling, profileId scoping, unreadOnly semantics, or cooldownHours behavior. It also restates only 4 of the 11 `action` values, leaving the workflow-related enum members undiscussed in prose.

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?

Names a specific resource (the unified cross-network inbox) and enumerates the concrete inbox operations it performs, with the six platforms spelled out. It is clear what the inbox half of the tool does, but it never mentions the workflow-automation half (create/get/activate/pause/trigger/delete_workflow) that dominates the action enum, so an agent looking for workflow management would not recognize this tool. No sibling tool is named as an alternative or contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

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

Usage is only implied by the parenthetical action list — the reader must infer that you call list_threads first, then read_thread/reply/mark_read. There are no explicit when-to-use or when-not-to-use conditions, and no routing against siblings such as telecom_messaging or comments_moderate, which plausibly overlap on outbound messaging.

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.

Resources