{
  "data": {
    "a": {
      "slug": "amazon-textract",
      "name": "Amazon Textract",
      "vendor": "Amazon Web Services",
      "vendorUrl": "https://aws.amazon.com/textract/",
      "kind": "http-api",
      "category": "document-extraction",
      "summary": "Amazon Textract is AWS's document OCR and analysis API. It reads printed and handwritten text from scans and PDFs and returns tables, form fields, layout elements, answers to queries, and invoice, receipt and identity document fields as JSON.",
      "url": "https://www.anchorterminal.com/tools/amazon-textract",
      "markdownUrl": "https://www.anchorterminal.com/tools/amazon-textract.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/amazon-textract.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/amazon-textract.json",
      "repo": "https://github.com/aws/api-models-aws",
      "license": "Proprietary service under the AWS Customer Agreement. The AWS SDKs and the Textractor helper library are Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://textract.us-east-1.amazonaws.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@aws-sdk/client-textract"
        },
        {
          "registry": "pypi",
          "name": "boto3"
        },
        {
          "registry": "pypi",
          "name": "amazon-textract-textractor"
        }
      ],
      "auth": "api-key",
      "authNotes": "Requests are signed with AWS Signature Version 4 using IAM credentials, long-lived access keys or temporary credentials from AWS STS. IAM identity policies use the `textract` action prefix, with resource-level permissions for adapters only and no service-specific condition keys. Access is self-serve with an AWS account. Asynchronous jobs read from S3, and completion notices need an SNS topic and an IAM role Textract can assume.",
      "pricing": "usage",
      "pricingNotes": "Pay per page with no minimum. In US East (N. Virginia), text detection is $1.50 per 1,000 pages for the first million a month and $0.60 after. Document analysis is $15 for tables, $15 for queries, $50 for forms and $65 for tables with forms. Invoices and receipts are $10, identity documents $25 and the lending workflow $70. New AWS customers get three months of free pages, 1,000 a month for text detection and 100 a month for most analysis, and the Free Tier FAQ says most can sign up without a payment method (https://aws.amazon.com/textract/pricing/, https://aws.amazon.com/free/free-tier-faqs/).",
      "priceSummary": "$1.50 / 1k pages",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer guide, the API model or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 1871217,
        "pypiWeekly": 207553,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.aws.amazon.com/textract/latest/dg/what-is.html",
      "llmsTxt": "https://docs.aws.amazon.com/textract/latest/dg/llms.txt",
      "capabilities": [
        "docs.parse",
        "docs.ocr",
        "docs.extract",
        "docs.tables"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "llms-txt",
        "typescript",
        "python",
        "async-jobs",
        "sla",
        "enterprise",
        "usage-priced"
      ],
      "lastRelease": "2026-10-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 73.5,
        "grade": "BB",
        "agentReady": true,
        "rank": 85,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 70,
          "maintenance": 58,
          "payments": 35,
          "reliability": 96,
          "schema": 82,
          "security": 74,
          "transparency": 82
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "IAM policies limit a credential to single operations, CloudTrail logs every call, and page prices start at $1.50 per 1,000 in US East. Multipage files need S3 and an asynchronous job. Text detection covers six languages. Under the AWS Service Terms AWS may store and use documents to improve the service unless an AI services opt-out policy is set.",
        "bestFor": "Teams already on AWS with documents in S3 that need OCR, tables and form fields at volume with IAM and CloudTrail controls, and for US invoices, receipts, identity documents and mortgage packages.",
        "strengths": [
          "IAM policies grant single operations such as `textract:DetectDocumentText`, with temporary credentials, and CloudTrail logs every call without the document bytes or the response",
          "Text detection costs $1.50 per 1,000 pages in US East (N. Virginia) and $0.60 after a million pages a month, published without a login",
          "`ClientRequestToken` on the `Start` operations returns the same `JobId` for a repeated call, so a retried submission does not start a second job",
          "Every block carries a page number, a bounding box, a polygon and a confidence value from 0 to 100",
          "Amazon Textract SLA of 99.9 per cent monthly uptime per Region, and no Textract event on the AWS Health Dashboard since 10 July 2026"
        ],
        "weaknesses": [
          "AWS may store and use processed documents to improve the service, in other Regions too, unless an AI services opt-out policy is set on the AWS organisation",
          "Synchronous calls take one page of at most 10 MB. Multipage PDF and TIFF files must sit in S3 and run as asynchronous jobs",
          "Text detection covers English, French, German, Italian, Portuguese and Spanish only. Handwriting and queries are English only, and vertical text is not read",
          "Output is a flat list of JSON blocks linked by ID. No Markdown or plain-text output and no way to leave out word blocks or geometry",
          "The guide's document history stops at 21 April 2022, and the newest Textract entry in AWS's What's New feed is dated 30 June 2025"
        ],
        "agentNotes": [
          "Sign with SigV4 for service `textract` at `textract.\u003cregion\u003e.amazonaws.com`, or call `aws textract detect-document-text`. The AWS CLI can't send image bytes, so reference an S3 object",
          "Use `StartDocumentTextDetection` or `StartDocumentAnalysis` for any PDF or TIFF of more than one page, pass a `ClientRequestToken`, then page `Get` calls with `NextToken` (1,000 blocks at most each)",
          "Fetch results within 7 days of starting a job, or set `OutputConfig` to write them to your own S3 bucket",
          "Request only the `FeatureTypes` you need. Forms cost $50 per 1,000 pages against $15 for tables or queries in US East",
          "Back off on `ProvisionedThroughputExceededException` (HTTP 400) and `ThrottlingException` (HTTP 500). Neither carries Retry-After, and default quotas are 1 call a second in most Regions",
          "Set the AI services opt-out policy on the AWS organisation before sending customer documents"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 73.5
          }
        ],
        "editorialScores": {
          "ergonomics": 70,
          "maintenance": 58,
          "payments": 35,
          "reliability": 96,
          "schema": 82,
          "security": 74,
          "transparency": 69
        },
        "provenanceScore": 95
      },
      "connect": {
        "install": "pip install boto3   # or: npm i @aws-sdk/client-textract",
        "http": "aws textract detect-document-text \\\n    --document '{\"S3Object\":{\"Bucket\":\"my-bucket\",\"Name\":\"scan.png\"}}' \\\n    --region us-east-1"
      },
      "letme": {
        "capability": "https://letme.dev/docs.parse",
        "tool": "https://letme.dev/amazon-textract"
      },
      "sameCompany": [
        "amazon-bedrock-customization",
        "agentcore-code-interpreter",
        "aws-end-user-messaging",
        "amazon-sns",
        "amazon-s3"
      ],
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Text detection",
          "unit": "1k-pages",
          "usd": 1.5,
          "note": "US East (N. Virginia), first million pages a month. $0.60 after"
        },
        {
          "item": "Document analysis, tables",
          "unit": "1k-pages",
          "usd": 15,
          "note": "US East (N. Virginia), first million pages. Same price for queries"
        },
        {
          "item": "Document analysis, forms",
          "unit": "1k-pages",
          "usd": 50,
          "note": "US East (N. Virginia), first million pages. $65 with tables, $70 with tables and queries"
        },
        {
          "item": "Layout",
          "unit": "1k-pages",
          "usd": 4,
          "note": "US East (N. Virginia). Free alongside forms, tables or queries"
        },
        {
          "item": "Invoices and receipts",
          "unit": "1k-pages",
          "usd": 10,
          "note": "US East (N. Virginia), first million pages"
        },
        {
          "item": "Identity documents",
          "unit": "1k-pages",
          "usd": 25,
          "note": "US East (N. Virginia), first 100,000 pages. $10 after"
        },
        {
          "item": "Lending workflow",
          "unit": "1k-pages",
          "usd": 70,
          "note": "US East (N. Virginia), first million pages"
        }
      ],
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "amazonaws.com",
        "domainRegistered": "2005-08-18",
        "endpointOnVendorDomain": true,
        "terms": "https://aws.amazon.com/agreement/",
        "privacy": "https://aws.amazon.com/privacy/",
        "statusPage": "https://health.aws.amazon.com/health/status",
        "changelog": "https://docs.aws.amazon.com/textract/latest/dg/document-history.html",
        "securityTxt": "expired",
        "checked": "2026-10-08",
        "notes": [
          "The AWS Customer Agreement (last updated 14 August 2026) governs use of the service, with other AWS entities as contracting party by account country.",
          "Section 50 of the AWS Service Terms (last updated 1 October 2026) adds terms for AI services and names Amazon Textract. Section 50.3 lets AWS store and use processed content to improve the service unless the customer sets an AI services opt-out policy (https://aws.amazon.com/service-terms/).",
          "The AWS Privacy Notice (last updated 18 May 2026) says it does not apply to content customers process with AWS services, which the agreement governs.",
          "https://aws.amazon.com/.well-known/security.txt carries Expires 2026-09-24T16:25:03Z, so it had expired on 8 October 2026.",
          "The changelog link is the developer guide's document history, whose newest entry is 21 April 2022.",
          "RDAP for amazonaws.com gives a registration date of 2005-08-18. The API answers at textract.\u003cregion\u003e.amazonaws.com, while product and legal pages sit on aws.amazon.com."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/amazon-textract.json",
      "live": {
        "slug": "amazon-textract",
        "probe": {
          "target": "https://textract.us-east-1.amazonaws.com",
          "method": "get",
          "lastAt": "2026-10-09T09:26:42.391543124Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 384,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 331,
          "p95ms24h": 356,
          "samples24h": 20,
          "samples30d": 20,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 20,
              "ok": 20
            }
          ]
        },
        "updatedAt": "2026-10-09T09:26:42.391543124Z"
      }
    },
    "answer": "Amazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "nanonets",
      "name": "Nanonets API + MCP",
      "vendor": "Nanonets",
      "vendorUrl": "https://nanonets.com",
      "kind": "http-api",
      "category": "document-extraction",
      "summary": "OCR and field extraction from PDFs, scans and images.",
      "url": "https://www.anchorterminal.com/tools/nanonets",
      "markdownUrl": "https://www.anchorterminal.com/tools/nanonets.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/nanonets.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/nanonets.json",
      "repo": "https://github.com/NanoNets/docstrange",
      "license": "MIT (docstrange library)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://extraction-api.nanonets.com/api/v2",
      "packages": [
        {
          "registry": "pypi",
          "name": "docstrange"
        }
      ],
      "auth": "mixed",
      "authNotes": "Extraction API takes a Bearer key. The older app API at app.nanonets.com/api/v2 takes the key as the HTTP Basic username with an empty password. The hosted MCP server at mcp.nanonets.com/mcp uses OAuth sign-in.",
      "pricing": "freemium",
      "pricingNotes": "Starter is free with $50 of credits and no card, then $100 a month for 100 credits. Billing is per block run, $0.02 for simple blocks, $0.10 for standard AI and $0.30 for complex AI such as data extraction, and extraction counts one run a page. Growth is quoted with up to 40% volume discount, Enterprise is custom (https://nanonets.com/pricing).",
      "priceSummary": "$100 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in docs, OpenAPI document or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 1574,
        "npmWeekly": null,
        "pypiWeekly": 47,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.nanonets.com",
      "llmsTxt": "https://docs.nanonets.com/llms.txt",
      "openapi": "https://extraction-api.nanonets.com/openapi.json",
      "capabilities": [
        "docs.parse",
        "docs.ocr",
        "docs.extract",
        "docs.tables",
        "docs.classify"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "mcp",
        "llms-txt",
        "openapi",
        "async-jobs",
        "webhooks",
        "python"
      ],
      "lastRelease": "2025-10-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 42.6,
        "grade": "E",
        "agentReady": false,
        "rank": 790,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 13,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 47,
          "maintenance": 8,
          "payments": 35,
          "reliability": 45,
          "schema": 61,
          "security": 30,
          "transparency": 65
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Extraction API returns Markdown, CSV or JSON, with named fields or a JSON schema. No public changelog and no dated release in the last 90 days.",
        "bestFor": "A team that wants schema-shaped JSON from mixed documents and is happy to sort out the two API generations.",
        "strengths": [
          "Extraction API returns Markdown, CSV or JSON, with named fields or a JSON schema",
          "$50 of free credits with no card, and failed block retries aren't charged",
          "Hosted MCP server with OAuth",
          "Published subprocessor list and US, EU and India data locations",
          "ISO/IEC 27001:2022 and SOC 2 Type II claimed in the privacy policy"
        ],
        "weaknesses": [
          "No public changelog and no dated release in the last 90 days",
          "No rate-limit numbers, and the 429 guide covers only the older app API",
          "llms.txt indexes the older app API, not the extraction API or the MCP server",
          "MCP tool list not published",
          "Model-family prices come from an account manager"
        ],
        "agentNotes": [
          "Use the extraction API at `extraction-api.nanonets.com`, not `app.nanonets.com`, unless you already have a trained model",
          "Pass a JSON schema in `json_options` when downstream code needs fixed field names",
          "Use the async extract endpoints for long documents and poll `/api/v1/extract/results/{record_id}`",
          "On a 429, wait 30 seconds and double the delay each retry",
          "Budget per page, since a 10-page PDF through an extraction block is 10 runs"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 42.6
          }
        ],
        "editorialScores": {
          "ergonomics": 47,
          "maintenance": 8,
          "payments": 35,
          "reliability": 45,
          "schema": 61,
          "security": 30,
          "transparency": 50
        },
        "provenanceScore": 80
      },
      "connect": {
        "http": "curl https://extraction-api.nanonets.com/api/v1/extract/sync \\\n  -H \"Authorization: Bearer $NANONETS_API_KEY\" \\\n  -F file_url=https://example.com/invoice.pdf -F output_format=markdown",
        "claudeCode": "claude mcp add --transport http nanonets https://mcp.nanonets.com/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/docs.parse",
        "tool": "https://letme.dev/nanonets"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 100,
          "note": "100 credits after the free $50"
        },
        {
          "item": "Data extraction (complex AI block)",
          "unit": "1k-pages",
          "usd": 300,
          "note": "$0.30 a run at list price, one run a page"
        },
        {
          "item": "Standard AI block",
          "unit": "call",
          "usd": 0.1,
          "note": "classification, validation"
        },
        {
          "item": "Simple block",
          "unit": "call",
          "usd": 0.02,
          "note": "formatting, routing, export"
        }
      ],
      "provenance": {
        "legalEntity": "Nano Net Technologies Inc.",
        "domain": "nanonets.com",
        "domainRegistered": "2005-10-15",
        "endpointOnVendorDomain": true,
        "terms": "https://legal.nanonets.com/terms",
        "privacy": "https://legal.nanonets.com/privacy",
        "statusPage": "https://status.nanonets.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "RDAP gives a 2005 registration, older than the company, so the domain was probably bought later"
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nanonets.json",
      "live": {
        "slug": "nanonets",
        "probe": {
          "target": "https://extraction-api.nanonets.com/api/v2",
          "method": "get",
          "lastAt": "2026-10-09T09:26:58.101550713Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 435,
          "authRequired": false,
          "uptime24h": 98.85,
          "uptime30d": 99.52,
          "p50ms24h": 449,
          "p95ms24h": 473,
          "samples24h": 261,
          "samples30d": 2287,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 245
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 270
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 269
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 266
            },
            {
              "date": "2026-10-09",
              "probes": 101,
              "ok": 100
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.nanonets.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T09:25:19.196943157Z"
        },
        "versions": [
          {
            "registry": "pypi",
            "name": "docstrange",
            "version": "1.1.8",
            "released": "2025-10-31",
            "seenAt": "2026-10-08T16:22:23.085015913Z"
          }
        ],
        "githubStars": 1578,
        "pypiWeekly": 45,
        "securityTxt": {
          "url": "https://nanonets.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:31.49350314Z"
        },
        "llmsTxt": {
          "url": "https://docs.nanonets.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:41.768968107Z"
        },
        "domain": {
          "domain": "nanonets.com",
          "registered": "2005-10-15",
          "source": "https://rdap.verisign.com/com/v1/domain/nanonets.com",
          "checkedAt": "2026-10-04T13:08:18.933907619Z"
        },
        "pages": [
          {
            "url": "https://nanonets.com/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-08T18:22:18.24974879Z",
            "changedAt": "2026-10-07T18:07:42.664259032Z",
            "fingerprint": "ac68b0ebe4e7"
          },
          {
            "url": "https://legal.nanonets.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:28.634292777Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cdfa3c559c87"
          },
          {
            "url": "https://legal.nanonets.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:21:30.990180154Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8c04180e8356"
          }
        ],
        "updatedAt": "2026-10-09T09:26:58.101550713Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Amazon Web Services",
        "b": "Nanonets",
        "name": "Vendor"
      },
      {
        "a": "https://textract.us-east-1.amazonaws.com",
        "b": "https://extraction-api.nanonets.com/api/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the AWS Customer Agreement. The AWS SDKs and the Textractor helper library are Apache-2.0",
        "b": "MIT (docstrange library)",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-08",
        "b": "2025-10-31",
        "name": "Last release"
      },
      {
        "a": "2026-08-14",
        "b": "2020-12-02",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-18",
        "b": "2026-07-22",
        "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": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.9M npm/wk, 208k PyPI/wk",
        "b": "1.6k stars, 47 PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Amazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Amazon Textract or Nanonets API + MCP?"
      },
      {
        "answer": "Amazon Textract needs an API key. Nanonets API + MCP takes an API key or an OAuth sign-in.",
        "question": "Do Amazon Textract and Nanonets API + MCP need an API key?"
      },
      {
        "answer": "Yes. Amazon Textract has a hosted endpoint at https://textract.us-east-1.amazonaws.com and Nanonets API + MCP at https://extraction-api.nanonets.com/api/v2.",
        "question": "Can an agent call Amazon Textract and Nanonets API + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 96 against 45",
          "Schema \u0026 documentation, 82 against 61",
          "Agent ergonomics, 70 against 47",
          "Security \u0026 auth, 74 against 30",
          "Maintenance \u0026 community, 58 against 8",
          "Transparency \u0026 trust, 82 against 65"
        ],
        "also": [
          "Agent-ready, a grade of BB or better"
        ],
        "goodFor": "Teams already on AWS with documents in S3 that need OCR, tables and form fields at volume with IAM and CloudTrail controls, and for US invoices, receipts, identity documents and mortgage packages.",
        "slug": "amazon-textract",
        "watchFor": "AWS may store and use processed documents to improve the service, in other Regions too, unless an AI services opt-out policy is set on the AWS organisation"
      },
      {
        "aheadOn": null,
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "A team that wants schema-shaped JSON from mixed documents and is happy to sort out the two API generations.",
        "slug": "nanonets",
        "watchFor": "No public changelog and no dated release in the last 90 days"
      }
    ],
    "job": {
      "capability": "docs.parse",
      "name": "Docs parse"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-amazon-textract.json",
        "title": "Adobe PDF Services / PDF Extract API vs Amazon Textract",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-amazon-textract"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets.json",
        "title": "Adobe PDF Services / PDF Extract API vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-azure-document-intelligence.json",
        "title": "Amazon Textract vs Azure Document Intelligence",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-azure-document-intelligence"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-extend.json",
        "title": "Amazon Textract vs Extend API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-extend"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-llamaparse.json",
        "title": "Amazon Textract vs LlamaParse API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-llamaparse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-mistral-ocr.json",
        "title": "Amazon Textract vs Mistral OCR API",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-mistral-ocr"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-opendocrouter.json",
        "title": "Amazon Textract vs OpenDocRouter",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-opendocrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-reducto.json",
        "title": "Amazon Textract vs Reducto API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-reducto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-unstructured.json",
        "title": "Amazon Textract vs Unstructured API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-unstructured"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-document-intelligence-vs-nanonets.json",
        "title": "Azure Document Intelligence vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/azure-document-intelligence-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/extend-vs-nanonets.json",
        "title": "Extend API + MCP vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/extend-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaparse-vs-nanonets.json",
        "title": "LlamaParse API + MCP vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/llamaparse-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mistral-ocr-vs-nanonets.json",
        "title": "Mistral OCR API vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/mistral-ocr-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanonets-vs-opendocrouter.json",
        "title": "Nanonets API + MCP vs OpenDocRouter",
        "url": "https://www.anchorterminal.com/compare/nanonets-vs-opendocrouter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanonets-vs-reducto.json",
        "title": "Nanonets API + MCP vs Reducto API + MCP",
        "url": "https://www.anchorterminal.com/compare/nanonets-vs-reducto"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanonets-vs-unstructured.json",
        "title": "Nanonets API + MCP vs Unstructured API + MCP",
        "url": "https://www.anchorterminal.com/compare/nanonets-vs-unstructured"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-mindee.json",
        "title": "Amazon Textract vs Mindee API",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-mindee"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-veryfi.json",
        "title": "Amazon Textract vs Veryfi API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-veryfi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mindee-vs-nanonets.json",
        "title": "Mindee API vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/mindee-vs-nanonets"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanonets-vs-veryfi.json",
        "title": "Nanonets API + MCP vs Veryfi API + MCP",
        "url": "https://www.anchorterminal.com/compare/nanonets-vs-veryfi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-invofox.json",
        "title": "Amazon Textract vs Invofox",
        "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-invofox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invofox-vs-nanonets.json",
        "title": "Invofox vs Nanonets API + MCP",
        "url": "https://www.anchorterminal.com/compare/invofox-vs-nanonets"
      }
    ],
    "scores": [
      {
        "amazon-textract": 96,
        "by": 51,
        "edge": "amazon-textract",
        "key": "reliability",
        "name": "Reliability",
        "nanonets": 45,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-textract": 82,
        "by": 21,
        "edge": "amazon-textract",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "nanonets": 61,
        "weight": 13
      },
      {
        "amazon-textract": 70,
        "by": 23,
        "edge": "amazon-textract",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "nanonets": 47,
        "weight": 13
      },
      {
        "amazon-textract": 74,
        "by": 44,
        "edge": "amazon-textract",
        "key": "security",
        "name": "Security \u0026 auth",
        "nanonets": 30,
        "weight": 14
      },
      {
        "amazon-textract": 35,
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "nanonets": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-textract": 58,
        "by": 50,
        "edge": "amazon-textract",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "nanonets": 8,
        "weight": 7
      },
      {
        "amazon-textract": 82,
        "by": 17,
        "edge": "amazon-textract",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "nanonets": 65,
        "weight": 7
      }
    ],
    "summary": "Amazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories. Both do docs parse.",
    "verdicts": {
      "amazon-textract": "IAM policies limit a credential to single operations, CloudTrail logs every call, and page prices start at $1.50 per 1,000 in US East. Multipage files need S3 and an asynchronous job. Text detection covers six languages. Under the AWS Service Terms AWS may store and use documents to improve the service unless an AI services opt-out policy is set.",
      "nanonets": "Extraction API returns Markdown, CSV or JSON, with named fields or a JSON schema. No public changelog and no dated release in the last 90 days."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets",
    "json": "https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets.md",
    "slim": "https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets.min.md"
  },
  "markdown": "Amazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories. Both do docs parse.\n\n- Amazon Textract: grade BB, 73.5/100, rank #85 of 842. Markdown https://www.anchorterminal.com/tools/amazon-textract.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-textract.json\n- Nanonets API + MCP: grade E, 42.6/100, rank #790 of 842. Markdown https://www.anchorterminal.com/tools/nanonets.md · JSON https://www.anchorterminal.com/api/v1/tools/nanonets.json\n\n## Which one, for what\n\n### Amazon Textract (BB)\n\nGood for: Teams already on AWS with documents in S3 that need OCR, tables and form fields at volume with IAM and CloudTrail controls, and for US invoices, receipts, identity documents and mortgage packages.\n\nAhead on:\n- Reliability, 96 against 45\n- Schema \u0026 documentation, 82 against 61\n- Agent ergonomics, 70 against 47\n- Security \u0026 auth, 74 against 30\n- Maintenance \u0026 community, 58 against 8\n- Transparency \u0026 trust, 82 against 65\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n\nWatch for: AWS may store and use processed documents to improve the service, in other Regions too, unless an AI services opt-out policy is set on the AWS organisation\n\n### Nanonets API + MCP (E)\n\nGood for: A team that wants schema-shaped JSON from mixed documents and is happy to sort out the two API generations.\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No public changelog and no dated release in the last 90 days\n\n\n## Score by category\n\n| Category | Weight | Amazon Textract | Nanonets API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 96 | 45 | Amazon Textract +51 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 82 | 61 | Amazon Textract +21 |\n| Agent ergonomics | 13% (16.2 this run) | 70 | 47 | Amazon Textract +23 |\n| Security \u0026 auth | 14% (17.5 this run) | 74 | 30 | Amazon Textract +44 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 35 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 58 | 8 | Amazon Textract +50 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 82 | 65 | Amazon Textract +17 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **73.5 · BB** | **42.6 · E** | |\n\n## Facts side by side\n\n| Fact | Amazon Textract | Nanonets API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Amazon Web Services | Nanonets |\n| Hosted endpoint | `https://textract.us-east-1.amazonaws.com` | `https://extraction-api.nanonets.com/api/v2` |\n| Transports | HTTP | HTTP, Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under the AWS Customer Agreement. The AWS SDKs and the Textractor helper library are Apache-2.0 | MIT (docstrange library) |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-08 | 2025-10-31 |\n| Terms last updated | 2026-08-14 | 2020-12-02 |\n| Privacy policy last updated | 2026-05-18 | 2026-07-22 |\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 | yes |\n| Popularity | 1.9M npm/wk, 208k PyPI/wk | 1.6k stars, 47 PyPI/wk |\n| Agent reviews | none | 2/5 (2) |\n\n## Verdicts\n\n**Amazon Textract.** IAM policies limit a credential to single operations, CloudTrail logs every call, and page prices start at $1.50 per 1,000 in US East. Multipage files need S3 and an asynchronous job. Text detection covers six languages. Under the AWS Service Terms AWS may store and use documents to improve the service unless an AI services opt-out policy is set.\n\n**Nanonets API + MCP.** Extraction API returns Markdown, CSV or JSON, with named fields or a JSON schema. No public changelog and no dated release in the last 90 days.\n\n## Before you call either\n\n### Amazon Textract\n\n1. Sign with SigV4 for service `textract` at `textract.\u003cregion\u003e.amazonaws.com`, or call `aws textract detect-document-text`. The AWS CLI can't send image bytes, so reference an S3 object\n2. Use `StartDocumentTextDetection` or `StartDocumentAnalysis` for any PDF or TIFF of more than one page, pass a `ClientRequestToken`, then page `Get` calls with `NextToken` (1,000 blocks at most each)\n3. Fetch results within 7 days of starting a job, or set `OutputConfig` to write them to your own S3 bucket\n4. Request only the `FeatureTypes` you need. Forms cost $50 per 1,000 pages against $15 for tables or queries in US East\n5. Back off on `ProvisionedThroughputExceededException` (HTTP 400) and `ThrottlingException` (HTTP 500). Neither carries Retry-After, and default quotas are 1 call a second in most Regions\n6. Set the AI services opt-out policy on the AWS organisation before sending customer documents\n\n### Nanonets API + MCP\n\n1. Use the extraction API at `extraction-api.nanonets.com`, not `app.nanonets.com`, unless you already have a trained model\n2. Pass a JSON schema in `json_options` when downstream code needs fixed field names\n3. Use the async extract endpoints for long documents and poll `/api/v1/extract/results/{record_id}`\n4. On a 429, wait 30 seconds and double the delay each retry\n5. Budget per page, since a 10-page PDF through an extraction block is 10 runs\n\n## Questions\n\n### Which is better for AI agents, Amazon Textract or Nanonets API + MCP?\n\nAmazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories.\n\n### Do Amazon Textract and Nanonets API + MCP need an API key?\n\nAmazon Textract needs an API key. Nanonets API + MCP takes an API key or an OAuth sign-in.\n\n### Can an agent call Amazon Textract and Nanonets API + MCP without installing anything?\n\nYes. Amazon Textract has a hosted endpoint at https://textract.us-east-1.amazonaws.com and Nanonets API + MCP at https://extraction-api.nanonets.com/api/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets.json, and with the fewest tokens: https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"amazon-textract\", \"b\": \"nanonets\"}`. From a terminal: `anchor compare amazon-textract nanonets`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/amazon-textract.json and https://www.anchorterminal.com/api/v1/tools/nanonets.json\n\n## Other comparisons with Amazon Textract or Nanonets API + MCP\n\n- [Adobe PDF Services / PDF Extract API vs Amazon Textract](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-amazon-textract.md)\n- [Adobe PDF Services / PDF Extract API vs Nanonets API + MCP](https://www.anchorterminal.com/compare/adobe-pdf-extract-vs-nanonets.md)\n- [Amazon Textract vs Azure Document Intelligence](https://www.anchorterminal.com/compare/amazon-textract-vs-azure-document-intelligence.md)\n- [Amazon Textract vs Extend API + MCP](https://www.anchorterminal.com/compare/amazon-textract-vs-extend.md)\n- [Amazon Textract vs LlamaParse API + MCP](https://www.anchorterminal.com/compare/amazon-textract-vs-llamaparse.md)\n- [Amazon Textract vs Mistral OCR API](https://www.anchorterminal.com/compare/amazon-textract-vs-mistral-ocr.md)\n- [Amazon Textract vs OpenDocRouter](https://www.anchorterminal.com/compare/amazon-textract-vs-opendocrouter.md)\n- [Amazon Textract vs Reducto API + MCP](https://www.anchorterminal.com/compare/amazon-textract-vs-reducto.md)\n- [Amazon Textract vs Unstructured API + MCP](https://www.anchorterminal.com/compare/amazon-textract-vs-unstructured.md)\n- [Azure Document Intelligence vs Nanonets API + MCP](https://www.anchorterminal.com/compare/azure-document-intelligence-vs-nanonets.md)\n- [Extend API + MCP vs Nanonets API + MCP](https://www.anchorterminal.com/compare/extend-vs-nanonets.md)\n- [LlamaParse API + MCP vs Nanonets API + MCP](https://www.anchorterminal.com/compare/llamaparse-vs-nanonets.md)\n- [Mistral OCR API vs Nanonets API + MCP](https://www.anchorterminal.com/compare/mistral-ocr-vs-nanonets.md)\n- [Nanonets API + MCP vs OpenDocRouter](https://www.anchorterminal.com/compare/nanonets-vs-opendocrouter.md)\n- [Nanonets API + MCP vs Reducto API + MCP](https://www.anchorterminal.com/compare/nanonets-vs-reducto.md)\n- [Nanonets API + MCP vs Unstructured API + MCP](https://www.anchorterminal.com/compare/nanonets-vs-unstructured.md)\n- [Amazon Textract vs Mindee API](https://www.anchorterminal.com/compare/amazon-textract-vs-mindee.md)\n- [Amazon Textract vs Veryfi API + MCP](https://www.anchorterminal.com/compare/amazon-textract-vs-veryfi.md)\n- [Mindee API vs Nanonets API + MCP](https://www.anchorterminal.com/compare/mindee-vs-nanonets.md)\n- [Nanonets API + MCP vs Veryfi API + MCP](https://www.anchorterminal.com/compare/nanonets-vs-veryfi.md)\n- [Amazon Textract vs Invofox](https://www.anchorterminal.com/compare/amazon-textract-vs-invofox.md)\n- [Invofox vs Nanonets API + MCP](https://www.anchorterminal.com/compare/invofox-vs-nanonets.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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": "Amazon Textract vs Nanonets API + MCP",
        "url": ""
      }
    ],
    "description": "Amazon Textract scores 73.5 (BB) on agent readiness against Nanonets API + MCP's 42.6 (E), and leads in 6 of 7 scored categories. Both do docs parse. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Amazon Textract BB 73.5",
      "Nanonets API + MCP E 42.6",
      "scores"
    ],
    "h1": "Amazon Textract vs Nanonets API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-amazon-textract-vs-nanonets.png",
    "path": "/compare/amazon-textract-vs-nanonets",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Amazon Textract vs Nanonets API + MCP for AI agents, BB 73.5 vs E 42.6",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/amazon-textract-vs-nanonets"
  },
  "tokens": {
    "markdown": 2550,
    "slim": 680
  },
  "version": 1
}
