Skip to main content
Glama

Email a document

send_document_email

Send an already issued invoice or proforma to the client via email with attached PDF. Use when the user requests to email or re-email a document.

Instructions

Send an invoice or proforma that already exists to the client by email, with the PDF attached by SmartBill. Use this when the user asks to send or resend a document.

Omit to, subject or bodyText to use the client's stored address and the templates configured in the SmartBill account — usually the right choice. Pass plain text for the subject and body; encoding is handled for you.

To email a document at the moment it is issued instead, set sendEmail: true on create_invoice or create_estimate rather than calling this afterwards. This sends real mail to a customer: confirm the recipient with the user first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ccNoCarbon copy address.
toNoRecipient address.
bccNoBlind carbon copy address.
numberYesDocument number.
subjectNoPlain text; encoded for the API automatically.
bodyTextNoPlain text; encoded for the API automatically.
seriesNameNoDocument series. Falls back to the configured default.
documentTypeYesWhich document to send.
companyVatCodeNoIssuing company CIF. Falls back to SMARTBILL_VAT_CODE.
Behavior5/5

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

Discloses that the tool sends real email and instructs to 'confirm the recipient with the user first.' Annotations only indicate non-readonly and non-destructive, but the description adds crucial behavioral warning about irreversible action.

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 concise and well-structured: starts with core purpose, then usage guidelines, parameter tips, and an alternative. Every sentence adds value with no redundancy.

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?

Covers most aspects thoroughly, but lacks any mention of return values or success/failure responses. Given no output schema, a brief note on what the tool returns (e.g., confirmation) would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds meaning beyond the schema by explaining that omitting 'to', 'subject', or 'bodyText' uses defaults, and that plain text is acceptable with encoding handled automatically. Schema coverage is 100%, but the description enriches understanding with practical usage guidance.

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 clearly states the action: 'Send an invoice or proforma that already exists to the client by email, with the PDF attached by SmartBill.' It specifies the resource (existing document) and verb (send via email), and distinguishes from sibling tools like create_invoice which issue documents.

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

Usage Guidelines5/5

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

Explicitly tells when to use ('when the user asks to send or resend a document') and when not to: 'To email a document at the moment it is issued instead, set sendEmail: true on create_invoice or create_estimate rather than calling this afterwards.' This provides clear alternatives and context.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bogdanripa/smartbill-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server