{
  "data": {
    "a": {
      "slug": "anrok",
      "name": "Anrok",
      "vendor": "Anrok, Inc.",
      "vendorUrl": "https://www.anrok.com",
      "kind": "http-api",
      "category": "tax",
      "summary": "Anrok is a hosted sales tax, VAT and GST compliance platform for software and ecommerce sellers. Its API calculates tax and records transactions, and Anrok registers, files and remits. A remote MCP server gives AI assistants access to the account.",
      "url": "https://www.anchorterminal.com/tools/anrok",
      "markdownUrl": "https://www.anchorterminal.com/tools/anrok.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/anrok.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/anrok.json",
      "license": "Proprietary service under the Anrok SaaS Services Agreement. The OpenAPI file states \"All rights reserved\"",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.anrok.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "The API takes a seller API key as a Bearer token, in the form {sellerId}/{apiKeyId}/secret.{secret}. Any seller account can create keys under Settings, Manage API keys. A key has a note and an enabled switch, with no scopes found. The MCP server uses OAuth 2.1 with PKCE (S256) and dynamic client registration. The user signs in with an Anrok login and approves any of six scopes (certificates, customers, products, registrations, transactionsRead, transactionsWrite), and access follows that user's role. A seller account comes through Anrok's sales team, and MCP needs a plan that includes it.",
      "pricing": "paid",
      "pricingNotes": "Starter is $100 per market a month, a market being one jurisdiction where the seller registers and files. Calculation, filing and MCP are included, and Anrok says high-volume Starter sellers may pay additional fees. Custom is quoted by sales and adds the advanced data API and address resolution API. No free tier or self-serve signup was found. Every seller account has a sandbox, and Anrok says pre-sale sandbox access is available to companies evaluating Custom (https://www.anrok.com/pricing, checked 2026-10-08).",
      "priceSummary": "$100 / mo",
      "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": 31,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://apidocs.anrok.com",
      "llmsTxt": "https://www.anrok.com/llms.txt",
      "openapi": "https://apidocs.anrok.com/openapi.yaml",
      "capabilities": [
        "tax.calculate",
        "tax.transactions",
        "tax.exemptions",
        "tax.filing"
      ],
      "tags": [
        "hosted",
        "paid",
        "closed-source",
        "api-key",
        "oauth",
        "mcp",
        "openapi",
        "sandbox",
        "sales-led",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.6,
        "grade": "C",
        "agentReady": false,
        "rank": 361,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 47,
          "payments": 15,
          "reliability": 88,
          "schema": 71,
          "security": 59,
          "transparency": 54
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The public OpenAPI 3.1 spec covers 26 operations with typed error codes, and the remote MCP server uses OAuth 2.1 with six scopes and keeps voids, refunds and filing approval away from the model. Access needs a seller account arranged through sales, API keys carry no scopes, and no API changelog, SDK or subprocessor list was found.",
        "bestFor": "An agent working for a software or ecommerce seller that already uses Anrok and wants calculation, exemption certificates and filing status in one account.",
        "strengths": [
          "Public OpenAPI 3.1 spec at apidocs.anrok.com/openapi.yaml with 26 operations, 45 enums and typed error codes on 409 responses",
          "Remote MCP server at mcp.anrok.com/mcp with OAuth 2.1, PKCE, dynamic client registration, six scopes and a revocation endpoint",
          "MCP has no void, negation or filing-approval tool, and Anrok says all write operations are audited",
          "Rate limit of 10 requests a second is published, and 429 responses carry an integer Retry-After header",
          "Status page shows no incident since 10 March 2026, and the security page lists SOC 1 Type II and SOC 2 Type II"
        ],
        "weaknesses": [
          "No self-serve signup. Starter is $100 per market a month through \"Talk to us\", and Custom is quoted by sales",
          "API keys have a note and an enabled switch only. No scopes, read-only mode or expiry found in the help centre article",
          "No API changelog, deprecation policy or official SDK found. The spec is version 1.1 with no dated history",
          "List transactions, filings, tax ID validation, certificate requests and street-level international addresses are premium and enabled on request",
          "No security.txt, disclosure policy or public subprocessor list. The DPA is available on request only"
        ],
        "agentNotes": [
          "Send every call as a POST with a JSON body to https://api.anrok.com, including reads such as /v1/seller/products/list",
          "Call createEphemeral for a quote and createOrUpdate only when the invoice is final. createOrUpdate saves the transaction for filing",
          "Reuse the same transaction id on a retry. createOrUpdate overwrites by id, so a repeat doesn't create a second record",
          "Expect transactionFrozenForFiling once a transaction is on a filed return. Negate it with createNegation and write a new id with a suffix such as :s2",
          "On 429 wait the number of seconds in Retry-After. The default limit is 10 requests a second per seller account"
        ],
        "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": 61.6
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 47,
          "payments": 15,
          "reliability": 88,
          "schema": 71,
          "security": 59,
          "transparency": 38
        },
        "provenanceScore": 70
      },
      "connect": {
        "http": "curl https://api.anrok.com/v1/seller/transactions/createOrUpdate \\\n  -H \"Authorization: Bearer $anrok_api_key\" \\\n  --json '{\"id\":\"my-first-transaction\",\"accountingDate\":\"2023-01-01\",\"currencyCode\":\"USD\",\"lineItems\":[{\"productExternalId\":\"saas-product\",\"amount\":1050}],\"customerId\":\"customer-1\",\"customerName\":\"Customer 1\",\"customerAddress\":{\"country\":\"us\",\"line1\":\"310 S Houston St\",\"city\":\"Dallas\",\"state\":\"TX\",\"zipCode\":\"75202\"}}'",
        "claudeCode": "claude mcp add --transport http anrok https://mcp.anrok.com/mcp",
        "config": {
          "mcpServers": {
            "anrok": {
              "url": "https://mcp.anrok.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/tax.calculate",
        "tool": "https://letme.dev/anrok"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Starter plan, per market",
          "unit": "month",
          "usd": 100,
          "note": "One market is one jurisdiction where the seller registers and files. Additional fees may apply at high transaction volumes"
        }
      ],
      "provenance": {
        "legalEntity": "Anrok, Inc.",
        "domain": "anrok.com",
        "domainRegistered": "2019-01-06",
        "endpointOnVendorDomain": true,
        "terms": "https://www.anrok.com/privacy-terms",
        "privacy": "https://www.anrok.com/privacy-terms",
        "statusPage": "https://anrok-status.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms of service (last updated July 2026) name Anrok, Inc., a Delaware corporation, and are governed by California law with courts in San Francisco.",
          "Terms, the privacy notice (effective May 2024) and the Remittances Services Agreement (effective October 2025) share one page at anrok.com/privacy-terms.",
          "The API answers at api.anrok.com and the MCP server at mcp.anrok.com, both on the vendor's domain.",
          "www.anrok.com/.well-known/security.txt returns 404. The security page names no disclosure address or bug bounty.",
          "The Statuspage site answers at anrok.statuspage.io and gives its address as anrok-status.com. We found no link to it on the pages we read.",
          "No API changelog was found. anrok.com/type/product-updates is a blog of product announcements, the latest dated 7 July 2026.",
          "RDAP for anrok.com gives a registration date of 2019-01-06."
        ],
        "score": 70
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/anrok.json",
      "live": {
        "slug": "anrok",
        "probe": {
          "target": "https://api.anrok.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:03.90773531Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 133,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 136,
          "p95ms24h": 188,
          "samples24h": 64,
          "samples30d": 64,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 64,
              "ok": 64
            }
          ]
        },
        "vendorStatus": {
          "page": "https://anrok-status.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:05:51.111926402Z"
        },
        "securityTxt": {
          "url": "https://anrok.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:57.64505605Z"
        },
        "pages": [
          {
            "url": "https://www.anrok.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:26:08.213536567Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "65c19e0d0b34"
          },
          {
            "url": "https://www.anrok.com/privacy-terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:26:10.475081688Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4eecf8a9839f"
          }
        ],
        "updatedAt": "2026-10-08T21:12:03.90773531Z"
      }
    },
    "answer": "Anrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community.",
    "b": {
      "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-08T21:12:16.935226704Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 602,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 606,
          "p95ms24h": 672,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "updatedAt": "2026-10-08T21:12:16.935226704Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Anrok, Inc.",
        "b": "Numeral Two, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.anrok.com",
        "b": "https://api.numeralhq.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Anrok SaaS Services Agreement. The OpenAPI file states \"All rights reserved\"",
        "b": "Proprietary service under Numeral's terms of service. The Go, Python and Node SDKs are Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "31",
        "b": "14",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-06",
        "b": "2026-09-15",
        "name": "Last release"
      },
      {
        "a": "2026-07-01",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "2026-07-01",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "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": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "0 stars, 9 npm/wk, 19 PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Anrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Anrok or Numeral?"
      },
      {
        "answer": "Anrok takes an API key or an OAuth sign-in. Numeral needs an API key.",
        "question": "Do Anrok and Numeral need an API key?"
      },
      {
        "answer": "Yes. Anrok has a hosted endpoint at https://api.anrok.com and Numeral at https://api.numeralhq.com.",
        "question": "Can an agent call Anrok and Numeral without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 88 against 25",
          "Security \u0026 auth, 59 against 47",
          "Payments \u0026 pricing, 15 against 10",
          "Transparency \u0026 trust, 54 against 45"
        ],
        "also": null,
        "goodFor": "An agent working for a software or ecommerce seller that already uses Anrok and wants calculation, exemption certificates and filing status in one account.",
        "slug": "anrok",
        "watchFor": "No self-serve signup. Starter is $100 per market a month through \"Talk to us\", and Custom is quoted by sales"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 87 against 71",
          "Maintenance \u0026 community, 60 against 47"
        ],
        "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"
      }
    ],
    "job": {
      "capability": "tax.calculate",
      "name": "Tax calculate"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-avalara.json",
        "title": "Anrok vs Avalara AvaTax",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-avalara"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-fonoa.json",
        "title": "Anrok vs Fonoa",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-fonoa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-kintsugi.json",
        "title": "Anrok vs Kintsugi",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-kintsugi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-quaderno.json",
        "title": "Anrok vs Quaderno",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-quaderno"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-taxcloud.json",
        "title": "Anrok vs TaxCloud",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-taxcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-taxjar.json",
        "title": "Anrok vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-taxjar"
      },
      {
        "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/anrok-vs-zamp.json",
        "title": "Anrok vs Zamp",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-zamp"
      },
      {
        "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/fonoa-vs-numeral.json",
        "title": "Fonoa vs Numeral",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-numeral"
      },
      {
        "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/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-vertex-tax.json",
        "title": "Numeral vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-zamp.json",
        "title": "Numeral vs Zamp",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-zamp"
      }
    ],
    "scores": [
      {
        "anrok": 88,
        "by": 63,
        "edge": "anrok",
        "key": "reliability",
        "name": "Reliability",
        "numeral": 25,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "anrok": 71,
        "by": 16,
        "edge": "numeral",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "numeral": 87,
        "weight": 13
      },
      {
        "anrok": 70,
        "by": 1,
        "edge": "numeral",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "numeral": 71,
        "weight": 13
      },
      {
        "anrok": 59,
        "by": 12,
        "edge": "anrok",
        "key": "security",
        "name": "Security \u0026 auth",
        "numeral": 47,
        "weight": 14
      },
      {
        "anrok": 15,
        "by": 5,
        "edge": "anrok",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "numeral": 10,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "anrok": 47,
        "by": 13,
        "edge": "numeral",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "numeral": 60,
        "weight": 7
      },
      {
        "anrok": 54,
        "by": 9,
        "edge": "anrok",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "numeral": 45,
        "weight": 7
      }
    ],
    "summary": "Anrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community. Both do tax calculate.",
    "verdicts": {
      "anrok": "The public OpenAPI 3.1 spec covers 26 operations with typed error codes, and the remote MCP server uses OAuth 2.1 with six scopes and keeps voids, refunds and filing approval away from the model. Access needs a seller account arranged through sales, API keys carry no scopes, and no API changelog, SDK or subprocessor list was found.",
      "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/anrok-vs-numeral",
    "json": "https://www.anchorterminal.com/compare/anrok-vs-numeral.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/anrok-vs-numeral.md",
    "slim": "https://www.anchorterminal.com/compare/anrok-vs-numeral.min.md"
  },
  "markdown": "Anrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community. Both do tax calculate.\n\n- Anrok: grade C, 61.6/100, rank #361 of 722. Markdown https://www.anchorterminal.com/tools/anrok.md · JSON https://www.anchorterminal.com/api/v1/tools/anrok.json\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\n## Which one, for what\n\n### Anrok (C)\n\nGood for: An agent working for a software or ecommerce seller that already uses Anrok and wants calculation, exemption certificates and filing status in one account.\n\nAhead on:\n- Reliability, 88 against 25\n- Security \u0026 auth, 59 against 47\n- Payments \u0026 pricing, 15 against 10\n- Transparency \u0026 trust, 54 against 45\n\nWatch for: No self-serve signup. Starter is $100 per market a month through \"Talk to us\", and Custom is quoted by sales\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 71\n- Maintenance \u0026 community, 60 against 47\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\n## Score by category\n\n| Category | Weight | Anrok | Numeral | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 88 | 25 | Anrok +63 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 71 | 87 | Numeral +16 |\n| Agent ergonomics | 13% (16.2 this run) | 70 | 71 | Numeral +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 59 | 47 | Anrok +12 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 15 | 10 | Anrok +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 47 | 60 | Numeral +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 54 | 45 | Anrok +9 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **61.6 · C** | **49.3 · D** | |\n\n## Facts side by side\n\n| Fact | Anrok | Numeral |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Anrok, Inc. | Numeral Two, Inc. |\n| Hosted endpoint | `https://api.anrok.com` | `https://api.numeralhq.com` |\n| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under the Anrok SaaS Services Agreement. The OpenAPI file states \"All rights reserved\" | Proprietary service under Numeral's terms of service. The Go, Python and Node SDKs are Apache-2.0 |\n| Tools exposed | 31 | 14 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-10-06 | 2026-09-15 |\n| Terms last updated | 2026-07-01 | no date given |\n| Privacy policy last updated | 2026-07-01 | no document linked |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | yes | 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 | not found in the text | yes |\n| Popularity | none | 0 stars, 9 npm/wk, 19 PyPI/wk |\n\n## Verdicts\n\n**Anrok.** The public OpenAPI 3.1 spec covers 26 operations with typed error codes, and the remote MCP server uses OAuth 2.1 with six scopes and keeps voids, refunds and filing approval away from the model. Access needs a seller account arranged through sales, API keys carry no scopes, and no API changelog, SDK or subprocessor list was found.\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## Before you call either\n\n### Anrok\n\n1. Send every call as a POST with a JSON body to https://api.anrok.com, including reads such as /v1/seller/products/list\n2. Call createEphemeral for a quote and createOrUpdate only when the invoice is final. createOrUpdate saves the transaction for filing\n3. Reuse the same transaction id on a retry. createOrUpdate overwrites by id, so a repeat doesn't create a second record\n4. Expect transactionFrozenForFiling once a transaction is on a filed return. Negate it with createNegation and write a new id with a suffix such as :s2\n5. On 429 wait the number of seconds in Retry-After. The default limit is 10 requests a second per seller account\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## Questions\n\n### Which is better for AI agents, Anrok or Numeral?\n\nAnrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community.\n\n### Do Anrok and Numeral need an API key?\n\nAnrok takes an API key or an OAuth sign-in. Numeral needs an API key.\n\n### Can an agent call Anrok and Numeral without installing anything?\n\nYes. Anrok has a hosted endpoint at https://api.anrok.com and Numeral at https://api.numeralhq.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/anrok-vs-numeral.json, and with the fewest tokens: https://www.anchorterminal.com/compare/anrok-vs-numeral.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"anrok\", \"b\": \"numeral\"}`. From a terminal: `anchor compare anrok numeral`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/anrok.json and https://www.anchorterminal.com/api/v1/tools/numeral.json\n\n## Other comparisons with Anrok or Numeral\n\n- [Anrok vs Avalara AvaTax](https://www.anchorterminal.com/compare/anrok-vs-avalara.md)\n- [Anrok vs Fonoa](https://www.anchorterminal.com/compare/anrok-vs-fonoa.md)\n- [Anrok vs Kintsugi](https://www.anchorterminal.com/compare/anrok-vs-kintsugi.md)\n- [Anrok vs Quaderno](https://www.anchorterminal.com/compare/anrok-vs-quaderno.md)\n- [Anrok vs TaxCloud](https://www.anchorterminal.com/compare/anrok-vs-taxcloud.md)\n- [Anrok vs TaxJar](https://www.anchorterminal.com/compare/anrok-vs-taxjar.md)\n- [Anrok vs Vertex O Series](https://www.anchorterminal.com/compare/anrok-vs-vertex-tax.md)\n- [Anrok vs Zamp](https://www.anchorterminal.com/compare/anrok-vs-zamp.md)\n- [Avalara AvaTax vs Numeral](https://www.anchorterminal.com/compare/avalara-vs-numeral.md)\n- [Fonoa vs Numeral](https://www.anchorterminal.com/compare/fonoa-vs-numeral.md)\n- [Kintsugi vs Numeral](https://www.anchorterminal.com/compare/kintsugi-vs-numeral.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 Vertex O Series](https://www.anchorterminal.com/compare/numeral-vs-vertex-tax.md)\n- [Numeral vs Zamp](https://www.anchorterminal.com/compare/numeral-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": "Anrok vs Numeral",
        "url": ""
      }
    ],
    "description": "Anrok scores 61.6 (C) on agent readiness against Numeral's 49.3 (D), and leads in 4 of 7 scored categories. Numeral leads on schema \u0026 documentation and maintenance \u0026 community. Both do tax calculate. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Anrok C 61.6",
      "Numeral D 49.3",
      "scores"
    ],
    "h1": "Anrok vs Numeral",
    "image": "https://www.anchorterminal.com/assets/og/compare-anrok-vs-numeral.png",
    "path": "/compare/anrok-vs-numeral",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Anrok vs Numeral for AI agents, C 61.6 vs D 49.3 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/anrok-vs-numeral"
  },
  "tokens": {
    "markdown": 2200,
    "slim": 680
  },
  "version": 1
}
