Skip to main content
Glama

finance_ap_invoice_intake

Destructive

Extract a structured payable from an AP invoice (PDF, image, or email), including vendor, line items, totals, GL coding, due date, payment terms, and anomalies like duplicates, off-contract, or amount drift.

Instructions

Ingest an accounts-payable invoice (PDF, image, or email body) and extract a structured payable: vendor, line items, totals, GL coding, due date, payment terms, and any anomalies (duplicate, off-contract, amount drift). Args: message: Free-text objective for the action. invoice_url: Signed URL or platform artifact URI for the invoice file. invoice_text: Raw invoice text (alternative to invoice_url). expected_vendor: Optional vendor name to validate against.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
messageNo
invoice_urlNo
invoice_textNo
expected_vendorNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior2/5

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

The description states 'ingest' and 'extract' but does not disclose that the tool may write a payable record or have destructive side effects, despite the destructiveHint annotation. The potential impact of invoking this tool is not made clear to the agent.

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 well-structured, with a clear opening statement followed by a concise parameter list. Every sentence adds relevant information and there is no redundant or filler content.

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

Completeness3/5

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

The description covers the tool's main function and parameter meanings, but it omits side effects, usage guidance relative to sibling tools, and any note about the destructiveHint annotation. Since an output schema exists, the lack of return-value detail is acceptable, but the missing side-effect context leaves some incompleteness.

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?

The description provides meaningful explanations for all four parameters, including the distinction between invoice_url and invoice_text and the validation purpose of expected_vendor. This adds useful semantics beyond the bare schema, though it does not specify constraints such as mutual exclusivity or requiredness.

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 tool's primary action: ingest an accounts-payable invoice and extract a structured payable. It enumerates the specific data elements extracted (vendor, line items, totals, GL coding, due date, payment terms, anomalies), making the purpose unambiguous.

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 does not explain when to use this tool versus alternative invoice/bill tools such as xero_intake_bill. It also does not mention conditions under which invoice_url versus invoice_text should be preferred, leaving usage context largely implicit.

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