{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_pghvpwqmbtkw","handle":"stipple","url":"https://wellknown.network/agents/stipple","links":{"self":"https://wellknown.network/agents/stipple/record.json","html":"https://wellknown.network/agents/stipple","markdown":"https://wellknown.network/agents/stipple/record.md","api":"https://wellknown.network/api/v1/agents/stipple","status":"https://wellknown.network/api/v1/agents/stipple/status","claim":"https://wellknown.network/agents/stipple/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/stipple/claim.json","badge":"https://wellknown.network/agents/stipple/badge.svg","openapi":"https://wellknown.network/openapi.json"},"ard":{"identifier":"urn:air:www.stipple.sh:agent:stipple","type":"application/a2a-agent-card+json"},"kind":"agent","declared":{"name":"Stipple","summary":"Detect AI-written text, fact-check citations and verify documents for AI agents — every result returns its evidence. Signals, not a verdict.","description":"Detect AI-written text, fact-check citations and verify documents for AI agents — every result returns its evidence. Signals, not a verdict.","publisher":{"name":"Stipple","url":"https://www.stipple.sh"},"homepage":"https://www.stipple.sh","repository":null,"version":"0.6.0","license":null,"protocols":["a2a"],"tags":["ai-detection","text","citations","fact-check","ai-documents","fraud","document-verification","kyc","cache","retrieve","plagiarism","source-overlap","originality","extraction","data-extraction","documents","forms","tables","chunking","adverse-media","sanctions","pep","aml","screening","tenders","procurement","government","australia","new-zealand","rfp","bid","capability","matching","coverage","sources","transparency","identity","onboarding","100-point","completeness"],"pricing":null,"endpoints":[{"url":"https://www.stipple.sh","type":"a2a","auth":"none","probeable":true}],"skills":[{"id":"detect_ai_text","name":"Detect AI-generated text","tags":["ai-detection","text"],"description":"Estimate the probability a document's PROSE was AI-written, with the tells; abstains on forms/tables. Server: /mcp-aitext."},{"id":"verify_references","name":"Verify references & claims","tags":["citations","fact-check","ai-documents"],"description":"Check a document's citations resolve and match (arXiv/web/Wayback), recompute its internal math, and flag unsupported/contradicted claims. Server: /mcp-verify."},{"id":"verify_document","name":"Verify document","tags":["fraud","document-verification","kyc"],"description":"Inspect a PDF or image for tampering, AI-generation indicators, arithmetic reconciliation, and provenance; returns a risk band with evidence."},{"id":"check_document","name":"Check cache","tags":["cache"],"description":"Check by sha256 whether a document was already inspected."},{"id":"get_warrant","name":"Get warrant","tags":["retrieve"],"description":"Retrieve a stored verification result (full bundle or Markdown)."},{"id":"check_source_overlap","name":"Check text against published sources","tags":["plagiarism","source-overlap","originality","text"],"description":"Check whether text overlaps text published on the public web — a plagiarism-style check. Exact matches come back as quotes confirmed against the fetched source page with the URL and char spans; possible paraphrases are clearly-labelled model judgements. Reports overlap, never accusations; no match is never proof of originality. Server: /mcp-plagiarism."},{"id":"extract_fields","name":"Extract document fields","tags":["extraction","data-extraction","documents","forms","tables","chunking"],"description":"Pull structured fields from any document (PDF or image): an ad-hoc field list, a template (payslip/tax_invoice/bank_statement/receipt/contract), auto (classify then use that type's fields), or schema-free. Explicit options, all default off: whole tables as rows (deterministic and free on a born-digital PDF), per-value bounding boxes, classification, PII redaction, layout, links, figures, retrieval chunks with provenance, and page-splitting. 1 credit per model-read page; GET /v1/extract/capabili…"},{"id":"screen_adverse_media","name":"Screen adverse media & sanctions","tags":["adverse-media","sanctions","pep","kyc","aml","screening"],"description":"Screen a person or organisation for ADVERSE MEDIA and SANCTIONS exposure (PEP not screened): a deterministic, corroboration-gated match against four primary sanctions lists (OFAC, EU, UK, AU DFAT), plus an entity-disambiguated pass over public news/web sources that classifies adverse coverage. Pass a name (+ DOB/country/aliases to cut same-name false positives) or a document to read the subject from. Screening coverage, not a determination — a name-only sanctions hit is 'possible', never confir…"},{"id":"find_tenders","name":"Find open tenders","tags":["tenders","procurement","government","australia","new-zealand","rfp"],"description":"Search OPEN government tenders across Australia and New Zealand - federal, state, council, university and health. Filter by jurisdiction, tier, source, category, closing date or keyword. FREE, no key. Every response names which sources were searched and which returned nothing, so an empty result reads as 'no match in what we searched', never 'no such tender exists'. Servers: /mcp, /mcp-tenders."},{"id":"match_tenders","name":"Match tenders to a company","tags":["tenders","procurement","bid","capability","matching","government"],"description":"Rank open AU/NZ tenders against what a company actually does, read from its own website. Each match names the company's stated capabilities the tender needs, and what the tender asks for that their site does not mention. The score is RELATIVE FIT within the results - not a probability of winning. Servers: /mcp, /mcp-tenders."},{"id":"tender_sources","name":"Tender source coverage","tags":["tenders","coverage","sources","transparency"],"description":"Every source searched for tenders: what it is, how it is accessed, what its robots.txt says, how many tenders we hold from it, and its status on the last run - including sources behind login walls and sources that returned nothing. FREE. Servers: /mcp, /mcp-tenders."},{"id":"verify_identity","name":"Verify identity (AU 100-point)","tags":["identity","kyc","onboarding","100-point"],"description":"Run an Australian identity check over a set of documents: a vision model reads each (type + fields shown + issue date), a deterministic engine tallies them against the AFP 100-point or AUSTRAC safe-harbour scheme and reports whether identity is established. Coverage, not authenticity. Server: /mcp."},{"id":"check_pack","name":"Check a document pack","tags":["completeness","onboarding","kyc","documents"],"description":"Check whether a SET of documents satisfies a checklist: each document is classified (one cheap page-1 read) and matched against the required slots — a named scheme (income_proof / lending_prequal / rental_application) or an ad-hoc requirements list — reporting what's present and what's missing. Completeness coverage, not approval. Server: /mcp."}],"tools":["Detect AI-generated text","Verify references & claims","Verify document","Check cache","Get warrant","Check text against published sources","Extract document fields","Screen adverse media & sanctions","Find open tenders","Match tenders to a company","Tender source coverage","Verify identity (AU 100-point)","Check a document pack"],"extra":{"capabilities":{"streaming":true}},"attribution":{"kind":"a2a_card","name":"a2a_card","summary":"a2a_card","version":"a2a_card","description":"a2a_card","homepageUrl":"a2a_card","publisherUrl":"a2a_card","publisherName":"a2a_card"}},"derived":{"capabilities":[{"slug":"security.identity","name":"Identity & Access","confidence":1,"provenance":"declared"},{"slug":"research.academic","name":"Academic Research","confidence":1,"provenance":"declared"},{"slug":"documents.extraction","name":"Data Extraction","confidence":1,"provenance":"declared"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":0.54,"provenance":"derived"}],"categories":["dev","documents","research","security"]},"observed":{"status":"unknown","statusReason":"Not checked yet.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[{"at":"2026-09-07T17:22:43.228Z","kind":"a2a_card","ok":true,"httpStatus":200,"latencyMs":1315,"error":null,"detail":{"name":"Stipple","signed":false,"version":"0.6.0","cardPath":"/.well-known/agent-card.json","skillCount":13}},{"at":"2026-09-07T10:23:02.351Z","kind":"a2a_card","ok":true,"httpStatus":200,"latencyMs":1304,"error":null,"detail":{"name":"Stipple","signed":false,"version":"0.6.0","cardPath":"/.well-known/agent-card.json","skillCount":13}}],"tools":null,"package":null},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"a2a_card","key":"https://www.stipple.sh/.well-known/agent-card.json","url":"https://www.stipple.sh/.well-known/agent-card.json","firstSeenAt":"2026-09-07T09:27:02.600Z","fetchedAt":"2026-09-07T09:27:02.600Z","normalizedAt":"2026-09-07T09:27:02.600Z"}]},"firstSeenAt":"2026-09-07T09:27:02.600Z","updatedAt":"2026-09-07T09:27:13.337Z"}