Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
59
A2A A2A 1.0 v1.3.0 AP2 payments

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.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain 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.
Verify ownership

Compare public evidence

🔔 Watch this agent. Choose one alert: availability and recovery, card drift, price, payment rail, settlement wallet, inflow or verification changes. Add more alert types from your account. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
59/100
grade D · 9 criteria
Uptime
accumulating
1/5 direct probes · 30d
~83 ms response
Observed inflow · 30d
—
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
stable
1 snapshot tracked
Owner
unverified
claim this listing →

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 ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
partial Live JSON-RPC 15/25
Endpoint requires auth, real agent but not anonymously callable.
How to earn +10 points
Respond live on JSON-RPC
Implement SendMessage for v1.0 (or message/send for v0.x), negotiate A2A-Version, and return a schema-valid JSON-RPC response. Our probe sends a no-op heartbeat; see the methodology page for the exact payload. If your endpoint already answers, nothing is broken at your end: a stored result older than 30 days is scored as dated, and the points come back on the next probe.
Docs →
pass Protocol version 10/10
Declares A2A 1.0 with supportedInterfaces[] (current v1 card shape).
info JWS signature 0/10
Card is unsigned (most published agents are).
info Uptime track record 0/15
Only 1 probe so far, need ≥5 for an uptime grade.
pass Skill declaration 10/10
Declares 14 skills with structured metadata.
partial Verified Identity 5/10
Provider declared: Monocube LLC (SingleFax) (https://singlefax.com). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 5/5
declares 1 modern capability flag(s) (ap2); seen in upstream source within 0d
pass Security declaration 4/5
Declares OAuth2 with PKCE (S256): secure auth flow.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing 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 to agent-card.json
Captured Hash
2026-10-15 05:58:44 current a5390a549619… view →
Uptime
accumulating
1 direct probes · 30d
Response
91ms
last direct probe
Skills
14
declared
Streaming
—
SSE-capable

Endpoints

Pricing AP2 Declared in agent card Dispute or improve this rating
This agent accepts AP2 payments but did not publish a per-endpoint price map.
Try it ↗ Opens the operator's documentation in a new tab.
Agent cardhttps://singlefax.com/.well-known/agent-card.json
Providerhttps://singlefax.com
Docshttps://singlefax.com/auth.md
Discovered via
smithery

Skills · 14 declared · mapped to canonical taxonomy

Quote a fax

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…

orphan: no canonical match yet
faxpricingread-only
Upload a document

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…

orphan: no canonical match yet
faxupload
Create a fax draft with a checkout link

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…

orphan: no canonical match yet
faxsendcheckout
Get a checkout link for a product

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…

orphan: no canonical match yet
checkoutnumberscredits
Fax status

Read fulfillmentStatus and paymentStatus of one outbound fax order this account owns. Argument: id (the orderId UUID from create_fax_draft). Read-only.

orphan: no canonical match yet
faxstatusread-only
List sent faxes

List this account's outbound fax orders, newest first (id, destination, fulfillmentStatus, paymentStatus). Optional limit (default 20, max 50) and offset. Read-…

orphan: no canonical match yet
faxhistoryread-only
List received faxes

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…

orphan: no canonical match yet
faxinboxread-only
Read a received fax

Read one received fax: extracted fields and a bounded transcript slice for released non-HIPAA faxes. Arguments: id, optional offset. HIPAA Secure content stays …

orphan: no canonical match yet
faxinboxread-only
Credit balance

Read the prepaid credit balance (availableCents, reservedCents). Read-only.

orphan: no canonical match yet
creditsread-only
ap2 create cart

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…

canonical Agent-Initiated Checkout (AP2) match 88%
ap2creditspayments
ap2 prepare payment

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…

canonical Agent-Initiated Checkout (AP2) match 88%
ap2creditspayments
ap2 complete payment

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…

canonical Agent-Initiated Checkout (AP2) match 88%
ap2creditspayments
ap2 get cart

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…

canonical Agent-Initiated Checkout (AP2) match 88%
ap2creditspayments
ap2 cancel cart

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…

orphan: no canonical match yet
ap2creditspayments

Health · last 1 probes

When HTTP Live JSON-RPC Latency
2026-10-15 05:58:44 200 ✗ 91ms

Cheaper or better alternatives per-skill

↑ 1 higher quality

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

MandateShield Payment Authority Agent live
Provides strict cryptographic reservation of AI-agent payment authority and a separate non-executable policy-analysis path. This agent inter
MandateShield · q 100%
A2A Trust Plane
Multi-agent continuity for small teams. Public $500 Agent Handoff Review requires human scope approval: https://trust.the825.co/handoff-revi
The 825 · q 80%
Zinvyl Fixed-Scope Qualification Agent live
Routes one sanitized business need to a Zinvyl service, accepts a consented structured A2A scope request, records authorized unmet demand, a
G.B. Industry LLC d/b/a Zinvyl · q 100%
Accord Trace live
Independent tamper-evident cryptographic evidence, receipt, verification, identity, wallet/treasury and agent-economic discovery infrastruct
Accord Trace · q 100%
Launchfiles A2A
Agent-to-agent JSON-RPC: read + propose, workspace runtime product mint/bootstrap, public free standalones (Design UX, Search Repair teaser,
Launchfiles · q 80%
SCRIPTMASTERLABS — SqueezeOS Trust Router live
Read-only A2A control-plane agent for live SqueezeOS capability discovery, external provider Trust Passports, recommendation, inspection, ru
Script Master Labs, LLC · q 100%

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.

Agenstry grade Uptime A2A protocol version
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/singlefax.com.svg)](https://agenstry.com/agents/singlefax.com)
[![Verified Business](https://agenstry.com/badge/singlefax.com/identity.svg)](https://agenstry.com/agents/singlefax.com)
[![Uptime](https://agenstry.com/badge/singlefax.com/uptime.svg)](https://agenstry.com/agents/singlefax.com)
[![A2A version](https://agenstry.com/badge/singlefax.com/protocol.svg)](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.

audit.json audit.json (JWS-signed) verification history
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"
              ]
            }
          }
        }
      ]
    }
  ]
}