# Anrok > 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. - Canonical: https://www.anchorterminal.com/tools/anrok - Markdown: https://www.anchorterminal.com/tools/anrok.md (~6,950 tokens) - Slim: https://www.anchorterminal.com/tools/anrok.min.md (~1,680 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/tools/anrok.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-08 ## Overview **Grade C · 61.6/100 · rank #321 of 629 · #2 in Tax calculation & compliance · not agent-ready · confidence medium** ## Assessment 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. ## Facts | Field | Value | | --- | --- | | Vendor | Anrok, Inc. (https://www.anrok.com) | | Kind | HTTP API | | Category | Tax calculation & compliance (https://www.anchorterminal.com/categories/tax) | | Transport | HTTP, Streamable HTTP | | Endpoint | `https://api.anrok.com` | | Auth | OAuth or key · 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 ($100 / mo) · 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). | | x402 | No · No x402, MPP or L402 in the API docs, the OpenAPI spec or the pricing page (checked 2026-10-08). | | Licence | Proprietary service under the Anrok SaaS Services Agreement. The OpenAPI file states "All rights reserved" | | Tools exposed | 31 | | Docs | https://apidocs.anrok.com | | llms.txt | https://www.anrok.com/llms.txt | | Last release | 2026-10-06 | | API | 26 operations under https://api.anrok.com/v1/seller, all POST with JSON. OpenAPI 3.1, version 1.1, at https://apidocs.anrok.com/openapi.yaml | | Calculation | createEphemeral returns tax without saving. createOrUpdate calculates and saves the transaction for filing and threshold monitoring. Dates up to 31 days ahead are accepted | | MCP server | Remote, Streamable HTTP at https://mcp.anrok.com/mcp. 31 documented tools (25 read, 6 write) for customers, certificates, transactions, products, filings, nexus and utilities. One Anrok account per connection | | Credentials | API key as a Bearer token for the API. OAuth 2.1 with PKCE, dynamic client registration and six scopes for MCP, revocable from Anrok's API keys page or the client | | Rate limits | 10 requests a second per seller account by default. 429 with an integer Retry-After header | | Errors | 400 and 409 responses carry a typed code such as customerAddressCouldNotResolve, productExternalIdUnknown or transactionFrozenForFiling. The FAQ lists a resolution for each. 429 and a missing key answer in plain text | | Paging | Cursor paging on list endpoints, default 25 and maximum 100 a page (20 for one filing list) | | Premium endpoints | List transactions, filings, tax ID validation, certificate requests and street-level address resolution outside the US and Canada are enabled on request | | Sandbox | Every seller account has a sandbox that Anrok describes as functionally identical to production. New sandboxes are requested by email | | Pricing | Starter $100 per market a month. Custom quoted by sales | | SDKs | No official SDK found on npm, PyPI or Anrok's GitHub organisation. The spec carries cURL samples | | Certifications | SOC 1 Type II and SOC 2 Type II (security, availability, confidentiality) per anrok.com/security. Annual third-party security assessment. Hosted on Google Cloud | | Status | Statuspage at https://anrok-status.com with two components, Web Application and Billing Integrations and API | | 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 | | JSON | https://www.anchorterminal.com/api/v1/tools/anrok.json | ## Score breakdown (methodology v0.4, October 2026 research run) Assessed 2026-10-08 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. "This run" is each category's share of the 100 points. | Category | Weight | This run | Score (0–100) | Points | | --- | --- | --- | --- | --- | | Reliability | 16% | 20 | 88 | 17.6 | | Performance | 10% | pending | pending | n/a | | Schema & documentation | 13% | 16.2 | 71 | 11.5 | | Agent ergonomics | 13% | 16.2 | 70 | 11.4 | | Security & auth | 14% | 17.5 | 59 | 10.3 | | Payments & pricing | 10% | 12.5 | 15 | 1.9 | | Task success | 10% | pending | pending | n/a | | Maintenance & community | 7% | 8.8 | 47 | 4.1 | | Transparency & trust (editorial 38, provenance 70) | 7% | 8.8 | 54 | 4.7 | | Negative events | up to −15 | up to −15 | none recorded | 0 | | **Total** | | | | **61.6 → C** | ### Why each score - Reliability 88: Graded on the public API, with the MCP server noted where it differs. Statuspage at anrok-status.com with two components, Web Application and Billing Integrations and API (20). No incident in the 90 days to 8 October 2026. The latest was 10 March 2026, elevated latency and 429 responses for about four hours (30). The spec and the FAQ give a default limit of 10 requests a second per seller account (15). 429 carries an integer Retry-After and the FAQ recommends retries at a fixed interval or with backoff. createOrUpdate overwrites by transaction id and removeTransactions is described as idempotent, but there are no idempotency keys (13). No SLA found on the public pages (0). The API is version 1.1 with no beta label, and the MCP docs carry none either (10). - Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes. - Schema & documentation 71: OpenAPI 3.1 at apidocs.anrok.com/openapi.yaml, 26 operations and 41 schemas (25). www.anrok.com/llms.txt exists but links marketing pages, and apidocs.anrok.com has no llms.txt or Markdown docs. The docs are static HTML that reads without JavaScript (3). Operation descriptions state purpose, the invoice lifecycle says which transaction call to use at each step, and premium endpoints are marked. The MCP tools page gives one line a tool. We couldn't read the live tool definitions without an account (15). 45 enums and 68 required lists, with few length or range constraints (11). Request and response examples, cURL samples, typed error codes on 409 responses and a FAQ table of resolutions. 429 and a missing key answer in plain text (14). The path carries v1 and the spec says 1.1, with no public API changelog found (3). - Agent ergonomics 70: List endpoints take a limit, default 25 and maximum 100, with no field selection. The MCP server documents 31 tools, and a connection sees only the tools its approved scopes allow (15). Cursor paging plus filters by customer, status, modified time, jurisdiction and filing. List transactions and filings are premium and enabled on request (18). Typed error codes with a documented resolution each, though 429 and authentication failures are plain text (18). createOrUpdate upserts by id and returns a version, and removeTransactions is safe to repeat. No idempotency keys, and we couldn't read the MCP annotations. The docs label each tool Read or Write (13). Every call is a POST with a JSON body and a createOrUpdate needs few fields. No official SDK found on npm, PyPI or GitHub (6). - Security & auth 59: Two credential models. The API key is one revocable Bearer key per seller with a note and an enabled switch, with no scopes found (20 on its own). The MCP server uses OAuth 2.1 with PKCE, dynamic client registration, six scopes and a revocation endpoint, and access follows the user's Anrok role (30 on its own). Scored between the two (25). MCP scopes split transactionsRead from transactionsWrite, and Anrok says voids, refunds and filing approval never reach the model. The API key has no read-only mode (14). Returns customer names and help centre text written by others, with no injection guidance found (3). The MCP docs say all write operations are audited and the OAuth credential appears on the API keys page. No audit log for API calls was found in the help centre (7). SOC 1 Type II, SOC 2 Type II and an annual third-party assessment. No security.txt, disclosure policy or bug bounty found (10). - Payments & pricing 15: No x402, MPP or L402 (0). Starter is public at $100 per market a month, Custom is quoted by sales, and high-volume Starter sellers may pay additional fees set out in the contract (10). No free tier or card-free trial found. Every seller account has a sandbox, and pre-sale sandbox access is arranged through sales, which we scored as partial (5). An account starts with "Talk to us" or a demo request, and keys are created in the web app (0). - Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored. - Maintenance & community 47: Closed service with no release tags. The API docs and spec were last rebuilt on 6 October 2026 per their Last-Modified header, and the help centre article on the MCP server was created on 28 September and updated on 7 October 2026 (30). No dated API changelog. Help centre articles updated in August and September 2026 show activity, and the newest product announcement is 7 July 2026 (6). No public changelog. Support by email and a help centre (6). No official SDK, and the MCP server isn't in the official registry (0). No packages to assess. The docs site is current (5). - Transparency & trust 54: Closed service with clear terms, last updated July 2026, naming Anrok, Inc. of Delaware and California law (15). The terms say Customer Data isn't used to train AI models, while Aggregated Data may train Anrok's models. The privacy notice, effective May 2024, gives no retention periods, and the DPA is available on request only (13). No deprecation policy found. One schema in the spec is marked deprecated with no date (3). The privacy notice says the service is hosted in the United States and the security page names Google Cloud. No subprocessor list found (7). Fix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (19 items): https://www.anchorterminal.com/fixes/anrok.md (JSON https://www.anchorterminal.com/fixes/anrok.json) ### What we couldn't check - unchecked: the live MCP tool definitions, their input schemas and annotations, which need an Anrok login. The count of 31 comes from the tools reference page - unchecked: the Anrok CLI named on the headless tax page. We found no documentation or package for it - Whether an SLA exists in order forms. None is published - Whether the app keeps an audit log of API key use. The help centre article on keys doesn't mention one - Whether Starter can be bought without a sales call. The pricing page button reads "Talk to us" - Which plans include MCP. The pricing page lists it under Starter, and the help centre says to ask the account team - lastRelease is the Last-Modified date of the docs and spec, since Anrok publishes no API changelog ### Sources - API reference: (seen 2026-10-08) - OpenAPI 3.1 spec: (seen 2026-10-08) - getting started tutorial, API keys and sandbox: (seen 2026-10-08) - integration overview, estimates, voids and refunds: (seen 2026-10-08) - FAQ, rate limit, downtime and error table: (seen 2026-10-08) - MCP server overview: (seen 2026-10-08) - MCP client setup: (seen 2026-10-08) - MCP tools reference: (seen 2026-10-08) - MCP OAuth protected resource metadata: (seen 2026-10-08) - MCP OAuth authorisation server metadata: (seen 2026-10-08) - MCP product page: (seen 2026-10-08) - pricing: (seen 2026-10-08) - security page: (seen 2026-10-08) - terms, privacy notice and remittances agreement: (seen 2026-10-08) - status page: (seen 2026-10-08) - status incident history: (seen 2026-10-08) - help centre, manage API keys: (seen 2026-10-08) - help centre, connect an AI assistant: (seen 2026-10-08) - product updates: (seen 2026-10-08) - llms.txt: (seen 2026-10-08) - official MCP registry search: (seen 2026-10-08) - GitHub organisation repositories: (seen 2026-10-08) - domain registration: (seen 2026-10-08) ## Who's behind it (provenance 70/100, checked 2026-10-08) | Check | Finding | Points | | --- | --- | --- | | Legal entity named | Anrok, Inc. | 20/20 | | Domain age | anrok.com, registered 2019-01-06 (7 years) | 11/15 | | Endpoint on the vendor's domain | api.anrok.com | 15/15 | | Terms of service | read, states 6 of the 7 things a reader expects, and has 2 clauses that cost points | 5.1/10 | | Privacy policy | read, states 7 of the 8 things a reader expects | 9.3/10 | | Status page | anrok-status.com | 10/10 | | Changelog | not found | 0/10 | | security.txt | not found | 0/10 | 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. ### Terms and privacy, as read A reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice. **Terms of service** (https://www.anrok.com/privacy-terms), read 2026-10-08, dated 2026-07-01, states 6 of the 7 things a reader expects. - To know. Restricts automated access (costs points). "Customer shall not at any time, directly or indirectly, and shall not permit any Authorized Users to: (i) copy, modify, or create derivative works of any Anrok IP, whether in whole or in part, including without limitation by automated or non-automated “scraping”;" - To know. Restricts benchmarking or competitive use (costs points). "(vii) access or use any Anrok IP for purposes of competitive analysis of Anrok or the Platform Services, the development, provision, or use of a competing software service, tools or product" - Gives the date it was last updated. Last updated 2026-07-01. - Names the governing law or courts. The law of the State of California. - States a limit on its liability. Capped at the fees paid in the 12 months before the claim. - Says how changes to the terms are announced. Changes are posted, with no other notice named. - Not found in the text. Refers to a service level or uptime commitment. - Also in the text (2026-10-08). Anrok says it will not use Customer Data to train, retrain, modify, update or improve any artificial intelligence models. "Notwithstanding the foregoing, Anrok shall not use Customer Data to train, retrain, modify, update, or otherwise improve any artificial intelligence models." - Also in the text (2026-10-08). Anrok may use Aggregated Data, which is de-identified data derived from Customer Data and usage, for its business purposes, including to develop and train its products, services and models. "Anrok may use, reproduce, disclose, distribute, and otherwise exploit Aggregated Data for its lawful business purposes, including to provide the Platform Services, develop, train, test, support, and improve its products, services, and models" - Also in the text (2026-10-08). An Order Form renews automatically for an identical term at the then-current fees unless the Order Form says otherwise. "Unless otherwise specified on the Order Form, following the initial Term indicated on the Order Form, Customer’s Order Form will automatically renew for an identical Term at the then-current fees" **Privacy policy** (https://www.anrok.com/privacy-terms), read 2026-10-08, dated 2026-07-01, states 7 of the 8 things a reader expects. - To know. Says it sells personal data or shares it for advertising. "The categories of Personal Information disclosed that may be considered a “sale” / “sharing” include identifiers, device information, Internet or other network activity, geolocation data, and commercial data." - Gives the date it was last updated. Last updated 2026-07-01. - Not found in the text. Says how long data is kept. - Says whether personal data is sold or shared for advertising. Says it does not sell personal data. - Gives a privacy contact. privacy@anrok.com. - Says where data is transferred or stored. Data goes to the United States. ## Live (updated 2026-10-08 17:37 UTC) - Right now: up, HTTP 404, 144 ms, checked 2026-10-08 17:36 UTC (get on `https://api.anrok.com`) - Uptime 24h 100.0% (25 probes) · 30 days 100.0% (25 probes) · p50 147 ms · p95 196 ms - Vendor status page: none, All Systems Operational - security.txt: none - Always current: https://www.anchorterminal.com/api/v1/live/anrok.json ## Probe metrics Not measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score. ## Prices | Item | Price | Unit | Note | | --- | --- | --- | --- | | Starter plan, per market | $100 | per month (plan) | One market is one jurisdiction where the seller registers and files. Additional fees may apply at high transaction volumes | Across all listings: https://www.anchorterminal.com/prices/index.md ## 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 ## Before you call it (notes for agents) 1. Send every call as a POST with a JSON body to https://api.anrok.com, including reads such as /v1/seller/products/list 2. Call createEphemeral for a quote and createOrUpdate only when the invoice is final. createOrUpdate saves the transaction for filing 3. Reuse the same transaction id on a retry. createOrUpdate overwrites by id, so a repeat doesn't create a second record 4. 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 5. On 429 wait the number of seconds in Retry-After. The default limit is 10 requests a second per seller account ## Connect First request: ```bash curl https://api.anrok.com/v1/seller/transactions/createOrUpdate \ -H "Authorization: Bearer $anrok_api_key" \ --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"}}' ``` Claude Code: ```bash claude mcp add --transport http anrok https://mcp.anrok.com/mcp ``` MCP client configuration: ```json { "mcpServers": { "anrok": { "url": "https://mcp.anrok.com/mcp" } } } ``` Through letme (picks today, calling later): https://letme.dev/anrok. letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md ## Similar tools Ranked by shared capabilities, then score. Same-category tools with no shared capability key are listed last. | Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown | | --- | --- | --- | --- | --- | --- | --- | | Avalara AvaTax | B | 68.8 | 162 | tax.calculate, tax.transactions, tax.exemptions, tax.filing | no | https://www.anchorterminal.com/tools/avalara.md | | TaxJar | C | 57.6 | 417 | tax.calculate, tax.transactions, tax.exemptions | no | https://www.anchorterminal.com/tools/taxjar.md | | Vertex O Series | C | 54.7 | 464 | tax.calculate, tax.transactions, tax.exemptions | no | https://www.anchorterminal.com/tools/vertex-tax.md | | Quaderno | C | 59.5 | 377 | tax.calculate, tax.transactions | no | https://www.anchorterminal.com/tools/quaderno.md | ## Panel reviews (0) Reviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): . Desk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md ## Notable - The API has 26 operations, all HTTP POST with a JSON body, across customers, certificates, transactions, products, product mappings, tax ID validation, address resolution and filings (source: ) - The MCP server at https://mcp.anrok.com/mcp documents 31 tools, 25 read and 6 write, grouped by the permission each needs (source: ) - Anrok says of the MCP server that voids, refunds and filing approval never reach the model (source: ) - The terms say Anrok shall not use Customer Data to train or improve artificial intelligence models, while Aggregated Data that identifies no customer may be used to train its models (source: ) - The status page lists three incidents in the last 18 months, the latest on 10 March 2026 (elevated latency and 429 responses for about four hours), and none in the 90 days to 8 October 2026 (source: ) - No Anrok server appears in the official MCP registry (source: ) ## Compare - [Anrok vs Avalara AvaTax](https://www.anchorterminal.com/compare/anrok-vs-avalara.md): C 61.6 vs B 68.8 - [Anrok vs Quaderno](https://www.anchorterminal.com/compare/anrok-vs-quaderno.md): C 61.6 vs C 59.5 - [Anrok vs TaxJar](https://www.anchorterminal.com/compare/anrok-vs-taxjar.md): C 61.6 vs C 57.6 - [Anrok vs Vertex O Series](https://www.anchorterminal.com/compare/anrok-vs-vertex-tax.md): C 61.6 vs C 54.7 ## Verify this listing For the vendor. The badge or a plain link to this page verifies the listing, from a page on anrok.com or one of its subdomains. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{"slug": "anrok", "url": "…"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify HTML badge: ```html Anrok on Anchor Terminal ``` Markdown badge, for a README: ```markdown [![Anrok on Anchor Terminal](https://www.anchorterminal.com/badges/anrok.svg)](https://www.anchorterminal.com/tools/anrok) ``` Plain link: ```html Anrok on Anchor Terminal ``` ## Share this listing For the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Anrok is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score. - Dark: https://www.anchorterminal.com/assets/share/anrok-dark.png - Light: https://www.anchorterminal.com/assets/share/anrok-light.png