The five questions
Short answer
Company, name, documents, completeness, signatory. Each is a separate tool because each fails differently, and a gate that merges them into one score hides which one failed.
A supplier arrives with a name, a registration number, a pack of documents — insurance certificates, a bank letter, licences, a signed form — and a person who signed. Onboarding asks whether all of that holds up. Award asks the same of a bidder. The questions are independent: a real company can send a forged certificate; a genuine pack can belong to a sanctioned director; a complete pack can be signed by nobody in particular.
So the gate is five calls, not one. Four are MCP tools; company resolution is a REST endpoint today — an agent with HTTP access calls it directly, or a script runs it first. Over MCP an agent runs the four in sequence in a single conversation, reading each result before calling the next, and asking its user for the one missing input — a date of birth, the tender’s document list — when a result says it needs one. Over REST all five endpoints compose in a script. Either way, each step returns evidence with its own limits stated, and the last step is a person reading a file rather than a machine returning “approved”.
What follows is each step: what to pass, what comes back, and the line in each reply that most needs relaying.
Is this the company? Registration and standing
Short answer
Resolve the name or number against the registers. An active ABN does not mean a registered company, and standing carries its own age — the reply says both.
`POST /v1/companies/resolve` — a REST endpoint today, not yet an MCP tool — takes a query: a company name, or an ABN, ACN or NZBN. It returns which Australian company it refers to and whether it is in good standing. The reply’s `status` is one of five: `resolved`, `ambiguous` (several real companies match, and `selected` is left empty on purpose), `not_found` (every register answered and none had it), `inconclusive` (a register could not be read, so absence proves nothing), or `invalid_query` (a check digit failed).
An identifier resolves directly; a name only ranks candidates, so pass the number when the supplier has given one. The `selected.asic` block carries the company’s ASIC registration standing with an `as_of` date and an `age_days` figure — standing is read from a weekly refresh, `age_days` says how old this reading is, and past seven days the reply flags its coverage as stale rather than imply real time.
Two lines to relay. An active ABN does not mean the company is registered: the two registers answer different questions, and a supplier can hold one without the other. And there are no directors in this reply — the tool resolves the entity, not the people behind it. New Zealand identifiers return `inconclusive`; there is no NZ register adapter yet, and the reply says that rather than guessing.
Is there anything on the name? Screening
Short answer
Screen the company and its named people with every disambiguator you hold. Read strength before score, keep the exclusions, and relay that PEP was not screened.
`screen_adverse_media` takes a name plus a date of birth, country, aliases, employer and role where you have them — or an identity document to read the subject from. It returns sanctions candidates from four primary government lists, each with a score, a `strength` and the corroboration behind it; adverse-media hits from public reporting, each with the article, a category, a severity and a quoted evidence line; and the same-name articles it excluded, with the reason.
For a supplier gate, screen the entity and then the people the pack names — the director who signed, the contact on the insurance certificate. A name alone is never a strong match; a date of birth or a country from the pack is what promotes a real, high-scoring hit to strong, which is why this step comes after the documents have been read rather than before.
The reply’s sanctions note states that PEP screening was not performed, and its PEP flag stays false, because no government publishes a consolidated PEP list. If your policy requires PEP coverage, this step is the sanctions and adverse-media half, and a PEP source sits beside it. The companion guide covers every field of this reply.
Are the documents genuine? Verification
Short answer
Run each document through the forensic check. A risk band with the findings that fired, each summarised — the full evidence sits in the stored warrant — and a clean result is coverage, not a certificate.
`verify_document` takes a PDF or image — a public URL is the cheapest input — and returns a `risk_band` (low, medium, high, insufficient or error), an `inspection_quality` (complete, limited or degraded), a `recommended_action`, and the findings that fired, each with a status, a severity and a one-line summary. The evidence behind each finding — what the check was reading — sits in the stored warrant, one `get_warrant` call away, and in its permalink and PDF report. A payslip whose net pay does not reconcile, an invoice whose totals disagree, a certificate whose file structure says it was edited after issue: those are findings, with numbers attached.
Read the two axes separately. A clean phone photograph of a real certificate is often low risk and limited coverage — nothing looked tampered, and not everything could be read. That is coverage, not tampering, and treating low coverage as risk is the most common way to wrongly reject a genuine supplier.
This is the stateful step: the document and its result are stored as a warrant, with a permalink and a PDF report rendered from it on demand, so the evidence stands as the record months later. Screening, the pack check and the identity check keep nothing; company resolution keeps a short in-memory cache of recent lookups.
Is anything missing? Pack completeness
Short answer
Give the pack and the checklist. The reply names each slot, what filled it, what is missing, and what was sent that fitted nowhere.
`check_pack` takes a set of documents — up to twelve — and a checklist: one of the named schemes, or an ad-hoc `requirements` list of the document types your onboarding actually demands, with optional slots marked as such. Each document is classified with one cheap first-page read and mapped onto the slots. The reply returns `complete`, the `slots` with what filled each, the `missing` slots by name, and `unmatched_documents` — the things that were sent and belonged to no slot.
The missing list is the useful half, and it is why this step runs before verification rather than after: there is no point forensically checking six documents when the seventh, the public liability certificate, was never sent. An agent that reads `missing` and asks the supplier for exactly those items is doing the work a procurement analyst does by hand.
This is completeness coverage, not approval. A complete pack is a pack in which every required slot was filled by a document of the right type — it says nothing yet about whether those documents are genuine, which is the previous step, or whether the company behind them is real, which is the first.
Is the signatory who they say? Identity
Short answer
For the person who signs — the Australian 100-point check over their identity documents, tallied deterministically, with the gap named.
`verify_identity` takes a set of identity documents for one person and a scheme — the AFP 100-point scheme by default, or the AUSTRAC safe-harbour path — and returns whether identity is established, the points against the target or the path satisfied, and each document’s reading. A model reads each document; a deterministic engine does the tally — the arithmetic is fixed, while the reading of a document is a model pass and can vary between calls. Each physical document counts once: a second upload of the same passport does not accumulate.
This is coverage, not authenticity. The identity check establishes that the documents presented add up to the scheme’s threshold; whether an individual document is genuine is the verification step’s question, and the two are designed to be run together on the same files.
For a supplier gate the signatory is usually one person and the pack holds one or two documents for them, so this is the quickest step. It is also the one most often skipped, and the one that a wrongly-awarded contract most often turns out to have needed.
What the gate produces, and who decides
Short answer
A file: five replies with their evidence and their stated limits. Not a supplier score — deliberately.
What the agent hands back is a record: the company’s registration status with its date and age; the screening candidates with strength and corroboration, the hits with quoted evidence, the exclusions; a warrant per document with its risk band, signals and permalink; the named missing slots; the identity tally. Each carries the line that keeps it honest — standing carries its age, name-only is never confirmed, low coverage is not risk, complete is not approved, established is not authentic.
There is no supplier score, and that is a design decision rather than a gap. A single number would have to hide which of the five questions failed, and the person who has to defend an onboarding or an award needs exactly that information. The gate answers five questions with evidence; a procurement lead, a risk owner or a tender evaluator reads the file and decides. That division is what makes the decision defensible to an auditor, a losing bidder, or a supplier who was wrongly matched.
The same gate runs before award, against the bidder: the bid’s statutory declarations and certificates in place of the onboarding pack, the tender’s own document list as the ad-hoc requirements, and the bidder’s directors as the screening subjects. Finding the opportunity and matching it is the tender search guide; this is what happens once a bidder is in front of you.
Frequently asked questions
Can an AI agent verify a supplier through MCP?
It can gather the evidence: screen the name for sanctions and adverse media, verify each document forensically, check the pack for missing items, and run the signatory’s identity check — four MCP tools — plus company resolution over REST, each returning evidence with its limits. It does not return an approval; a person decides from the file.
Does an active ABN mean the supplier is a registered company?
No. The ABN register and the ASIC company register answer different questions, and a supplier can hold an active ABN without being a registered company. The resolve reply reports ASIC standing separately, with the date it was read and how old that reading is, and flags it as stale past seven days.
Is PEP screening included in the gate?
No, and the screening reply says so: its sanctions note states that PEP screening was not performed and its PEP flag stays false, because no government publishes a consolidated PEP list. If your policy requires PEP coverage, a PEP source sits beside this step.
What does a clean document check mean?
That the signals inspected did not fire, at the coverage the document allowed. A phone photo of a genuine certificate is often low risk and limited coverage — read the two axes separately. It is coverage, not a certificate of authenticity.
Can I use my own onboarding checklist?
Yes. check_pack takes an ad-hoc requirements list — the document types you demand, with optional slots marked — as well as the named schemes. The reply names each slot, what filled it, what is missing, and what was sent that fitted nowhere.
What is stored?
Document verification stores the document and its result as a warrant with a permalink and PDF report, so the evidence stands as the record. Screening, pack checks and identity checks store nothing; company resolution keeps a short in-memory cache of recent lookups.
Sources and further reading
- 01API reference — /v1/companies/resolve, /v1/adverse-media, /v1/warrants, /v1/check-pack, /v1/identity-check
- 02Playbook — check an onboarding document pack
- 03Playbook — verify a 100-point identity
- 04Screening inside an onboarding pack
- 05Government tender search from an AI agent — finding the bidder’s opportunity
Educational guidance, not a forensic certification. Detection technologies and standards change; review material decisions against current evidence.