Skip to main content
Glama

Red by Big Red Cloud

Send Sales Invoice Email

brc_send_sales_invoice_email
Destructive

Sends a sales-invoice email to the customer address or an explicit recipient override. An unconfirmed call returns an email preview; confirmSend applies the send. Requires a valid routeToken issued for the matching action workflow. The token remains valid through lookup, preview and the permitted transaction. Placeholder tokens are invalid. A routeToken does not bypass preview or explicit-confirmation requirements.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sendModeNoHow to handle multiple recipients. Use separate only when the user explicitly asks to send separate individual emails.
toAddressNoOptional single recipient override. If omitted or empty, BRC uses the customer's email address.
routeTokenYesOpaque routeToken from brc_route_request for this action workflow. Required for transactional tools. Routing permission only — does not replace preview-before-posting or confirmWrite.
companyNameYesCompany context name, for example YOUR-COMPANY-NAME.
confirmSendNoMust be true only after the user has reviewed the email preview and explicitly confirmed sending.
fromAddressNoOptional sender address override.
messageBodyNoOptional custom email message body.
toAddressesNoOptional list of recipients. If more than one is provided, ask the user whether to send one email with BCC or separate individual emails.
bccAddressesNoOptional BCC email addresses. Only use if the user explicitly provides BCC addresses or chooses one email with BCC.
connectionRefNoOpaque Red connection reference returned by brc_confirm_company_connection. Pass this exact value on every later tool call when the MCP client rotates session ids (for example Vibe/Mistral). Keep reusing the same connectionRef after successful tool calls — do not start a new connection because a lookup returned empty or partial data. It is not an API key and does not contain credentials.
salesInvoiceIdYesBRC field: salesInvoiceId.

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=true), the description explains the non-destructive preview step and the explicit confirmation requirement. It also discloses routeToken validity, rejects placeholder tokens, and clarifies that the token does not bypass preview/confirmation, which meaningfully informs an agent's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, with the core action stated first. Each subsequent sentence adds distinct operational information about preview, confirmation, routeToken validity, and placeholder tokens, without redundancy or filler.

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

Completeness5/5

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

For an 11-parameter transactional action with no output schema, the description covers the essential workflow: preview first, explicit confirmation, required routeToken, and token restrictions. Combined with the rich per-parameter schema descriptions, an agent has enough context to call the tool correctly and safely.

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 100%, so the schema already documents all 11 parameters. The description adds real semantic value by explaining how confirmSend switches from preview to send, how toAddress acts as an 'explicit recipient override,' and how routeToken relates to the workflow.

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?

The description opens with a specific verb and resource: 'Sends a sales-invoice email.' It also distinguishes the receiver behavior and references the preview/confirm workflow, making it easy to tell apart from sibling email tools like brc_send_quote_email or brc_send_email_statement.

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?

The description gives clear operational context: an unconfirmed call produces a preview, confirmSend is required to actually send, and a valid routeToken is a prerequisite. It does not explicitly name alternatives or state when not to use this tool, but the intended usage is strongly implied and actionable.

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.

TDQS

B3.2/5.0
Disambiguation4/5

Most tools have a clear single resource-and-action focus, and the systematic naming helps an agent separate create/get/update/delete/list operations. The main confusion risks are the help/search cluster (red_help, find_help_resources, get_help_resource_details) and the payment/cash-payment/batch-payment variants, which require careful reading of the descriptions to avoid misselection.

Naming Consistency4/5

The brc_ prefix with snake_case verb_noun naming is used consistently across the vast majority of tools, e.g. brc_list_customers, brc_create_sales_invoice, brc_delete_purchase. A few noun-style names like brc_company_readiness_check, brc_grouped_nominal_accounts_report, and brc_red_help break the pattern, but these are minor deviations.

Tool Count1/5

159 tools is an extreme count for an MCP server, well beyond the 50+ threshold described as an extreme mismatch. While the accounting domain is broad, the surface is inflated by batch variants, generated-reference variants, and without-dormant list variants that could be consolidated.

Completeness4/5

Core accounting entities have strong lifecycle coverage: customers, suppliers, products, sales reps, bank accounts, quotes, sales invoices/entries/credit notes, purchases, payments, cash receipts, accruals, prepayments, and nominal journal batches all support relevant CRUD and batch operations. Minor gaps include the quote update being limited to the reference only, no update/create tools for VAT categories or company settings, and email sending being limited to quotes, invoices, and statements.