Skip to main content
Glama

add-transaction-comment

Post a comment on a transaction as the signed-in user, starting the transaction's conversation if it has none. Every call adds a new comment, so don't repeat a call that succeeded. Returns conversation, totalCount, addedMessage when the conversation already existed, and messages: the latest 20 comments, oldest first, which limit, createdAfter and createdBefore can change. Requires the company:documents:write scope; writes are rate-limited per user. Use get-transaction-conversation to read without posting.

Input Schema

NameRequiredDescriptionDefault
textYesThe comment to post, 1 to 4,000 characters.
limitNoMost comments to return after posting, 1 to 100 (default 20).
companyIdYesCompany ID, as returned by list-companies
createdAfterNoISO 8601 date-time, such as 2026-10-21T09:00:00Z. Returns the earliest comments created after it instead of the latest. Cannot be combined with createdBefore.
createdBeforeNoISO 8601 date-time. Returns only comments created before it, which leaves out the one just posted. Cannot be combined with createdAfter.
transactionIdYesNumeric acDocumentId of the transaction, as returned by search-transactions (transaction.acDocument.id in Websome)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / properties / companyId / description
      Previous value: -"Company ID"New value: +"Company ID, as returned by list-companies"
    • changedInput schema / properties / createdAfter / description
      Previous value: -"Only comments created after this ISO timestamp"New value: +"ISO 8601 date-time, such as 2026-10-21T09:00:00Z. Returns the earliest comments created after it instead of the latest. Cannot be combined with createdBefore."
    • changedInput schema / properties / createdBefore / description
      Previous value: -"Only comments created before this ISO timestamp"New value: +"ISO 8601 date-time. Returns only comments created before it, which leaves out the one just posted. Cannot be combined with createdAfter."
    • changedInput schema / properties / limit / description
      Previous value: -"Max comments to return"New value: +"Most comments to return after posting, 1 to 100 (default 20)."
    • changedInput schema / properties / text / description
      Previous value: -"Comment text to post"New value: +"The comment to post, 1 to 4,000 characters."
    • changedInput schema / properties / transactionId / description
      Previous value: -"Transaction accounting document ID from Websome/Roberto transaction.acDocument.id"New value: +"Numeric acDocumentId of the transaction, as returned by search-transactions (transaction.acDocument.id in Websome)"
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the basic safety hints, the description adds crucial operational constraints: it requires the 'company:documents:write' scope and warns that writes are 'rate-limited per user.' It also fully discloses the complex output structure.

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?

While detailed, the structure is highly efficient. Every sentence provides operational value, specifically addressing scoping, limits, and alternative use cases, making it information-dense without being redundant.

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?

The definition is complete for an advanced write tool. It covers input validation semantics, required permissions, operational limits (rate limits), and expected output behavior and structure, leaving no critical gap for the agent.

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?

Since schema coverage is 100%, the baseline is high. The description adds significant meaning by clarifying the tool's function (starting a conversation vs. continuing one) and detailing the non-obvious behavior of the return set.

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 tool clearly states its purpose: 'Post a comment on a transaction.' It distinguishes itself by specifying that it initiates a conversation if none exists, and it is clearly differentiated from get-transaction-conversation.

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?

It provides critical usage advice: the idempotent warning ('don't repeat a call that succeeded') and explicit instruction on the correct sibling tool to use for reading ('Use get-transaction-conversation to read without posting').

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