{
  "data": {
    "a": {
      "slug": "numeral",
      "name": "Numeral",
      "vendor": "Numeral Two, Inc.",
      "vendorUrl": "https://www.numeral.com",
      "kind": "http-api",
      "category": "tax",
      "summary": "Numeral is a hosted sales tax and VAT compliance service from Numeral Two, Inc. Its REST API calculates tax, records transactions and refunds, and manages exempt customers, and Numeral registers and files. A remote MCP server reads the account.",
      "url": "https://www.anchorterminal.com/tools/numeral",
      "markdownUrl": "https://www.anchorterminal.com/tools/numeral.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/numeral.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/numeral.json",
      "repo": "https://github.com/NumeralHQ/numeral-tax-go",
      "license": "Proprietary service under Numeral's terms of service. The Go, Python and Node SDKs are Apache-2.0",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.numeralhq.com",
      "packages": [
        {
          "registry": "go",
          "name": "github.com/NumeralHQ/numeral-tax-go"
        },
        {
          "registry": "pypi",
          "name": "numeral-tax"
        },
        {
          "registry": "npm",
          "name": "numeral-tax"
        }
      ],
      "auth": "api-key",
      "authNotes": "The API and the MCP server take a secret API key as a Bearer token, `sk_test_` for the sandbox or `sk_prod_` for live data. Keys are created and revoked in the dashboard at dashboard.numeralhq.com under Developers. No scopes, expiry or OAuth flow were found, and publishable keys are rejected by the MCP server. Dashboard access starts with the get-started form or a demo, and the product page says to book a demo before generating test keys. MCP write tools are enabled per account on request.",
      "pricing": "paid",
      "pricingNotes": "Professional is $75 per filing and $150 per state registration, month to month. The tax engine and API are listed under Enterprise at a custom price. Monitoring (nexus study and alerts) is free. Test keys record transactions with no charges or remittance, but no self-serve signup was found and whether a free account can create keys isn't stated (https://www.numeral.com/pricing, checked 2026-10-08).",
      "priceSummary": "$75 / tx",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI spec or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 14,
      "popularity": {
        "githubStars": 0,
        "npmWeekly": 9,
        "pypiWeekly": 19,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.numeral.com",
      "llmsTxt": "https://docs.numeral.com/llms.txt",
      "openapi": "https://docs.numeral.com/api-reference/v2026-03-01/openapi.json",
      "capabilities": [
        "tax.calculate",
        "tax.transactions",
        "tax.exemptions",
        "tax.filing"
      ],
      "tags": [
        "hosted",
        "paid",
        "closed-source",
        "api-key",
        "mcp",
        "openapi",
        "llms-txt",
        "sandbox",
        "sales-led",
        "go",
        "python",
        "typescript"
      ],
      "lastRelease": "2026-09-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49.3,
        "grade": "D",
        "agentReady": false,
        "rank": 611,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 60,
          "payments": 10,
          "reliability": 25,
          "schema": 87,
          "security": 47,
          "transparency": 45
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Docs are written for agents, with a public OpenAPI spec for 32 operations, Markdown pages, llms.txt and a remote MCP server whose 14 tools are read-only by default. No status page, numeric rate limit or SLA was found, the API ignores idempotency keys, and API access is sold on a custom plan after a demo.",
        "bestFor": "An agent working for a seller or platform that has a Numeral account and needs tax at checkout, committed transactions for filing, and read access to nexus, registrations and filings through MCP.",
        "strengths": [
          "Public OpenAPI 3.0.1 spec for version 2026-03-01 with 32 operations, 74 schemas and 57 enums, plus llms.txt and a Markdown copy of every docs page",
          "Remote MCP server at `https://mcp.numeralhq.com/mcp` documents 14 read-only tools. Four write tools are off by default and absent from `tools/list` until enabled",
          "Date-versioned API selected with the `X-API-Version` header, with a changelog and migration notes for each of four versions",
          "Errors are flat JSON with `code`, `type` and `message`, and the docs list every `type`. MCP tool errors carry a stable `error_code`",
          "`sk_test_` keys read and write sandbox data only, and the docs say revoking a key takes effect immediately"
        ],
        "weaknesses": [
          "No status page, uptime SLA or numeric rate limit was found. The product page says rate limits can be removed on request",
          "The API ignores an `Idempotency-Key` header. A retried commit is safe only if the client handles `REFERENCE_ORDER_ID_ALREADY_EXISTS`",
          "Secret keys carry no scopes, and the MCP server has no OAuth flow. One key reads all of the account's tax data",
          "API access is listed under the Enterprise plan at a custom price, and the product page says to book a demo first",
          "SDKs are early. Go is v0.1.0, `numeral-tax` on PyPI is 0.1.0a1 from December 2025 and on npm is 0.1.0-alpha.2"
        ],
        "agentNotes": [
          "Send `X-API-Version: 2026-03-01` on every call to `https://api.numeralhq.com`. Merchant, platform and certificate endpoints reject requests without it",
          "Commit with a stable `reference_order_id`. On `REFERENCE_ORDER_ID_ALREADY_EXISTS` look up the existing transaction, because `Idempotency-Key` is ignored",
          "Commit before the calculation's `expires_at`. If it has expired, calculate again and commit the new `calculation_id` with the original `reference_order_id`",
          "Send `amount` as the line total in minor units to `/tax/calculations` and as the per-unit price to `/tax/platform/calculations`",
          "Start with an `sk_test_` key. Certificate endpoints and MCP certificate tools are live only and answer `TESTMODE_NOT_SUPPORTED` or `live_mode_required`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49.3
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 60,
          "payments": 10,
          "reliability": 25,
          "schema": 87,
          "security": 47,
          "transparency": 36
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "go get -u 'github.com/NumeralHQ/numeral-tax-go@v0.1.0'",
        "http": "curl --request POST \\\n  --url https://api.numeralhq.com/tax/calculations \\\n  --header 'Authorization: Bearer \u003ctoken\u003e' \\\n  --header 'Content-Type: application/json' \\\n  --header 'X-API-Version: 2026-03-01' \\\n  --data '{ ... }'",
        "claudeCode": "claude mcp add --transport http numeral https://mcp.numeralhq.com/mcp \\\n  --header \"Authorization: Bearer sk_test_...\"",
        "config": {
          "mcpServers": {
            "numeral": {
              "headers": {
                "Authorization": "Bearer sk_test_..."
              },
              "type": "http",
              "url": "https://mcp.numeralhq.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/tax.calculate",
        "tool": "https://letme.dev/numeral"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Filed return, Professional",
          "unit": "tx",
          "usd": 75,
          "note": "Per return filed. API access is listed under Enterprise at a custom price"
        },
        {
          "item": "State registration, Professional",
          "unit": "tx",
          "usd": 150,
          "note": "One-time fee per state"
        }
      ],
      "provenance": {
        "legalEntity": "Numeral Two, Inc.",
        "domain": "numeral.com",
        "domainRegistered": "1997-10-02",
        "endpointOnVendorDomain": false,
        "terms": "https://www.numeral.com/legal/terms-of-service",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://docs.numeral.com/api-reference/v2026-03-01/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms of service (last updated 10 June 2025) name Numeral Two, Inc. d/b/a Numeral, 527 Howard St, San Francisco, and are governed by California law.",
          "The API answers at api.numeralhq.com and the MCP server at mcp.numeralhq.com, a second domain. Numeral's docs name both hosts, and the dashboard is at dashboard.numeralhq.com.",
          "The privacy policy at numeral.com/legal/privacy-policy (effective 11 May 2026) covers the websites and says it does not apply to data processed through the platform and APIs. The privacy link here is the Data Processing Agreement (last updated 2 January 2024), which governs that data.",
          "www.numeral.com/.well-known/security.txt returns 404, as do the same paths on www.numeralhq.com and api.numeralhq.com.",
          "No status page was found on the site, the docs or the help centre.",
          "The trust centre at security.numeral.com is a Oneleet page drawn by script, which we couldn't read.",
          "RDAP gives registration dates of 1997-10-02 for numeral.com and 2022-07-14 for numeralhq.com."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/numeral.json",
      "live": {
        "slug": "numeral",
        "probe": {
          "target": "https://api.numeralhq.com",
          "method": "get",
          "lastAt": "2026-10-08T22:39:54.061561446Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 599,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 601,
          "p95ms24h": 686,
          "samples24h": 36,
          "samples30d": 36,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 36,
              "ok": 36
            }
          ]
        },
        "updatedAt": "2026-10-08T22:39:54.061561446Z"
      }
    },
    "answer": "Vertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "vertex-tax",
      "name": "Vertex O Series",
      "vendor": "Vertex, Inc.",
      "vendorUrl": "https://www.vertexinc.com",
      "kind": "http-api",
      "category": "tax",
      "summary": "Vertex O Series is indirect tax software from Vertex, Inc. that calculates sales tax, use tax and VAT for a transaction and records it for reporting. Agents reach it through REST v2 APIs with OAuth client credentials.",
      "url": "https://www.anchorterminal.com/tools/vertex-tax",
      "markdownUrl": "https://www.anchorterminal.com/tools/vertex-tax.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vertex-tax.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vertex-tax.json",
      "license": "Proprietary service under a customer agreement with Vertex, Inc. that isn't published",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://calcconnect.vertexsmb.com/vertex-ws/v2",
      "packages": [],
      "auth": "oauth",
      "authNotes": "Access is granted through a sales contract. OAuth 2.0 client credentials follow. A Cloud Partition System Administrator creates an API credential under Account Settings, Security \u0026 Credentials, choosing the API and the partition it maps to. The client id and secret are exchanged at https://auth.vertexcloud.com/oauth/token with audience `verx://migration-api` for a bearer token that lasts 3,599 seconds. The secret is shown once and a credential can't be edited. Token requests are limited to 10 per 8 hours, and a caching endpoint at tokenguard.vertexcloud.com returns unexpired tokens. On-Premise and On-Demand deployments use a service account with the API User role and their own token URL.",
      "pricing": "paid",
      "pricingNotes": "No public prices. www.vertexinc.com/pricing returns 404 and the O Series product page asks visitors to book a demo. No free tier, trial or self-serve sandbox was found, and the security guide says to work with the Vertex sales team to establish an account. O Series Online Commerce documents a sandbox host that uses the same contracted credentials (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs or the OpenAPI specs (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.vertexinc.com/oseries/docs/quick-start",
      "openapi": "https://developer.vertexinc.com/oseries/openapi/vertex-tax-calculation-and-tax-gis-api.json",
      "capabilities": [
        "tax.calculate",
        "tax.transactions",
        "tax.exemptions",
        "tax.invoicing"
      ],
      "tags": [
        "hosted",
        "enterprise",
        "oauth",
        "openapi",
        "sales-led",
        "status-page",
        "soc2",
        "on-premise",
        "vat",
        "sales-tax"
      ],
      "lastRelease": "2026-09-25",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.7,
        "grade": "C",
        "agentReady": false,
        "rank": 526,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 62,
          "payments": 0,
          "reliability": 65,
          "schema": 74,
          "security": 57,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Public OpenAPI 3.0 specs cover calculation, transaction management, tax area lookup and tax configuration, and guides are served as Markdown. Access needs a sales contract. No price, free tier, sandbox signup, calculation rate limit, idempotency key or official SDK was found in the reviewed documentation.",
        "bestFor": "An agent working inside a company that already has an O Series licence, for quotes, invoice tax, tax area lookups and tax configuration across sales tax, use tax and VAT.",
        "strengths": [
          "OpenAPI 3.0 specs download without a login. Calculation and Tax GIS is version 2.9.0 with 14 operations, Tax Configuration v2.1.0 with 29",
          "Every guide page is served as Markdown when .md is added to its URL",
          "Each Cloud API credential maps to one API and one partition, and token requests carrying credentials in the URL are rejected",
          "status.vertexinc.com lists 26 components, and no incident from 10 July to 8 October 2026 names O Series Cloud",
          "The trust centre lists SOC 1 Type II and SOC 2 Type II reports for 2025 and five sub-processors with locations"
        ],
        "weaknesses": [
          "No public price, free tier or self-serve signup. The security guide sends new users to the Vertex sales team for an account",
          "No rate limit for the calculation API and no idempotency key were found in the reviewed documentation",
          "The standard token endpoint allows 10 access token requests per 8 hours for each client",
          "No official SDK, MCP server or llms.txt on the developer site was found",
          "The customer agreement, DPA and Service Level Exhibit sit behind an access request in the trust centre"
        ],
        "agentNotes": [
          "Cache the access token for its 3,599-second life. The standard token endpoint allows 10 requests per 8 hours, and tokenguard.vertexcloud.com returns a cached token",
          "Send no `Authorization: Bearer` header to /oauth/token, and put the client id and secret in the body or a Basic header. Credentials in the URL are rejected",
          "Set `saleMessageType` to QUOTATION for an estimate. INVOICE is stored for reporting and remittance",
          "Call GET /v2/transaction-exists/{transactionid} before retrying a failed INVOICE. No idempotency key is documented",
          "Delete, reverse or roll back a Cloud transaction within 90 days of calculation. Later requests can cause calculation errors or duplicates"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54.7
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 62,
          "payments": 0,
          "reliability": 65,
          "schema": 74,
          "security": 57,
          "transparency": 52
        },
        "provenanceScore": 84
      },
      "connect": {
        "http": "curl --location 'https://auth.vertexcloud.com/oauth/token' \\\n  --header 'Content-Type: application/x-www-form-urlencoded' \\\n  --data-urlencode 'client_id=\u003cyour-client-id\u003e' \\\n  --data-urlencode 'client_secret=\u003cyour-client-secret\u003e' \\\n  --data-urlencode 'audience=verx://migration-api' \\\n  --data-urlencode 'grant_type=client_credentials'"
      },
      "letme": {
        "capability": "https://letme.dev/tax.calculate",
        "tool": "https://letme.dev/vertex-tax"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Vertex, Inc.",
        "domain": "vertexinc.com",
        "domainRegistered": "1998-09-01",
        "endpointOnVendorDomain": true,
        "terms": "https://www.vertexinc.com/terms-of-use",
        "privacy": "https://www.vertexinc.com/vertex-privacy-policy",
        "statusPage": "https://status.vertexinc.com",
        "changelog": "https://developer.vertexinc.com/oseries/docs/os-release",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The website terms of use and the privacy notice name Vertex, Inc., 2301 Renaissance Blvd., King of Prussia, PA 19406, and the terms choose Pennsylvania law. The privacy notice was last updated on 19 August 2026.",
          "Cloud API calls go to calcconnect.vertexsmb.com and auth.vertexcloud.com, which the vendor's developer docs name as its hosts. We didn't check the registration of those two domains. On-Demand deployments answer on \u003ccustomer\u003e.ondemand.vertexinc.com.",
          "www.vertexinc.com/.well-known/security.txt and /security.txt return 404.",
          "The terms URL is the website terms of use. The customer agreement, DPA, Security Exhibit and Service Level Exhibit are listed in the trust centre behind an access request.",
          "RDAP for vertexinc.com gives a registration date of 1998-09-01."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vertex-tax.json",
      "live": {
        "slug": "vertex-tax",
        "probe": {
          "target": "https://calcconnect.vertexsmb.com/vertex-ws/v2",
          "method": "get",
          "lastAt": "2026-10-08T22:40:02.380971896Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 350,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 337,
          "p95ms24h": 399,
          "samples24h": 79,
          "samples30d": 79,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 79,
              "ok": 79
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.vertexinc.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T22:39:44.605089602Z"
        },
        "securityTxt": {
          "url": "https://vertexinc.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:42.909167355Z"
        },
        "pages": [
          {
            "url": "https://developer.vertexinc.com/oseries/docs/os-release",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:17:20.759088603Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "dbf33e43de24"
          },
          {
            "url": "https://www.vertexinc.com/vertex-privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:31:23.444238352Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a77bfa05dfc0"
          },
          {
            "url": "https://www.vertexinc.com/terms-of-use",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:31:21.326104819Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8a38170a4aef"
          }
        ],
        "updatedAt": "2026-10-08T22:40:02.380971896Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Numeral Two, Inc.",
        "b": "Vertex, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.numeralhq.com",
        "b": "https://calcconnect.vertexsmb.com/vertex-ws/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Numeral's terms of service. The Go, Python and Node SDKs are Apache-2.0",
        "b": "Proprietary service under a customer agreement with Vertex, Inc. that isn't published",
        "name": "Licence"
      },
      {
        "a": "14",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-15",
        "b": "2026-09-25",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "0 stars, 9 npm/wk, 19 PyPI/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Vertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Numeral or Vertex O Series?"
      },
      {
        "answer": "Numeral needs an API key. Vertex O Series uses an OAuth sign-in.",
        "question": "Do Numeral and Vertex O Series need an API key?"
      },
      {
        "answer": "Yes. Numeral has a hosted endpoint at https://api.numeralhq.com and Vertex O Series at https://calcconnect.vertexsmb.com/vertex-ws/v2.",
        "question": "Can an agent call Numeral and Vertex O Series without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 87 against 74",
          "Agent ergonomics, 71 against 51",
          "Payments \u0026 pricing, 10 against 0"
        ],
        "also": null,
        "goodFor": "An agent working for a seller or platform that has a Numeral account and needs tax at checkout, committed transactions for filing, and read access to nexus, registrations and filings through MCP.",
        "slug": "numeral",
        "watchFor": "No status page, uptime SLA or numeric rate limit was found. The product page says rate limits can be removed on request"
      },
      {
        "aheadOn": [
          "Reliability, 65 against 25",
          "Security \u0026 auth, 57 against 47",
          "Transparency \u0026 trust, 68 against 45"
        ],
        "also": null,
        "goodFor": "An agent working inside a company that already has an O Series licence, for quotes, invoice tax, tax area lookups and tax configuration across sales tax, use tax and VAT.",
        "slug": "vertex-tax",
        "watchFor": "No public price, free tier or self-serve signup. The security guide sends new users to the Vertex sales team for an account"
      }
    ],
    "job": {
      "capability": "tax.calculate",
      "name": "Tax calculate"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-numeral.json",
        "title": "Anrok vs Numeral",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-numeral"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-vertex-tax.json",
        "title": "Anrok vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/avalara-vs-numeral.json",
        "title": "Avalara AvaTax vs Numeral",
        "url": "https://www.anchorterminal.com/compare/avalara-vs-numeral"
      },
      {
        "json": "https://www.anchorterminal.com/compare/avalara-vs-vertex-tax.json",
        "title": "Avalara AvaTax vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/avalara-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-numeral.json",
        "title": "Fonoa vs Numeral",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-numeral"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax.json",
        "title": "Fonoa vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kintsugi-vs-numeral.json",
        "title": "Kintsugi vs Numeral",
        "url": "https://www.anchorterminal.com/compare/kintsugi-vs-numeral"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kintsugi-vs-vertex-tax.json",
        "title": "Kintsugi vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/kintsugi-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-quaderno.json",
        "title": "Numeral vs Quaderno",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-quaderno"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-taxcloud.json",
        "title": "Numeral vs TaxCloud",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-taxcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-taxjar.json",
        "title": "Numeral vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-zamp.json",
        "title": "Numeral vs Zamp",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-zamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/quaderno-vs-vertex-tax.json",
        "title": "Quaderno vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/quaderno-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/taxcloud-vs-vertex-tax.json",
        "title": "TaxCloud vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/taxcloud-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax.json",
        "title": "TaxJar vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/vertex-tax-vs-zamp.json",
        "title": "Vertex O Series vs Zamp",
        "url": "https://www.anchorterminal.com/compare/vertex-tax-vs-zamp"
      }
    ],
    "scores": [
      {
        "by": 40,
        "edge": "vertex-tax",
        "key": "reliability",
        "name": "Reliability",
        "numeral": 25,
        "vertex-tax": 65,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 13,
        "edge": "numeral",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "numeral": 87,
        "vertex-tax": 74,
        "weight": 13
      },
      {
        "by": 20,
        "edge": "numeral",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "numeral": 71,
        "vertex-tax": 51,
        "weight": 13
      },
      {
        "by": 10,
        "edge": "vertex-tax",
        "key": "security",
        "name": "Security \u0026 auth",
        "numeral": 47,
        "vertex-tax": 57,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "numeral",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "numeral": 10,
        "vertex-tax": 0,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 2,
        "edge": "vertex-tax",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "numeral": 60,
        "vertex-tax": 62,
        "weight": 7
      },
      {
        "by": 23,
        "edge": "vertex-tax",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "numeral": 45,
        "vertex-tax": 68,
        "weight": 7
      }
    ],
    "summary": "Vertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing. Both do tax calculate.",
    "verdicts": {
      "numeral": "Docs are written for agents, with a public OpenAPI spec for 32 operations, Markdown pages, llms.txt and a remote MCP server whose 14 tools are read-only by default. No status page, numeric rate limit or SLA was found, the API ignores idempotency keys, and API access is sold on a custom plan after a demo.",
      "vertex-tax": "Public OpenAPI 3.0 specs cover calculation, transaction management, tax area lookup and tax configuration, and guides are served as Markdown. Access needs a sales contract. No price, free tier, sandbox signup, calculation rate limit, idempotency key or official SDK was found in the reviewed documentation."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax",
    "json": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.md",
    "slim": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.min.md"
  },
  "markdown": "Vertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing. Both do tax calculate.\n\n- Numeral: grade D, 49.3/100, rank #611 of 722. Markdown https://www.anchorterminal.com/tools/numeral.md · JSON https://www.anchorterminal.com/api/v1/tools/numeral.json\n- Vertex O Series: grade C, 54.7/100, rank #526 of 722. Markdown https://www.anchorterminal.com/tools/vertex-tax.md · JSON https://www.anchorterminal.com/api/v1/tools/vertex-tax.json\n\n## Which one, for what\n\n### Numeral (D)\n\nGood for: An agent working for a seller or platform that has a Numeral account and needs tax at checkout, committed transactions for filing, and read access to nexus, registrations and filings through MCP.\n\nAhead on:\n- Schema \u0026 documentation, 87 against 74\n- Agent ergonomics, 71 against 51\n- Payments \u0026 pricing, 10 against 0\n\nWatch for: No status page, uptime SLA or numeric rate limit was found. The product page says rate limits can be removed on request\n\n### Vertex O Series (C)\n\nGood for: An agent working inside a company that already has an O Series licence, for quotes, invoice tax, tax area lookups and tax configuration across sales tax, use tax and VAT.\n\nAhead on:\n- Reliability, 65 against 25\n- Security \u0026 auth, 57 against 47\n- Transparency \u0026 trust, 68 against 45\n\nWatch for: No public price, free tier or self-serve signup. The security guide sends new users to the Vertex sales team for an account\n\n\n## Score by category\n\n| Category | Weight | Numeral | Vertex O Series | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 25 | 65 | Vertex O Series +40 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 87 | 74 | Numeral +13 |\n| Agent ergonomics | 13% (16.2 this run) | 71 | 51 | Numeral +20 |\n| Security \u0026 auth | 14% (17.5 this run) | 47 | 57 | Vertex O Series +10 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 0 | Numeral +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 60 | 62 | Vertex O Series +2 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 45 | 68 | Vertex O Series +23 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **49.3 · D** | **54.7 · C** | |\n\n## Facts side by side\n\n| Fact | Numeral | Vertex O Series |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Numeral Two, Inc. | Vertex, Inc. |\n| Hosted endpoint | `https://api.numeralhq.com` | `https://calcconnect.vertexsmb.com/vertex-ws/v2` |\n| Transports | HTTP, Streamable HTTP | HTTP |\n| Auth | API key | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Numeral's terms of service. The Go, Python and Node SDKs are Apache-2.0 | Proprietary service under a customer agreement with Vertex, Inc. that isn't published |\n| Tools exposed | 14 | none |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | no |\n| Last release | 2026-09-15 | 2026-09-25 |\n| Terms last updated | no date given | no date given |\n| Privacy policy last updated | no document linked | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 0 stars, 9 npm/wk, 19 PyPI/wk | none |\n\n## Verdicts\n\n**Numeral.** Docs are written for agents, with a public OpenAPI spec for 32 operations, Markdown pages, llms.txt and a remote MCP server whose 14 tools are read-only by default. No status page, numeric rate limit or SLA was found, the API ignores idempotency keys, and API access is sold on a custom plan after a demo.\n\n**Vertex O Series.** Public OpenAPI 3.0 specs cover calculation, transaction management, tax area lookup and tax configuration, and guides are served as Markdown. Access needs a sales contract. No price, free tier, sandbox signup, calculation rate limit, idempotency key or official SDK was found in the reviewed documentation.\n\n## Before you call either\n\n### Numeral\n\n1. Send `X-API-Version: 2026-03-01` on every call to `https://api.numeralhq.com`. Merchant, platform and certificate endpoints reject requests without it\n2. Commit with a stable `reference_order_id`. On `REFERENCE_ORDER_ID_ALREADY_EXISTS` look up the existing transaction, because `Idempotency-Key` is ignored\n3. Commit before the calculation's `expires_at`. If it has expired, calculate again and commit the new `calculation_id` with the original `reference_order_id`\n4. Send `amount` as the line total in minor units to `/tax/calculations` and as the per-unit price to `/tax/platform/calculations`\n5. Start with an `sk_test_` key. Certificate endpoints and MCP certificate tools are live only and answer `TESTMODE_NOT_SUPPORTED` or `live_mode_required`\n\n### Vertex O Series\n\n1. Cache the access token for its 3,599-second life. The standard token endpoint allows 10 requests per 8 hours, and tokenguard.vertexcloud.com returns a cached token\n2. Send no `Authorization: Bearer` header to /oauth/token, and put the client id and secret in the body or a Basic header. Credentials in the URL are rejected\n3. Set `saleMessageType` to QUOTATION for an estimate. INVOICE is stored for reporting and remittance\n4. Call GET /v2/transaction-exists/{transactionid} before retrying a failed INVOICE. No idempotency key is documented\n5. Delete, reverse or roll back a Cloud transaction within 90 days of calculation. Later requests can cause calculation errors or duplicates\n\n## Questions\n\n### Which is better for AI agents, Numeral or Vertex O Series?\n\nVertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing.\n\n### Do Numeral and Vertex O Series need an API key?\n\nNumeral needs an API key. Vertex O Series uses an OAuth sign-in.\n\n### Can an agent call Numeral and Vertex O Series without installing anything?\n\nYes. Numeral has a hosted endpoint at https://api.numeralhq.com and Vertex O Series at https://calcconnect.vertexsmb.com/vertex-ws/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.json, and with the fewest tokens: https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"numeral\", \"b\": \"vertex-tax\"}`. From a terminal: `anchor compare numeral vertex-tax`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/numeral.json and https://www.anchorterminal.com/api/v1/tools/vertex-tax.json\n\n## Other comparisons with Numeral or Vertex O Series\n\n- [Anrok vs Numeral](https://www.anchorterminal.com/compare/anrok-vs-numeral.md)\n- [Anrok vs Vertex O Series](https://www.anchorterminal.com/compare/anrok-vs-vertex-tax.md)\n- [Avalara AvaTax vs Numeral](https://www.anchorterminal.com/compare/avalara-vs-numeral.md)\n- [Avalara AvaTax vs Vertex O Series](https://www.anchorterminal.com/compare/avalara-vs-vertex-tax.md)\n- [Fonoa vs Numeral](https://www.anchorterminal.com/compare/fonoa-vs-numeral.md)\n- [Fonoa vs Vertex O Series](https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax.md)\n- [Kintsugi vs Numeral](https://www.anchorterminal.com/compare/kintsugi-vs-numeral.md)\n- [Kintsugi vs Vertex O Series](https://www.anchorterminal.com/compare/kintsugi-vs-vertex-tax.md)\n- [Numeral vs Quaderno](https://www.anchorterminal.com/compare/numeral-vs-quaderno.md)\n- [Numeral vs TaxCloud](https://www.anchorterminal.com/compare/numeral-vs-taxcloud.md)\n- [Numeral vs TaxJar](https://www.anchorterminal.com/compare/numeral-vs-taxjar.md)\n- [Numeral vs Zamp](https://www.anchorterminal.com/compare/numeral-vs-zamp.md)\n- [Quaderno vs Vertex O Series](https://www.anchorterminal.com/compare/quaderno-vs-vertex-tax.md)\n- [TaxCloud vs Vertex O Series](https://www.anchorterminal.com/compare/taxcloud-vs-vertex-tax.md)\n- [TaxJar vs Vertex O Series](https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax.md)\n- [Vertex O Series vs Zamp](https://www.anchorterminal.com/compare/vertex-tax-vs-zamp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Numeral vs Vertex O Series",
        "url": ""
      }
    ],
    "description": "Vertex O Series scores 54.7 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation, agent ergonomics and payments \u0026 pricing. Both do tax calculate. Category scores, facts, verdicts and agent notes side by…",
    "facts": [
      "Numeral D 49.3",
      "Vertex O Series C 54.7",
      "scores"
    ],
    "h1": "Numeral vs Vertex O Series",
    "image": "https://www.anchorterminal.com/assets/og/compare-numeral-vs-vertex-tax.png",
    "path": "/compare/numeral-vs-vertex-tax",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Numeral vs Vertex O Series for AI agents, D 49.3 vs C 54.7",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax"
  },
  "tokens": {
    "markdown": 2300,
    "slim": 680
  },
  "version": 1
}
