Skip to main content
Glama

Server Details

Evidence-backed UBL, PDF, and image invoice checks before approval or payment.

Ownership verified
Status
Healthy
Uptime
99.9% over 39 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A3.6/5.0

Scored across 4 tools

Disambiguation4/5

The three paid tools are tiered by page count, but the base tool also differs in functionality (check vs OCR) and format support (UBL XML). The free quote tool explicitly helps select the cheapest tier, reducing confusion, but an agent might still misjudge whether the 10/50-page tools perform the full comparison check.

Naming Consistency4/5

All tools share the `invoice_preflight` prefix in snake_case, with suffixes indicating page limits or quote. The base tool lacks a page-limit suffix, a minor inconsistency, but the pattern is otherwise predictable and readable.

Tool Count5/5

Four tools is well-scoped: three tiered processing options (3, 10, 50 pages) and one free selection helper. Each earns its place, and there is no redundancy or over-proliferation.

Completeness3/5

The server provides comparison check for up to 3 pages and OCR for up to 50 pages, but there is no tool to perform the full comparison check for PDF/image invoices larger than 3 pages. This is a notable gap that could cause agent failures for larger invoices needing preflight validation.

Available Tools

4 tools
invoice_preflightAInspect

Paid invoice check ($0.065 USDC on Base): UBL XML or complete PDF/image invoices up to 3 pages. Compares expected purchase fields and line items; returns evidence, amount checks and match/discrepancy/needs_review. No payment or bookkeeping action is taken.

Agent entry points: risky external action → use Agent Action Gate when a combined action-specific safety assessment is needed; unclear capability/provider → use free /api/discover; constrained comparison between callable alternatives → use paid route_tool; known single capability → call the direct tool; multi-step objective → read the matching workflow recipe and call only relevant steps. Workflows are stateless recipes, not executors; calls are paid separately and are not bundle charged. Agent Action Gate does not approve payment, sign or broadcast transactions, evaluate seller reputation, replace transaction simulation, replace route_tool, or replace human approval.

NameRequiredDescriptionDefault
expectedNo
mime_typeNo
document_urlNo
document_xmlNo
document_base64No

Output Schema

NameRequiredDescription
metaNo
nextNo
errorNo
checksYes
resultNo
statusNo
invoiceYes
paymentNo
agent_uxNo
decisionYes
evidenceYes
warningsYes
source_sha256Yes
pages_processedNo

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations the description carries the full burden, and it does well: discloses the exact price ($0.065 USDC on Base), input formats and a page cap, the nature of the result, and explicitly states no payment or bookkeeping action is taken. It does not describe how payment is authorized/charged or failure modes.

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

Conciseness3/5

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

The opening paragraph is tight and front-loaded. The second paragraph is largely generic routing boilerplate that recurs across tools and is only partially specific to this tool, diluting the signal without adding invoice-specific value.

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?

An output schema exists, so return values need not be spelled out. However, for a 5-parameter nested tool with zero schema documentation and a payment component, the description leaves the document-input alternatives, requiredness, and payment mechanics underspecified.

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 0% across 5 parameters including nested objects, so the description must compensate. It conveys meaning for the expected-fields object (purchase fields, line items) and the document input formats (XML vs complete PDF/image), but does not clarify that document_url/document_xml/document_base64 are alternative transports or how mime_type relates to them.

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?

States a specific verb+resource (invoice check) with scope: UBL XML or PDF/image up to 3 pages, comparing expected fields and line items, returning match/discrepancy/needs_review. The 3-page limit and 'paid' qualifier cleanly separate it from the sibling invoice_preflight_10_pages and invoice_preflight_50_pages.

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 'Agent entry points' block explicitly routes: known single capability to the direct tool, unclear capability to /api/discover, constrained comparison to route_tool, combined safety assessment to Agent Action Gate, and multi-step to workflow recipes. It lacks a direct 'use this over the 10/50-page variants when the invoice is <=3 pages' statement, but alternatives and selection conditions are named.

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

invoice_preflight_10_pagesBInspect

Paid invoice OCR ($0.13 USDC on Base): process complete PDF/image invoices up to 10 pages. Oversized PDFs are rejected before OCR.

Agent entry points: risky external action → use Agent Action Gate when a combined action-specific safety assessment is needed; unclear capability/provider → use free /api/discover; constrained comparison between callable alternatives → use paid route_tool; known single capability → call the direct tool; multi-step objective → read the matching workflow recipe and call only relevant steps. Workflows are stateless recipes, not executors; calls are paid separately and are not bundle charged. Agent Action Gate does not approve payment, sign or broadcast transactions, evaluate seller reputation, replace transaction simulation, replace route_tool, or replace human approval.

NameRequiredDescriptionDefault
expectedNo
mime_typeNo
document_urlNo
document_base64No

Output Schema

NameRequiredDescription
metaNo
nextNo
errorNo
checksYes
resultNo
statusNo
invoiceYes
paymentNo
agent_uxNo
decisionYes
evidenceYes
warningsYes
source_sha256Yes
pages_processedNo

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, but it does disclose useful behavior: a paid operation at $0.13 USDC on Base and that oversized PDFs are rejected before OCR (implying no OCR work occurs on them). It stops short of covering payment/auth mechanics or whether rejected documents are charged, so it is partial rather than complete.

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

Conciseness3/5

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

The tool-specific portion is two tight, front-loaded sentences that lead with the action and price. However, the large 'Agent entry points' boilerplate block is generic, largely irrelevant to this single tool, and dilutes the definition.

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?

An output schema exists, so return values need not be described, and pricing/format/limits are present. But for a 4-parameter paid OCR tool with a nested 'expected' verification object and clear sibling tiers, the absence of any parameter explanation and of explicit tier-selection guidance leaves real gaps.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate and it does not — none of document_url, document_base64, mime_type, or the nested 'expected' reconciliation object are explained. The 'expected' object in particular is non-obvious (it drives preflight verification against tax/total/subtotal/line_items) and is left entirely unexplained.

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?

States a specific verb and resource ('process complete PDF/image invoices'), adds the exact scope limit ('up to 10 pages'), the input formats (PDF/image), and the pricing model. This clearly differentiates it from the tiered siblings invoice_preflight and invoice_preflight_50_pages without needing to open any schema.

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

Usage Guidelines3/5

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

The description states the 10-page ceiling, which implicitly routes larger documents to invoice_preflight_50_pages, and the appended 'Agent entry points' block gives generic routing (direct tool for known capability, route_tool for comparison). However, that block is boilerplate shared across tools and never explicitly contrasts this tier against its sibling tiers or states when it should not be used.

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

invoice_preflight_50_pagesBInspect

Paid invoice OCR ($0.475 USDC on Base): process complete PDF/image invoices up to 50 pages. Oversized PDFs are rejected before OCR.

Agent entry points: risky external action → use Agent Action Gate when a combined action-specific safety assessment is needed; unclear capability/provider → use free /api/discover; constrained comparison between callable alternatives → use paid route_tool; known single capability → call the direct tool; multi-step objective → read the matching workflow recipe and call only relevant steps. Workflows are stateless recipes, not executors; calls are paid separately and are not bundle charged. Agent Action Gate does not approve payment, sign or broadcast transactions, evaluate seller reputation, replace transaction simulation, replace route_tool, or replace human approval.

NameRequiredDescriptionDefault
expectedNo
mime_typeNo
document_urlNo
document_base64No

Output Schema

NameRequiredDescription
metaNo
nextNo
errorNo
checksYes
resultNo
statusNo
invoiceYes
paymentNo
agent_uxNo
decisionYes
evidenceYes
warningsYes
source_sha256Yes
pages_processedNo

TDQS

B3/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It usefully discloses the cost and currency and the pre-OCR rejection behavior for oversized files, but says nothing about payment/refund handling on rejection, whether document_url or document_base64 is required (both are non-required), authentication needs, or what preflight validation actually does on mismatch.

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

Conciseness3/5

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

The first sentence is tightly front-loaded with scope, price, and the rejection rule. However, the multi-line entry-point paragraph is generic boilerplate that does not earn its place in a tool-specific definition and dilutes the signal.

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?

An output schema exists, so return values need not be explained. But for a 4-parameter tool with 0% schema coverage, nested objects, no annotations, and an unexplained 'expected' comparison argument, the description leaves essential calling information missing.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, and it largely does not. It hints at mime_type via 'PDF/image' but never explains the nested 'expected' object (tax, total, currency, subtotal, line_items, supplier_name, purchase_order), which is the core semantic of the tool, nor the exclusivity or size limits of document_url vs document_base64.

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?

States a specific verb and resource ('Paid invoice OCR'), the concrete scope ('up to 50 pages'), the price ($0.475 USDC on Base), and a distinguishing constraint ('Oversized PDFs are rejected before OCR'). This clearly separates it from smaller-tier siblings by page limit, though it never names invoice_preflight_10_pages or invoice_preflight_quote to make the choice explicit.

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

Usage Guidelines3/5

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

The entry-point paragraph offers generic routing heuristics ('known single capability → call the direct tool'), but it is shared boilerplate that applies to every tool rather than guidance specific to choosing the 50-page tier over the 10-page tier or the quote variant. Usage is only implied by the page cap and price.

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

invoice_preflight_quoteAInspect

FREE, no wallet or document upload: choose the lowest priced Invoice Preflight tool from document type, PDF page count, and optional byte size. Call this before a paid invoice tool when the tier is uncertain. It does not inspect or validate the document.

Agent entry points: risky external action → use Agent Action Gate when a combined action-specific safety assessment is needed; unclear capability/provider → use free /api/discover; constrained comparison between callable alternatives → use paid route_tool; known single capability → call the direct tool; multi-step objective → read the matching workflow recipe and call only relevant steps. Workflows are stateless recipes, not executors; calls are paid separately and are not bundle charged. Agent Action Gate does not approve payment, sign or broadcast transactions, evaluate seller reputation, replace transaction simulation, replace route_tool, or replace human approval.

NameRequiredDescriptionDefault
page_countNo
document_typeYes
file_size_bytesNo

Output Schema

NameRequiredDescription
metaNo
nextNo
errorNo
reasonYes
resultNo
statusNo
networkYes
paymentNo
agent_uxNo
price_usdcYes
no_payment_takenYes
recommended_toolYes
document_not_inspectedYes
final_validation_on_paid_callYes

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden and does well: it discloses that the operation is FREE, requires no wallet or document upload, performs no inspection/validation, and is not bundle charged. It does not state latency, caching, or rate limits, but for a stateless quote lookup the key behavioral traits are covered.

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

Conciseness2/5

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

The first two sentences are tight and front-loaded, but the long 'Agent entry points' paragraph is largely boilerplate about other tools (Agent Action Gate, route_tool, workflow recipes) and contributes little to selecting or invoking this specific quote tool. It inflates the definition without earning its length here.

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?

Complexity is low, the schema is small and simple, and an output schema exists so return values need not be explained. Combined with the free/no-wallet disclosure, the description gives an agent enough to call it correctly; the off-topic routing paragraph is the only weak point.

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 0%, but the description names all three inputs (document type, PDF page count, optional byte size), which compensates partially and matches the schema properties. It does not add format, units, or edge-case details beyond the parameter names and the 1–10000 bounds already in the schema.

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 opening sentence states a specific verb and resource — pick the lowest-priced Invoice Preflight tool — and explicitly scopes it as free with no wallet or document upload. It distinguishes itself cleanly from the paid invoice siblings (invoice_preflight, invoice_preflight_10_pages, invoice_preflight_50_pages) and disclaims that it does not inspect the document.

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?

It gives a direct when-to-use rule: 'Call this before a paid invoice tool when the tier is uncertain.' The entry-point block also routes among alternatives (Agent Action Gate, discover, route_tool, direct tool), giving clear context. It stops short of an explicit when-not-to-use for this specific tool.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedinvoice_preflight7 fields changed
      • addedOutput schema / properties / agent_ux
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "error": {
        +      "anyOf": [
        +        {},
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "meta": {
        +      "additionalProperties": {},
        +      "propertyNames": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    "next": {
        +      "items": {},
        +      "type": "array"
        +    },
        +    "payment": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "execution_status": {
        +          "enum": [
        +            "not_started",
        +            "succeeded",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        },
        +        "status": {
        +          "enum": [
        +            "not_required",
        +            "required",
        +            "settled",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "status",
        +        "execution_status"
        +      ],
        +      "type": "object"
        +    },
        +    "result": {},
        +    "status": {
        +      "enum": [
        +        "succeeded",
        +        "failed",
        +        "partial",
        +        "outcome_unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "result",
        +    "error",
        +    "meta",
        +    "payment",
        +    "next"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / error
        Added value: +{
        +  "anyOf": [
        +    {},
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / meta
        Added value: +{
        +  "additionalProperties": {},
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / next
        Added value: +{
        +  "items": {},
        +  "type": "array"
        +}
      • addedOutput schema / properties / payment
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "execution_status": {
        +      "enum": [
        +        "not_started",
        +        "succeeded",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "not_required",
        +        "required",
        +        "settled",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "execution_status"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / result
        Added value: +{}
      • addedOutput schema / properties / status
        Added value: +{
        +  "enum": [
        +    "succeeded",
        +    "failed",
        +    "partial",
        +    "outcome_unknown"
        +  ],
        +  "type": "string"
        +}
    • Changedinvoice_preflight_10_pages7 fields changed
      • addedOutput schema / properties / agent_ux
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "error": {
        +      "anyOf": [
        +        {},
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "meta": {
        +      "additionalProperties": {},
        +      "propertyNames": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    "next": {
        +      "items": {},
        +      "type": "array"
        +    },
        +    "payment": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "execution_status": {
        +          "enum": [
        +            "not_started",
        +            "succeeded",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        },
        +        "status": {
        +          "enum": [
        +            "not_required",
        +            "required",
        +            "settled",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "status",
        +        "execution_status"
        +      ],
        +      "type": "object"
        +    },
        +    "result": {},
        +    "status": {
        +      "enum": [
        +        "succeeded",
        +        "failed",
        +        "partial",
        +        "outcome_unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "result",
        +    "error",
        +    "meta",
        +    "payment",
        +    "next"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / error
        Added value: +{
        +  "anyOf": [
        +    {},
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / meta
        Added value: +{
        +  "additionalProperties": {},
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / next
        Added value: +{
        +  "items": {},
        +  "type": "array"
        +}
      • addedOutput schema / properties / payment
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "execution_status": {
        +      "enum": [
        +        "not_started",
        +        "succeeded",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "not_required",
        +        "required",
        +        "settled",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "execution_status"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / result
        Added value: +{}
      • addedOutput schema / properties / status
        Added value: +{
        +  "enum": [
        +    "succeeded",
        +    "failed",
        +    "partial",
        +    "outcome_unknown"
        +  ],
        +  "type": "string"
        +}
    • Changedinvoice_preflight_50_pages7 fields changed
      • addedOutput schema / properties / agent_ux
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "error": {
        +      "anyOf": [
        +        {},
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "meta": {
        +      "additionalProperties": {},
        +      "propertyNames": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    "next": {
        +      "items": {},
        +      "type": "array"
        +    },
        +    "payment": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "execution_status": {
        +          "enum": [
        +            "not_started",
        +            "succeeded",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        },
        +        "status": {
        +          "enum": [
        +            "not_required",
        +            "required",
        +            "settled",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "status",
        +        "execution_status"
        +      ],
        +      "type": "object"
        +    },
        +    "result": {},
        +    "status": {
        +      "enum": [
        +        "succeeded",
        +        "failed",
        +        "partial",
        +        "outcome_unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "result",
        +    "error",
        +    "meta",
        +    "payment",
        +    "next"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / error
        Added value: +{
        +  "anyOf": [
        +    {},
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / meta
        Added value: +{
        +  "additionalProperties": {},
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / next
        Added value: +{
        +  "items": {},
        +  "type": "array"
        +}
      • addedOutput schema / properties / payment
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "execution_status": {
        +      "enum": [
        +        "not_started",
        +        "succeeded",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "not_required",
        +        "required",
        +        "settled",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "execution_status"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / result
        Added value: +{}
      • addedOutput schema / properties / status
        Added value: +{
        +  "enum": [
        +    "succeeded",
        +    "failed",
        +    "partial",
        +    "outcome_unknown"
        +  ],
        +  "type": "string"
        +}
    • Changedinvoice_preflight_quote8 fields changed
      • addedOutput schema / properties / agent_ux
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "error": {
        +      "anyOf": [
        +        {},
        +        {
        +          "type": "null"
        +        }
        +      ]
        +    },
        +    "meta": {
        +      "additionalProperties": {},
        +      "propertyNames": {
        +        "type": "string"
        +      },
        +      "type": "object"
        +    },
        +    "next": {
        +      "items": {},
        +      "type": "array"
        +    },
        +    "payment": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "execution_status": {
        +          "enum": [
        +            "not_started",
        +            "succeeded",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        },
        +        "status": {
        +          "enum": [
        +            "not_required",
        +            "required",
        +            "settled",
        +            "failed",
        +            "unknown"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "status",
        +        "execution_status"
        +      ],
        +      "type": "object"
        +    },
        +    "result": {},
        +    "status": {
        +      "enum": [
        +        "succeeded",
        +        "failed",
        +        "partial",
        +        "outcome_unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "result",
        +    "error",
        +    "meta",
        +    "payment",
        +    "next"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / error
        Added value: +{
        +  "anyOf": [
        +    {},
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / meta
        Added value: +{
        +  "additionalProperties": {},
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / next
        Added value: +{
        +  "items": {},
        +  "type": "array"
        +}
      • addedOutput schema / properties / payment
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "execution_status": {
        +      "enum": [
        +        "not_started",
        +        "succeeded",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    },
        +    "status": {
        +      "enum": [
        +        "not_required",
        +        "required",
        +        "settled",
        +        "failed",
        +        "unknown"
        +      ],
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "execution_status"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / result
        Added value: +{}
      • changedOutput schema / properties / status / enum
        Previous value: -[
        -  "ready",
        -  "needs_page_count",
        -  "unsupported",
        -  "temporarily_unavailable"
        -]New value: +[
        +  "succeeded",
        +  "failed",
        +  "partial",
        +  "outcome_unknown"
        +]
      • changedOutput schema / required
        Previous value: -[
        -  "status",
        -  "recommended_tool",
        -  "price_usdc",
        -  "network",
        -  "reason",
        -  "no_payment_taken",
        -  "document_not_inspected",
        -  "final_validation_on_paid_call"
        -]New value: +[
        +  "recommended_tool",
        +  "price_usdc",
        +  "network",
        +  "reason",
        +  "no_payment_taken",
        +  "document_not_inspected",
        +  "final_validation_on_paid_call"
        +]
  2. 16 tool updates
    • Removedanalyze_whale_activity
    • Removedbacktest_strategy
    • Removedcheck_change
    • Removedcheck_package
    • Removedcheck_url
    • Removedcheck_wallet
    • Removedestimate_trade_execution
    • Removedextract_structured
    • Removedget_live_quote
    • Removedmcp_server_inspect
    • Removedroute_tool
    • Removedscan_arbitrage
    • Removedscan_content
    • Removedsimulate_transaction
    • Removedtoken_security_audit
    • Removedverify_claim
  3. 5 tool updates
    • Addedanalyze_whale_activity
    • Addedbacktest_strategy
    • Addedestimate_trade_execution
    • Addedscan_arbitrage
    • Addedtoken_security_audit
  4. 4 tool updates
    • Addedcheck_change
    • Addedextract_structured
    • Addedget_live_quote
    • Addedverify_claim
  5. 1 tool update
    • Addedroute_tool
  6. 3 tool updates
    • Addedcheck_package
    • Addedcheck_wallet
    • Addedsimulate_transaction
  7. 1 tool update
    • Addedscan_content
  8. 1 tool update
    • Addedcheck_url
  9. 1 tool update
    • Addedmcp_server_inspect
  10. 4 tool updates
    • Changedinvoice_preflight1 field changed
      • addedInput schema / properties / expected / properties / line_items
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount": {
        +        "pattern": "^-?\\d+(?:\\.\\d{1,2})?$",
        +        "type": "string"
        +      },
        +      "description": {
        +        "maxLength": 300,
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "description",
        +      "amount"
        +    ],
        +    "type": "object"
        +  },
        +  "maxItems": 1000,
        +  "minItems": 1,
        +  "type": "array"
        +}
    • Changedinvoice_preflight_10_pages1 field changed
      • addedInput schema / properties / expected / properties / line_items
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount": {
        +        "pattern": "^-?\\d+(?:\\.\\d{1,2})?$",
        +        "type": "string"
        +      },
        +      "description": {
        +        "maxLength": 300,
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "description",
        +      "amount"
        +    ],
        +    "type": "object"
        +  },
        +  "maxItems": 1000,
        +  "minItems": 1,
        +  "type": "array"
        +}
    • Changedinvoice_preflight_50_pages1 field changed
      • addedInput schema / properties / expected / properties / line_items
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount": {
        +        "pattern": "^-?\\d+(?:\\.\\d{1,2})?$",
        +        "type": "string"
        +      },
        +      "description": {
        +        "maxLength": 300,
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "description",
        +      "amount"
        +    ],
        +    "type": "object"
        +  },
        +  "maxItems": 1000,
        +  "minItems": 1,
        +  "type": "array"
        +}
    • Addedinvoice_preflight_quote
  11. 3 tool updates
    • Changedinvoice_preflight1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "checks": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "actual": {
        +            "type": "string"
        +          },
        +          "calculated": {
        +            "type": "string"
        +          },
        +          "expected": {
        +            "type": "string"
        +          },
        +          "field": {
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "match",
        +              "discrepancy",
        +              "needs_review"
        +            ],
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "status"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "decision": {
        +      "enum": [
        +        "match",
        +        "discrepancy",
        +        "needs_review"
        +      ],
        +      "type": "string"
        +    },
        +    "evidence": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "field": {
        +            "type": "string"
        +          },
        +          "source": {
        +            "type": "string"
        +          },
        +          "text": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "source",
        +          "text"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "invoice": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "currency": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "line_items": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "description": {
        +                "type": [
        +                  "string",
        +                  "null"
        +                ]
        +              }
        +            },
        +            "required": [
        +              "description",
        +              "amount"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "number": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "purchase_order": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "subtotal": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "supplier_name": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "tax": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "total": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        }
        +      },
        +      "required": [
        +        "number",
        +        "supplier_name",
        +        "purchase_order",
        +        "currency",
        +        "subtotal",
        +        "tax",
        +        "total",
        +        "line_items"
        +      ],
        +      "type": "object"
        +    },
        +    "pages_processed": {
        +      "exclusiveMinimum": 0,
        +      "maximum": 9007199254740991,
        +      "type": "integer"
        +    },
        +    "source_sha256": {
        +      "type": "string"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "decision",
        +    "invoice",
        +    "checks",
        +    "evidence",
        +    "source_sha256",
        +    "warnings"
        +  ],
        +  "type": "object"
        +}
    • Changedinvoice_preflight_10_pages2 fields changed
      • removedInput schema / properties / document_xml
        Removed value: -{
        -  "maxLength": 1000000,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "checks": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "actual": {
        +            "type": "string"
        +          },
        +          "calculated": {
        +            "type": "string"
        +          },
        +          "expected": {
        +            "type": "string"
        +          },
        +          "field": {
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "match",
        +              "discrepancy",
        +              "needs_review"
        +            ],
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "status"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "decision": {
        +      "enum": [
        +        "match",
        +        "discrepancy",
        +        "needs_review"
        +      ],
        +      "type": "string"
        +    },
        +    "evidence": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "field": {
        +            "type": "string"
        +          },
        +          "source": {
        +            "type": "string"
        +          },
        +          "text": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "source",
        +          "text"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "invoice": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "currency": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "line_items": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "description": {
        +                "type": [
        +                  "string",
        +                  "null"
        +                ]
        +              }
        +            },
        +            "required": [
        +              "description",
        +              "amount"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "number": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "purchase_order": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "subtotal": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "supplier_name": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "tax": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "total": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        }
        +      },
        +      "required": [
        +        "number",
        +        "supplier_name",
        +        "purchase_order",
        +        "currency",
        +        "subtotal",
        +        "tax",
        +        "total",
        +        "line_items"
        +      ],
        +      "type": "object"
        +    },
        +    "pages_processed": {
        +      "exclusiveMinimum": 0,
        +      "maximum": 9007199254740991,
        +      "type": "integer"
        +    },
        +    "source_sha256": {
        +      "type": "string"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "decision",
        +    "invoice",
        +    "checks",
        +    "evidence",
        +    "source_sha256",
        +    "warnings"
        +  ],
        +  "type": "object"
        +}
    • Changedinvoice_preflight_50_pages2 fields changed
      • removedInput schema / properties / document_xml
        Removed value: -{
        -  "maxLength": 1000000,
        -  "minLength": 1,
        -  "type": "string"
        -}
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "checks": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "actual": {
        +            "type": "string"
        +          },
        +          "calculated": {
        +            "type": "string"
        +          },
        +          "expected": {
        +            "type": "string"
        +          },
        +          "field": {
        +            "type": "string"
        +          },
        +          "status": {
        +            "enum": [
        +              "match",
        +              "discrepancy",
        +              "needs_review"
        +            ],
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "status"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "decision": {
        +      "enum": [
        +        "match",
        +        "discrepancy",
        +        "needs_review"
        +      ],
        +      "type": "string"
        +    },
        +    "evidence": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "field": {
        +            "type": "string"
        +          },
        +          "source": {
        +            "type": "string"
        +          },
        +          "text": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "field",
        +          "source",
        +          "text"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "invoice": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "currency": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "line_items": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "amount": {
        +                "type": "string"
        +              },
        +              "description": {
        +                "type": [
        +                  "string",
        +                  "null"
        +                ]
        +              }
        +            },
        +            "required": [
        +              "description",
        +              "amount"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "number": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "purchase_order": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "subtotal": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "supplier_name": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "tax": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        },
        +        "total": {
        +          "type": [
        +            "string",
        +            "null"
        +          ]
        +        }
        +      },
        +      "required": [
        +        "number",
        +        "supplier_name",
        +        "purchase_order",
        +        "currency",
        +        "subtotal",
        +        "tax",
        +        "total",
        +        "line_items"
        +      ],
        +      "type": "object"
        +    },
        +    "pages_processed": {
        +      "exclusiveMinimum": 0,
        +      "maximum": 9007199254740991,
        +      "type": "integer"
        +    },
        +    "source_sha256": {
        +      "type": "string"
        +    },
        +    "warnings": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "decision",
        +    "invoice",
        +    "checks",
        +    "evidence",
        +    "source_sha256",
        +    "warnings"
        +  ],
        +  "type": "object"
        +}
  12. 2 tool updates
    • Addedinvoice_preflight_10_pages
    • Addedinvoice_preflight_50_pages
  13. 1 tool update
    • Changedinvoice_preflight4 fields changed
      • addedInput schema / properties / document_base64
        Added value: +{
        +  "maxLength": 13500000,
        +  "minLength": 4,
        +  "type": "string"
        +}
      • addedInput schema / properties / document_url
        Added value: +{
        +  "format": "uri",
        +  "maxLength": 2048,
        +  "type": "string"
        +}
      • addedInput schema / properties / mime_type
        Added value: +{
        +  "enum": [
        +    "application/pdf",
        +    "image/png",
        +    "image/jpeg"
        +  ],
        +  "type": "string"
        +}
      • removedInput schema / required
        Removed value: -[
        -  "document_xml"
        -]
  14. 1 tool update
    • First observedinvoice_preflight

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Validates EU, UK, and AU VAT numbers against live sources and uses AI pattern analysis to detect invoice fraud.
    124 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI-powered invoice analysis and reasoning: given invoice fields, it detects missing data, inconsistencies, duplicates, and proposes actions (register, request data, mark duplicate, review) using deterministic rules.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources