Head to head · Document parsing · October 2026 research run

Azure Document Intelligence vs Docling

Azure Document Intelligence and Docling score within a point of each other on agent readiness, 64.8 (B) and 64.3 (B). Docling leads on agent ergonomics, payments & pricing and maintenance & community. Both do document parsing.

Best document parsing, OCR and extraction APIs for AI agents · All 182 documents comparisons

Which one, for what

Azure Document Intelligence B

Best for Teams already on Azure that want OCR, layout to Markdown and prebuilt invoice, receipt, identity and tax models with Entra ID and regional processing.

Ahead on

  • Schema & documentation, 86 against 77
  • Security & auth, 71 against 53
  • Transparency & trust, 79 against 65

Also in its favour

  • No incidents deducted, where Docling loses 8 points for them

Watch for

Every analysis is asynchronous. A POST returns 202 with Operation-Location, and the caller polls for the result

Docling B

Best for Self-hosted PDF and Office conversion to Markdown or JSON for RAG and agents that can't send documents out.

Ahead on

  • Agent ergonomics, 77 against 64
  • Payments & pricing, 60 against 20
  • Maintenance & community, 89 against 25

Also in its favour

  • No key needed to call it
  • Runs on your own machine
  • Open source

Watch for

28 advisories from 2 June to 23 October 2026, five High, including arbitrary file read and write through the opt-in Tectonic TikZ engine

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Maintenance & community Docling +64

Azure Document Intelligence 25

Read as a closed service with official SDKs, from the service's own models as this run reads other Azure and AWS listings. The REST specification in Azure/azure-rest-api-specs has had no API or description change since 3 August, only tooling (TypeSpec suppressions on 3 and 13 August, the folder move of 28 September, linter rulesets on 14 October). The what's new page's newest entry is the March 2026 tax model update, more than 180 days back. The newest SDK releases, Java 1.0.10 on 18 August and 1.0.11 on 6 October 2026, only raise azure-core and azure-core-http-netty. Dependency-only releases count half on the 90-day line and can't set the recency line, as azure-translator, so the 8 October departure that gave 15 on the Java date is withdrawn (0 of 30). Two dependency-only releases at half each, and no service change, in 90 days (0 of 20). A what's new page with one entry in 2026, Microsoft Q&A and the SDK issue trackers on GitHub, which we did not read (8 of 15). Official SDKs in four languages target the current GA API, but Python (1.0.2, 26 March 2025), JavaScript (1.1.0, 8 May 2025) and .NET (1.0.0, 16 December 2024) have had no release since (12 of 15). The Python package declares Python 3.8 to 3.12 and is built in the azure-sdk pipelines, whose results we did not check (5 of 10). 0+0+8+12+5 = 25.

Docling 89

v2.148.0 on 5 November 2026, the day before this check (30). 13 releases from 9 October to 5 November (20). Open issues and pull requests are numerous, an AI triage workflow and PR reminders run, and six maintainers are named; replies not sampled (17 of 25). docling-mcp publishes to the official MCP registry on release under io.github.docling-project, per its workflow and server.json; the registry entry itself was not read (12 of 15). CI, a dependency-update workflow and uv.lock (10). 30+20+17+12+10 = 89.

Payments & pricing Docling +40

Azure Document Intelligence 20

No x402, MPP or L402 (0). Per-1,000-page prices are public through the Azure Retail Prices API without a login, while the pricing page shows "$-" until a script fills it (20). F0 gives 500 pages a month, but it sits on an Azure account, and the free account page asks for a phone number and a credit or debit card (0). A person signs up in a browser (0).

Docling 60

Self-hosted rule. Free MIT software with nothing to buy, so 20 + 20 + 20, and no payment protocol (0). 60.

Security & auth Azure Document Intelligence +18

Azure Document Intelligence 71

Microsoft Entra ID bearer tokens with Azure RBAC and managed identities, or two resource keys. The OpenAPI document and the docs give the key only as a header (30). RBAC can limit a caller, but a resource key reaches every data-plane call, among them deleting custom models, and nothing asks for confirmation. Analysis itself changes nothing (14 of 20). The service returns text from untrusted documents, and no guidance on injected instructions was found in the pages read (0 of 15). The Foundry Tools diagnostic logging page describes Audit and RequestResponse logs through Azure Monitor once the owner adds a diagnostic setting. We did not confirm the fields for Document Intelligence (12 of 15). MSRC coordinated disclosure and bounty policies and a CSAF feed. The microsoft.com security.txt passed its Expires date on 23 September 2026 and still carries it on 1 November, and we did not confirm Document Intelligence on an audit scope list (15 of 20). An MSRC affected-product search on 1 November finds no CVE naming Document Intelligence, Form Recognizer or Cognitive Services. The Azure AI Foundry CVEs of 2026 name Foundry, not this service, so no deduction, as on the Azure Speech and Translator listings. 30+14+0+12+15 = 71.

Docling 53

Framework reading. No credentials for local use; docling-serve has one optional shared key, off by default (20 of 30). Remote services are off unless explicitly enabled, local file fetch is guarded by flags, and MCP tools carry read-only and destructive annotations; manipulation tools can delete items and save files (12 of 20). Converted documents are untrusted text and no prompt-injection guidance was found (3 of 15). Logging only, no audit trail (3 of 15). A disclosure policy with private reporting, 28 advisories published in public with fixed versions, under the LF AI & Data Foundation; no bug bounty (15 of 20). 20+12+3+3+15 = 53. The advisories themselves are the deduction.

Transparency & trust Azure Document Intelligence +14

Azure Document Intelligence 79

Closed service under Microsoft's Product Terms, with MIT client libraries (15 of 30). The data privacy page, dated 22 July 2026, says data is processed in the resource's region, held with results for 24 hours in storage shared by customers in that region and logically isolated, then deleted, with a delete call for earlier removal. It says nothing on whether documents are used to improve the service, the Product Terms' training clause covers generative AI services only, and we did not read the Data Protection Addendum (22 of 30). The overview gives a version table with dated retirements, v2.1 on 15 September 2027, announced three years ahead, and v3.0 on 30 March 2029 (20). Processing stays in the resource's region. The sub-processor list is on the Service Trust Portal, which we did not read (12 of 20).

Docling 65

MIT, an OSI licence, with model licences noted as separate (30). Runs locally, remote services off by default and air-gapped use documented; no privacy statement is needed for local use, but model downloads from Hugging Face on first run are only partly described (22 of 30). Breaking changes are marked in the changelog, with no deprecation policy or dated notices (10 of 20). No telemetry found in the source; nothing to opt out of (15 of 20). 30+22+10+15 = 77.

Agent ergonomics Docling +13

Azure Document Intelligence 64

API reading. pages limits what is analysed, outputContentFormat=markdown gives one Markdown string and add-ons are off unless asked for. The result still carries every word and line with polygons, with no field selection, and the limits page allows a response of up to 500 MB (14 of 25). List calls page with nextLink. No filter on models or operations, and an analysis result comes back whole (12 of 20). Errors are JSON with a code, a message and an inner code such as InvalidContentLength or ModelNotReady that says what to change (16 of 20). No idempotency key, so a repeated POST starts and bills a second analysis. Results stay for 24 hours, so polling again is safe (10 of 20). A call needs only a model ID, api-version and a URL or bytes, and SDKs exist for Python, JavaScript, .NET and Java. Every analysis takes a POST and at least one GET (12 of 15).

Docling 77

About 25 MCP tools in the default groups (15), selectable as conversion, generation and manipulation groups, with anchor tools to read one part of a document (22 of 25). max_num_pages, max_file_size and page ranges on conversion, Markdown or JSON export (15 of 20). Errors are exceptions with messages, such as an unknown document key listing the valid ones (12 of 20). readOnlyHint and destructiveHint on the MCP tools, and conversions are repeatable (18 of 20). Sensible defaults and one call to convert; Python only, with a docling-client package for docling-serve (10 of 15). 22+15+12+18+10 = 77.

Schema & documentation Azure Document Intelligence +9

Azure Document Intelligence 86

A public OpenAPI 2.0 document for 2024-11-30 in Azure/azure-rest-api-specs, generated from TypeSpec, with 27 operations (25). learn.microsoft.com/llms.txt returns 404, but every Learn page we asked for with Accept: text/markdown came back as Markdown, so half (5 of 10). Operation descriptions are one line each and restate the operation name. The overview says which model fits which document and links a page on choosing between this service and Content Understanding (14 of 20). 25 enums, 94 length, pattern and range constraints and a pattern on pages and modelId. queryFields is a free list of strings and the either-or between urlSource and base64Source is stated only in prose (13 of 15). An example on every operation, and an error page with nine top-level codes and 30 inner codes. 429 is not in that table (14 of 15). Dated api-version values, a what's new page and an SDK release history page (15).

Docling 77

No OpenAPI file is published; docling-serve is a FastAPI app that serves its schema when run, and docling-mcp's tools carry typed inputs with Field descriptions from Pydantic (20 of 25). No llms.txt on the docs site; Markdown docs and AGENTS.md in the repository (5 of 10). MCP tool docstrings say what each tool returns and which other tool supplies its key, with little on when not to use one (14 of 20). Pydantic types with descriptions, few enums (12 of 15). Many runnable examples in docs/examples, with errors raised as Python exceptions that name the fix, such as OperationNotAllowed and unknown document keys listing valid ones (11 of 15). Changelog per release (15). 20+5+14+12+11+15 = 77.

Score by category

CategoryWeight this runAzure Document IntelligenceDoclingEdge
Reliability16%208285Docling +3
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28677Azure Document Intelligence +9
Agent ergonomics13%16.26477Docling +13
Security & auth14%17.57153Azure Document Intelligence +18
Payments & pricing10%12.52060Docling +40
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.82589Docling +64
Transparency & trust7%8.87965Azure Document Intelligence +14
Negative events≤150-8
TotalB 64.8/100B 64.3/100

Facts side by side

FactAzure Document IntelligenceDocling
KindHTTP APISDK + MCP
VendorMicrosoftDocling Project (LF AI & Data Foundation, started at IBM Research Zurich)
Hosted endpointno (local only)no (local only)
TransportsHTTPstdio, Streamable HTTP, HTTP
AuthOAuth or keyNone
PricingFreemiumFree
x402nono
LicenceProprietary service under Microsoft's Product Terms. The client libraries are MITMIT
Tools exposednone25
Read-only variant documentednono
llms.txtnono
MCP registrynot listedio.github.docling-project/docling-mcp
Last release2025-05-082026-11-05
Terms last updatedno date givenno document linked
Privacy policy last updated2026-09-01no document linked
Customer content may train modelsyesnot read yet
Terms restrict automated accessyesnot read yet
Terms restrict benchmarkingyesnot read yet
Terms or service can change without noticenot found in the textnot read yet
Arbitration or class-action waivernot found in the textnot read yet
Popularity386k npm/wk, 2.1M PyPI/wk70k stars, 947k PyPI/wk
Agent reviews3.5/5 (4)none

How the scores have moved

Verdicts

Azure Document Intelligence

A public OpenAPI document with 27 operations, Markdown output from the layout model, Microsoft Entra ID or header-only keys, and 24-hour retention with a delete call. Every analysis is a two-step asynchronous job, the result can't be trimmed, an Azure subscription with a card comes first, and the service hasn't changed since March 2026.

Docling

An MIT Python library with a CLI, a REST server and a 25-tool MCP server converts PDFs, Office files, HTML and scans into structured documents on the user's own machine, with near-daily releases. Twenty-eight security advisories were published between June and October 2026, five rated High, all for untrusted-input handling.

Before you call either

Azure Document Intelligence

  1. POST to {endpoint}/documentintelligence/documentModels/{modelId}:analyze?api-version=2024-11-30, then GET the Operation-Location URL until status is succeeded
  2. Wait at least 2 seconds between polls and follow the Retry-After header. Default limits are 15 analyse calls and 50 result reads a second on S0
  3. Use prebuilt-read for plain text at $1.50 per 1,000 pages and prebuilt-layout with outputContentFormat=markdown for tables and headings at $10
  4. Set pages (for example 1-3,5) to limit both the bill and the response size. F0 stops at two pages per request
  5. Send the key only in the Ocp-Apim-Subscription-Key header, or use an Entra ID token for the scope https://cognitiveservices.azure.com/.default
  6. Treat extracted text as untrusted input. Results expire 24 hours after the job completes

Docling

  1. Keep enable_remote_services and remote image fetching off when converting untrusted files, and set max_num_pages and max_file_size
  2. Upgrade to v2.148.0 or later before parsing untrusted documents, since recent releases fix memory-exhaustion and file-read flaws
  3. Start docling-mcp with only the tool groups the task needs, and use the anchor tools to read parts of a long document
  4. Treat converted text as untrusted input, never as instructions
  5. Set DOCLING_SERVE_API_KEY before exposing docling-serve beyond localhost

Questions

Which is better for AI agents, Azure Document Intelligence or Docling?

Azure Document Intelligence and Docling score within a point of each other on agent readiness, 64.8 (B) and 64.3 (B). Docling leads on agent ergonomics, payments & pricing and maintenance & community.

Can an agent call Azure Document Intelligence and Docling without installing anything?

No hosted endpoint is listed for Azure Document Intelligence. Docling runs on your own machine, with no hosted endpoint listed.

Are Azure Document Intelligence and Docling open source?

No open-source release is listed for Azure Document Intelligence. Docling is open source (MIT).

Other comparisons with Azure Document Intelligence or Docling

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.