Ardaro Purchase Document Review
REMOTE · AGENTS.GETARDARO.COM · SCANNED SEP 24
Receipt extraction, invoice-to-PO quantity allocation, and free three-document discrepancy checks.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability64
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1300 tokens (~260/item across 5 items; 5 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management33
- Stability observed for 10 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage92
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 73% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 5 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 6 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Ardaro Purchase Document Review MCP server?
Ardaro Purchase Document Review is a hosted endpoint at https://agents.getardaro.com/mcp/documents, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · agents.getardaro.com
claude mcp add --transport http ashevilleislove-ardaro-receipt-intelligence 'https://agents.getardaro.com/mcp/documents'
{
"mcpServers": {
"ashevilleislove-ardaro-receipt-intelligence": {
"url": "https://agents.getardaro.com/mcp/documents"
}
}
} {
"servers": {
"ashevilleislove-ardaro-receipt-intelligence": {
"type": "http",
"url": "https://agents.getardaro.com/mcp/documents"
}
}
} [mcp_servers.ashevilleislove-ardaro-receipt-intelligence] url = "https://agents.getardaro.com/mcp/documents"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ashevilleislove-ardaro-receipt-intelligence": {
"type": "remote",
"url": "https://agents.getardaro.com/mcp/documents",
"enabled": true
}
}
} openclaw mcp add ashevilleislove-ardaro-receipt-intelligence --url 'https://agents.getardaro.com/mcp/documents' --transport streamable-http
mcp_servers:
ashevilleislove-ardaro-receipt-intelligence:
url: "https://agents.getardaro.com/mcp/documents" {
"McpServers": {
"ashevilleislove-ardaro-receipt-intelligence": {
"Transport": "http",
"Url": "https://agents.getardaro.com/mcp/documents"
}
}
} assistant mcp add ashevilleislove-ardaro-receipt-intelligence -t streamable-http -u 'https://agents.getardaro.com/mcp/documents'
{
"mcpServers": {
"ashevilleislove-ardaro-receipt-intelligence": {
"type": "http",
"url": "https://agents.getardaro.com/mcp/documents"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 24 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 −1
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 144 → 260 ▼ functional
- Tool coverage: 100% → 73% ▼ functional
- Stability: fail → 0.13 functional
- New tool “match_invoice” functional
- New tool “reconcile_purchase_documents” functional
- “get_document_service_status” reworded the description of “service” cosmetic
- “get_document_example” reworded the description of “service” cosmetic
- 17 Sept 26 +49
- Stability: unverified → fail ▼ security
- A breaking change shipped without a version bump: still 1.4.2 ▼ security
- Tool “reconcile_purchase_documents” was removed ▼ security
- Tool “match_invoice” was removed ▼ security
- Injection markers: unverified → pass ▲ security
- Authorization: unverified → partial ▲ security
- Transport: fail → pass ▲ security
- The server rewrote its instructions, which are the text every model session reads security
- Endpoint reachability: not serving MCP → reachable ▲ functional
- Tool coverage: 73% → 100% ▲ functional
- Schema quality: 260 → 144 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- “get_document_service_status” reworded the description of “service” cosmetic
- “get_document_example” reworded the description of “service” cosmetic
- 16 Sept 26 −46
- Endpoint reachability: reachable → not serving MCP ▼ security
- Authorization: partial → unverified ▼ security
- Stability: 0.03 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Tool coverage: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- First check of Schema quality: unverified functional
- 15 Sept 26 −1
- The server rewrote its instructions, which are the text every model session reads security
- Tool “match_invoice” rewrote its description, which is the text the model reads security
- Tool “reconcile_purchase_documents” rewrote its description, which is the text the model reads security
- Schema quality: 221 → 260 ▼ functional
- Stability: unverified → 0.03 ▲ functional
- Server version: 1.4.1 → 1.4.2 functional
- Tool “match_invoice” changed its title: Review invoice-to-PO quantity allocation → Allocate invoice quantities to a purchase order (paid) cosmetic
- Tool “reconcile_purchase_documents” changed its title: Check discrepancies across three purchase documents → Compare receipt, invoice and PO for discrepancies (free) cosmetic
- 14 Sept 26 72
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 24 Sept 2026 · Probed https://agents.getardaro.com/mcp/documents
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=agents.getardaro.com | CN=Amazon RSA 2048 M04,O=Amazon,C=US | 19 Aug 2026 | 4 Mar 2027 | RSA 2048 | SHA256-RSA | 1de6f191617b74933a9fc7219046b7a |
| SANs: agents.getardaro.com | ||||||
| CN=Amazon RSA 2048 M04,O=Amazon,C=US (CA) | CN=Amazon Root CA 1,O=Amazon,C=US | 23 Aug 2022 | 23 Aug 2030 | RSA 2048 | SHA256-RSA | 773124f2a952e3ed18a58bdb85d1bc0ce5f27 |
| CN=Amazon Root CA 1,O=Amazon,C=US (CA) | CN=Starfield Services Root Certificate Authority - G2,O=Starfield Technologies\, Inc.,L=Scottsdale,ST=Arizona,C=US | 25 May 2015 | 31 Dec 2037 | RSA 2048 | SHA256-RSA | 67f944a2a27cdf3fac2ae2b01f908eeb9c4c6 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of agents.getardaro.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| getardaro.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
| content-security-policy | default-src 'none'; frame-ancestors 'none' |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | no-referrer |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://agents.getardaro.com/mcp/documents | Verified | 200 | |
| http (plaintext) | http://agents.getardaro.com/mcp/documents | HTTPS enforced | 301 | https://agents.getardaro.com/mcp/documents |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
analyze_receipt Analyze a receipt for human review ~195
Extract and validate structured expense data from receipt text or a provider-neutral receipt extraction. Use when an agent needs merchant, date, tax, total, line items, confidence, duplicate detection, and arithmetic validation before creating or reconciling an expense. The result is advisory and always requires human review. Paid tool: 0.25 USDC per accepted request. Requires an owner-authorized x402-capable client. Use get_document_example with service='receipt' for a fixed free example.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | – | yes | Required request contract identifier; send this exact version string. |
| existing_fingerprints | array | yes | Receipt fingerprints already known to the caller for duplicate comparison. Supply lowercase 64-character SHA-256 hex strings, or an empty array when none are available; at most 10,000 entries. |
| input | – | yes | One receipt supplied as bounded OCR text or a provider-neutral structured extraction. Choose exactly one input kind. |
Structured output declared, but exposes no named fields.
No examples provided.
get_document_example Get document example ~110
Inspect a fixed synthetic request and expected result before integrating or paying. Select service from the enum; no caller document is accepted, processed or stored. Returns service and details containing that service's example. Free; no wallet authorization. Use get_document_service_status for current readiness, prices and retention instead.
| Name | Type | Req | Description |
|---|---|---|---|
| service | string | yes | receipt: extraction checks; invoice: paid invoice-to-PO quantity allocation; reconciliation: free three-document discrepancy checks without allocation. Choose one service; examples do not process cal… |
Structured output declared, but exposes no named fields.
No examples provided.
get_document_service_status Get document readiness and terms ~112
Check the selected service's current runtime readiness, input limits, pricing and retention before use. Returns service and details; ready=false means the underlying service is unavailable. Free cached runtime read; no external probe, payment, analysis or historical document retrieval. Use get_document_example for a fixed integration sample instead.
| Name | Type | Req | Description |
|---|---|---|---|
| service | string | yes | receipt: extraction checks; invoice: paid invoice-to-PO quantity allocation; reconciliation: free three-document discrepancy checks without allocation. Choose one service; examples do not process cal… |
Structured output declared, but exposes no named fields.
No examples provided.
match_invoice Allocate invoice quantities to a purchase order (paid) ~246
USE THIS WHEN the question is a quantity-allocation question: how much of this PO has been invoiced, whether an invoice is fully, partially, or over billed against the PO, or how much quantity remains. Aggregates split invoice lines against one PO line and returns a status per line - fully_invoiced, partially_invoiced, uninvoiced, or overbilled - plus remaining quantity. Matches by explicit PO line ID or a unique exact product code only, never by description. Inputs: one invoice plus one PO; it does not accept a receipt. DO NOT USE THIS to compare a receipt against an invoice, or for a general list of differences with no allocation question - call reconcile_purchase_documents instead; it is free and does not require calling this tool first or after. Paid: 0.50 USDC per accepted comparison, explicit buyer-authorized x402 payment. Call get_document_service_status with service='invoice' first to confirm current readiness and price. Advisory output only: human review required; no delivery verification, payment execution, prior-invoice history, or accounting writes.
| Name | Type | Req | Description |
|---|---|---|---|
| contract_version | – | yes | – |
| invoice | – | yes | – |
| purchase_order | – | yes | – |
Structured output declared, but exposes no named fields.
No examples provided.
reconcile_purchase_documents Compare receipt, invoice and PO for discrepancies (free) ~402
USE THIS WHEN you have up to three documents (receipt, invoice, purchase order - any subset) and need a discrepancy list: reference, item, quantity, price, or arithmetic mismatches between them. This is the default choice for 'does this receipt match the invoice' or 'do these documents agree' questions. Links use explicit line references, exact product codes, or conservative normalized descriptions. DO NOT USE THIS if the actual question is a quantity-allocation question - how much of a PO has been invoiced, or resolving partial/split invoice lines against PO quantities. This tool does not allocate billed quantities or calculate remaining PO quantities: partial quantities are reported as plain differences, and any many-to-one (split) link is flagged ambiguous_many_to_one rather than resolved. For that, call match_invoice instead (paid, 0.50 USDC) - but you never need to call it before or after this tool; each works standalone. Free, no wallet authorization, no payment metadata accepted. Missing documents or fields are marked needs_review, never inferred. No OCR, retrieval, saved analyses, paid service calls, delivery verification, payment approval, or accounting writes. Human review required.
| Name | Type | Req | Description |
|---|---|---|---|
| invoice | object | – | Caller-supplied structured data. Use opaque supplier IDs and decimal strings; omit unknown fields. Receipt kind describes the source document, not verified delivery. Field names align with invoice ma… |
| purchase_order | object | – | Caller-supplied structured data. Use opaque supplier IDs and decimal strings; omit unknown fields. Receipt kind describes the source document, not verified delivery. Field names align with invoice ma… |
| receipt | object | – | Caller-supplied structured data. Use opaque supplier IDs and decimal strings; omit unknown fields. Receipt kind describes the source document, not verified delivery. Field names align with invoice ma… |
Structured output declared, but exposes no named fields.
No examples provided.
What is the Ardaro Purchase Document Review MCP server?
Ardaro Purchase Document Review is an MCP server listed in the public MCP registry as io.github.ashevilleislove/ardaro-receipt-intelligence. Receipt extraction, invoice-to-PO quantity allocation, and free three-document discrepancy checks. This page covers its hosted endpoint (https://agents.getardaro.com/mcp/documents).
Is the Ardaro Purchase Document Review MCP server safe to use?
Ardaro Purchase Document Review scores 76 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Ardaro Purchase Document Review MCP server expose?
Ardaro Purchase Document Review exposes 5 tools: analyze_receipt, match_invoice, reconcile_purchase_documents, get_document_example, get_document_service_status. Their descriptions and schemas cost roughly 1,065 tokens of context every time the server is loaded.
Does the Ardaro Purchase Document Review MCP server require authentication?
No. We connected to Ardaro Purchase Document Review without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Ardaro Purchase Document Review MCP server still maintained?
Ardaro Purchase Document Review is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.