SingleFax
singlefax.com
· Monocube LLC (SingleFax)
Send and track faxes for a SingleFax account: quote, upload, create a fax draft with hosted Stripe Checkout, and read fax history and credit balance. AP2 credit-pack purchases use signed mandates, separate account-owner passkey approval and a scoped Stripe Shared Payment Token. Uses the MCP OAuth server with explicit scopes. Not for PHI.
singlefax.com via a single DNS TXT record to add the
verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Dispute or improve this rating
D
Conformance score: 59/100
D-grade: significant issues, auth-gated, partially broken, or stale.
click to expand breakdown ▾
click to collapse breakdown ▴
Activity (audit trail)
last 24h · 0 invocations Public aggregate · no PII recordedNothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.
Card history
1 snapshot Every change toagent-card.json
| Captured | Hash | |
|---|---|---|
| 2026-10-15 05:58:44 current | a5390a549619… |
view → |
Endpoints
| Agent card | https://singlefax.com/.well-known/agent-card.json |
| Provider | https://singlefax.com |
| Docs | https://singlefax.com/auth.md |
Skills · 14 declared · mapped to canonical taxonomy
Price a fax before sending. Arguments: to (destination fax number, E.164), pages (1-50, default 10) or base64 of a small original document with optional content…
Get a one-time upload link for a document too large to inline (about 20 KB or more). Returns uploadPageUrl (a person drops the file in a browser, no login), upl…
Create a fax to one destination from an uploadToken (or base64 for a file under about 20 KB). Over A2A this never spends account credit or plan pages: it return…
Get a Stripe Checkout link for a catalog SKU: credit_pack, inbound_30day, monthly-basic, annual-basic, monthly-business, annual-business, lifetime-basic or life…
Read fulfillmentStatus and paymentStatus of one outbound fax order this account owns. Argument: id (the orderId UUID from create_fax_draft). Read-only.
List this account's outbound fax orders, newest first (id, destination, fulfillmentStatus, paymentStatus). Optional limit (default 20, max 50) and offset. Read-…
List faxes received on this account's numbers (envelope and AI summary state). Optional cursor and limit (max 50). HIPAA Secure and held faxes return the envelo…
Read one received fax: extracted fields and a bounded transcript slice for released non-HIPAA faxes. Arguments: id, optional offset. HIPAA Secure content stays …
Read the prepaid credit balance (availableCents, reservedCents). Read-only.
ap2_create_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe S…
ap2_prepare_payment: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stri…
ap2_complete_payment: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Str…
ap2_get_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shar…
ap2_cancel_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe S…
Health · last 1 probes
Cheaper or better alternatives per-skill
For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.
Similar agents embedding-nearest
Embed your Agenstry badge
Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.
Markdown / HTML snippets
[](https://agenstry.com/agents/singlefax.com) [](https://agenstry.com/agents/singlefax.com) [](https://agenstry.com/agents/singlefax.com) [](https://agenstry.com/agents/singlefax.com)
Audit-grade evidence bundle
JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against
our JWKS. See the methodology.
Raw agent card JSON
{
"name": "SingleFax",
"description": "Send and track faxes for a SingleFax account: quote, upload, create a fax draft with hosted Stripe Checkout, and read fax history and credit balance. AP2 credit-pack purchases use signed mandates, separate account-owner passkey approval and a scoped Stripe Shared Payment Token. Uses the MCP OAuth server with explicit scopes. Not for PHI.",
"supportedInterfaces": [
{
"url": "https://singlefax.com/a2a",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Monocube LLC (SingleFax)",
"url": "https://singlefax.com"
},
"version": "1.3.0",
"documentationUrl": "https://singlefax.com/auth.md",
"iconUrl": "https://singlefax.com/favicon.ico",
"capabilities": {
"streaming": false,
"pushNotifications": false,
"extendedAgentCard": false,
"extensions": [
{
"uri": "https://github.com/google-agentic-commerce/AP2/tree/v0.1.0",
"required": true,
"description": "Required for AP2 credit-pack payment skills. Explicit passkey approval precedes any charge.",
"params": {
"roles": [
"merchant"
],
"version": "0.1.0",
"checkout_modes": [
"human_present"
],
"payment_methods": [
"stripe_shared_payment_token"
],
"documentation_url": "https://singlefax.com/ap2.md",
"jwks_uri": "https://singlefax.com/.well-known/ap2/jwks.json"
}
}
]
},
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"description": "Same authorization server as https://singlefax.com/mcp. Register a client (RFC 7591), use authorization code + PKCE (S256) and request resource https://singlefax.com/mcp. Bearer tokens only on /a2a.",
"flows": {
"authorizationCode": {
"authorizationUrl": "https://api.singlefax.com/api/auth/oauth2/authorize",
"tokenUrl": "https://api.singlefax.com/api/auth/oauth2/token",
"refreshUrl": "https://api.singlefax.com/api/auth/oauth2/token",
"scopes": {
"fax:read": "Read fax status and history",
"fax:draft": "Create fax drafts (MCP Checkout or page-pool send)",
"fax:send": "Upload documents and send faxes",
"inbox:read": "Read received faxes (non-HIPAA transcripts and fields)",
"credits:read": "Read prepaid credit balance",
"credits:checkout": "Start credit purchases; AP2 charges require separate passkey approval",
"offline_access": "Refresh token for long-lived agent sessions"
},
"pkceRequired": true
}
},
"oauth2MetadataUrl": "https://api.singlefax.com/.well-known/oauth-authorization-server/api/auth"
}
}
},
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:read"
]
}
}
}
],
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json",
"text/plain"
],
"skills": [
{
"id": "quote_fax",
"name": "Quote a fax",
"description": "Price a fax before sending. Arguments: to (destination fax number, E.164), pages (1-50, default 10) or base64 of a small original document with optional contentType. Read-only: never charges or sends.",
"tags": [
"fax",
"pricing",
"read-only"
],
"examples": [
"{\"skill\":\"quote_fax\",\"arguments\":{\"to\":\"+12025551234\",\"pages\":3}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:read"
]
}
}
}
]
},
{
"id": "create_upload",
"name": "Upload a document",
"description": "Get a one-time upload link for a document too large to inline (about 20 KB or more). Returns uploadPageUrl (a person drops the file in a browser, no login), uploadUrl (HTTP PUT of the raw bytes) and uploadToken. Call again with { uploadToken } to check stored. Send the original Word, Excel, PDF or image; do not convert to PDF first.",
"tags": [
"fax",
"upload"
],
"examples": [
"{\"skill\":\"create_upload\",\"arguments\":{}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:send"
]
}
}
}
]
},
{
"id": "create_fax_draft",
"name": "Create a fax draft with a checkout link",
"description": "Create a fax to one destination from an uploadToken (or base64 for a file under about 20 KB). Over A2A this never spends account credit or plan pages: it returns status awaiting_payment with a Stripe Checkout link (checkoutUrl) and an orderId. The fax is sent only after a person pays at that link. Task state is input-required until then; poll with GetTask.",
"tags": [
"fax",
"send",
"checkout"
],
"examples": [
"{\"skill\":\"create_fax_draft\",\"arguments\":{\"to\":\"+12025551234\",\"uploadToken\":\"<from create_upload>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:draft"
]
}
}
}
]
},
{
"id": "create_checkout",
"name": "Get a checkout link for a product",
"description": "Get a Stripe Checkout link for a catalog SKU: credit_pack, inbound_30day, monthly-basic, annual-basic, monthly-business, annual-business, lifetime-basic or lifetime-pro. Over A2A it always returns a checkout link and never spends existing credit. HIPAA, EIN and IRS products are website-only. Not for sending a document; use create_fax_draft.",
"tags": [
"checkout",
"numbers",
"credits"
],
"examples": [
"{\"skill\":\"create_checkout\",\"arguments\":{\"sku\":\"inbound_30day\",\"country\":\"US\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:draft"
]
}
}
}
]
},
{
"id": "get_fax_status",
"name": "Fax status",
"description": "Read fulfillmentStatus and paymentStatus of one outbound fax order this account owns. Argument: id (the orderId UUID from create_fax_draft). Read-only.",
"tags": [
"fax",
"status",
"read-only"
],
"examples": [
"{\"skill\":\"get_fax_status\",\"arguments\":{\"id\":\"<orderId>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:read"
]
}
}
}
]
},
{
"id": "list_outbound_faxes",
"name": "List sent faxes",
"description": "List this account's outbound fax orders, newest first (id, destination, fulfillmentStatus, paymentStatus). Optional limit (default 20, max 50) and offset. Read-only.",
"tags": [
"fax",
"history",
"read-only"
],
"examples": [
"{\"skill\":\"list_outbound_faxes\",\"arguments\":{\"limit\":10}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"fax:read"
]
}
}
}
]
},
{
"id": "list_inbound_faxes",
"name": "List received faxes",
"description": "List faxes received on this account's numbers (envelope and AI summary state). Optional cursor and limit (max 50). HIPAA Secure and held faxes return the envelope only. Read-only.",
"tags": [
"fax",
"inbox",
"read-only"
],
"examples": [
"{\"skill\":\"list_inbound_faxes\",\"arguments\":{\"limit\":10}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"inbox:read"
]
}
}
}
]
},
{
"id": "get_inbound_fax",
"name": "Read a received fax",
"description": "Read one received fax: extracted fields and a bounded transcript slice for released non-HIPAA faxes. Arguments: id, optional offset. HIPAA Secure content stays on the website. Read-only.",
"tags": [
"fax",
"inbox",
"read-only"
],
"examples": [
"{\"skill\":\"get_inbound_fax\",\"arguments\":{\"id\":\"<received fax id>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"inbox:read"
]
}
}
}
]
},
{
"id": "get_credits",
"name": "Credit balance",
"description": "Read the prepaid credit balance (availableCents, reservedCents). Read-only.",
"tags": [
"credits",
"read-only"
],
"examples": [
"{\"skill\":\"get_credits\",\"arguments\":{}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:read"
]
}
}
}
]
},
{
"id": "ap2_create_cart",
"name": "ap2 create cart",
"description": "ap2_create_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shared Payment Tokens. See /ap2.md for the mandate schemas, arguments and approval flow.",
"tags": [
"ap2",
"credits",
"payments"
],
"examples": [
"{\"skill\":\"ap2_create_cart\",\"arguments\":{\"product_id\":\"credit-pack-20\",\"idempotency_key\":\"<unique key>\",\"intent_mandate\":\"<AP2 IntentMandate object>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:checkout"
]
}
}
}
]
},
{
"id": "ap2_prepare_payment",
"name": "ap2 prepare payment",
"description": "ap2_prepare_payment: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shared Payment Tokens. See /ap2.md for the mandate schemas, arguments and approval flow.",
"tags": [
"ap2",
"credits",
"payments"
],
"examples": [
"{\"skill\":\"ap2_prepare_payment\",\"arguments\":{\"id\":\"<cart id>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:checkout"
]
}
}
}
]
},
{
"id": "ap2_complete_payment",
"name": "ap2 complete payment",
"description": "ap2_complete_payment: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shared Payment Tokens. See /ap2.md for the mandate schemas, arguments and approval flow.",
"tags": [
"ap2",
"credits",
"payments"
],
"examples": [
"{\"skill\":\"ap2_complete_payment\",\"arguments\":{\"id\":\"<cart id>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:checkout"
]
}
}
}
]
},
{
"id": "ap2_get_cart",
"name": "ap2 get cart",
"description": "ap2_get_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shared Payment Tokens. See /ap2.md for the mandate schemas, arguments and approval flow.",
"tags": [
"ap2",
"credits",
"payments"
],
"examples": [
"{\"skill\":\"ap2_get_cart\",\"arguments\":{\"id\":\"<cart id>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:checkout"
]
}
}
}
]
},
{
"id": "ap2_cancel_cart",
"name": "ap2 cancel cart",
"description": "ap2_cancel_cart: human-present AP2 v0.1 credit-pack purchase. Requires the AP2 extension and credits:checkout. Signed carts, passkey-bound approval and Stripe Shared Payment Tokens. See /ap2.md for the mandate schemas, arguments and approval flow.",
"tags": [
"ap2",
"credits",
"payments"
],
"examples": [
"{\"skill\":\"ap2_cancel_cart\",\"arguments\":{\"id\":\"<cart id>\"}}"
],
"inputModes": [
"application/json"
],
"outputModes": [
"application/json",
"text/plain"
],
"securityRequirements": [
{
"schemes": {
"oauth2": {
"list": [
"credits:checkout"
]
}
}
}
]
}
]
}