Skip to main content
Glama
gray-wilbee

fub-mcp

by gray-wilbee

post_inbox_apps_system_message

Add a system confirmation message to an Inbox App conversation using FUB CRM. Specify the conversation, message body, and optional owner/person details to update or create the conversation.

Instructions

Adds a system confirmation message to an existing or new Inbox App conversation. (POST /inboxApps/{inboxAppId}/systemMessage)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNoThe system confirmation message type.
ownerNoThe owner of the conversation. Can be a FUB User or FUB Team Inbox. Required on the first message in a conversation.
personNoThe person associated with the conversation. A Person ID is preferred, but name, email, and/or phone are acceptable if the person does not exist in FUB yet. Required on the first message in a conversation.
messageYesA plaintext message body.
extraBodyNoExtra raw JSON body fields not explicitly listed above — e.g. custom.* fields when creating/updating people or deals. Keys and values are sent as-is.
extraQueryNoExtra raw query parameters not explicitly listed above — e.g. FUB custom field filters like custom.ClosingDate on /people or /deals. Keys and values are sent as-is.
inboxAppIdYes
externalMessageIdYesA unique identifier that references this message.
externalConversationIdYesA unique identifier that references this conversation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It reveals that the tool 'Adds' (a write operation) and works on 'existing or new' conversations, but it doesn't disclose idempotency behavior implied by externalMessageId, what is created when the conversation is new, permission/auth requirements, or error behavior. For a mutation endpoint with zero annotation coverage, this is a thin disclosure.

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 description is a single front-loaded sentence followed by the HTTP endpoint hint, with zero filler. It is efficient and immediately states the core action, though the endpoint hint is somewhat redundant given the tool name.

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?

This is a 9-parameter tool with 4 required params, nested objects, no output schema, and no annotations — fairly complex. The description doesn't mention that owner/person are only required on the first message, doesn't address return value or what happens on a brand-new conversation, and doesn't position the tool relative to the many sibling inbox-app endpoints. Too much context is missing for correct invocation.

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 89%, so the schema already documents required params, the type enum, and the nested owner/person semantics well, establishing a baseline of 3. The description itself adds no parameter-level detail, but it doesn't need to compensate since the structured schema carries that weight.

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?

The description states a specific verb ('Adds'), resource ('system confirmation message'), and target ('Inbox App conversation'), which is clear on its own. The phrase 'system confirmation message' semantically distinguishes it from siblings like post_inbox_apps_message and post_inbox_apps_note, but it never explicitly names those alternatives, so it stops short of full sibling differentiation.

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

Usage Guidelines2/5

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

The description gives no guidance on when to choose this tool over post_inbox_apps_message, put_inbox_apps_message, or post_inbox_apps_note, which are all present in the sibling list. 'System confirmation message' implies a distinct use case, but no when-to-use, when-not-to-use, or alternative routing is provided, leaving the agent to infer the difference.

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

Deploy Server

Other Tools