{
  "data": {
    "a": {
      "slug": "cloudconvert",
      "name": "CloudConvert API",
      "vendor": "CloudConvert (Lunaweb GmbH)",
      "vendorUrl": "https://cloudconvert.com",
      "kind": "http-api",
      "category": "pdf-tools",
      "summary": "File conversion API from Lunaweb GmbH in Germany. Jobs chain import, convert, merge, optimise, watermark and PDF tasks across more than 200 formats, through a REST API, six SDKs, a CLI and a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/cloudconvert",
      "markdownUrl": "https://www.anchorterminal.com/tools/cloudconvert.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cloudconvert.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cloudconvert.json",
      "repo": "https://github.com/cloudconvert/cloudconvert-node",
      "license": "Proprietary service under CloudConvert's terms of service. The SDKs and the CLI on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.cloudconvert.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "cloudconvert"
        },
        {
          "registry": "npm",
          "name": "cloudconvert-cli"
        },
        {
          "registry": "pypi",
          "name": "cloudconvert"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve API key from the dashboard, sent as `Authorization: Bearer API_KEY`. A key takes any of six scopes chosen at creation and does not expire until revoked. OAuth 2.0 clients use the authorisation code or implicit grant at `https://cloudconvert.com/oauth/authorize`. The hosted MCP server signs in by OAuth and asks for `user.read`, `task.read` and `task.write`.",
      "pricing": "freemium",
      "pricingNotes": "Free plan with 10 conversion credits a day and no card, limited to 1 GB files, 5 minutes of processing and 5 concurrent tasks. Paid credits come as prepaid packages that never expire or as monthly subscriptions, from 500 to 1,000,000 credits. A conversion costs a base of 1 credit (2 for Office or iWork to PDF, 4 for PDF to Office) plus 1 a minute after the first, and only successful conversions are charged. The price per credit is drawn by a script and was not readable. The API page says prices start at $0.008 a file at 10,000 files. A sandbox API runs test files without credits (https://cloudconvert.com/pricing, checked 2026-10-09).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the pricing page or the terms (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": 24,
      "popularity": {
        "githubStars": 192,
        "npmWeekly": 103789,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://cloudconvert.com/docs/getting-started/introduction",
      "llmsTxt": "https://cloudconvert.com/docs/llms.txt",
      "capabilities": [
        "pdf.convert",
        "pdf.merge",
        "pdf.generate",
        "docs.ocr"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "llms-txt",
        "async-jobs",
        "webhooks",
        "sandbox",
        "cli",
        "php",
        "node",
        "python",
        "ruby",
        "java",
        "dotnet",
        "status-page",
        "iso27001",
        "eu-hosted"
      ],
      "lastRelease": "2026-09-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 66.4,
        "grade": "B",
        "agentReady": false,
        "rank": 291,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 71,
          "maintenance": 68,
          "payments": 35,
          "reliability": 80,
          "schema": 59,
          "security": 71,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "API keys and OAuth tokens carry six scopes, the terms promise 99.9 per cent monthly uptime with refunds, and uploaded files are deleted within 24 hours. No OpenAPI document or changelog was found, and the per-credit price is drawn by a script on the pricing page.",
        "bestFor": "An agent that converts between many file formats, merges to PDF, or needs OCR, PDF/A, encryption and page operations in one job, with storage on S3, Azure or Google Cloud.",
        "strengths": [
          "API keys are created with any of six scopes (`user.read`, `user.write`, `task.read`, `task.write`, `webhook.read`, `webhook.write`) and can be revoked",
          "The terms of service promise 99.9 per cent monthly uptime, with 1 per cent of the last invoice refunded per 10 minutes of unavailability",
          "Hosted MCP server at `https://mcp.cloudconvert.com` since 3 September 2026, with 24 tools and OAuth sign-in instead of a pasted key",
          "Files are deleted after 24 hours at the latest, and regional endpoints keep processing in Germany or in Virginia",
          "A 429 answer carries `Retry-After`, and the rate-limited endpoints return `X-RateLimit-Limit` and `X-RateLimit-Remaining`"
        ],
        "weaknesses": [
          "No OpenAPI document and no API changelog were found. The blog has one post since August 2024",
          "The price per credit is drawn by a script on the pricing page, so no price table is readable without a browser",
          "Rate limits are described as dynamic, with no fixed number per plan",
          "No idempotency key. The docs ask callers not to retry failed tasks automatically",
          "MCP tools take input files only as HTTP or HTTPS URLs, so local attachments fail in clients that do not turn uploads into links",
          "The terms forbid using the API to run a stand-alone raw file conversion service"
        ],
        "agentNotes": [
          "Build each job from an import task, one or more processing tasks and an `export/url` task, then read the download links from the export task's `result.files`",
          "Call `GET /v2/operations` with `include=options` to find the options a format pair accepts before creating a `convert` task",
          "Do not retry a failed task automatically. CloudConvert retries retryable errors itself, and a retry endpoint creates a new task",
          "Download output within 24 hours. Tasks, files and export URLs are deleted after that",
          "Use `https://sandbox.api.cloudconvert.com/v2` for tests. It consumes no credits and accepts only a fixed set of approved test files"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 66.4
          }
        ],
        "editorialScores": {
          "ergonomics": 71,
          "maintenance": 68,
          "payments": 35,
          "reliability": 80,
          "schema": 59,
          "security": 71,
          "transparency": 64
        },
        "provenanceScore": 85
      },
      "connect": {
        "install": "npm install -g cloudconvert-cli",
        "http": "curl -X POST \"https://api.cloudconvert.com/v2/jobs\" \\\n  -H \"Authorization: Bearer API_KEY\" \\\n  -H \"Content-type: application/json\" \\\n  -d '{\"tasks\":{\"import-my-file\":{\"operation\":\"import/url\",\"url\":\"https://my.url/file.docx\"},\"convert-my-file\":{\"operation\":\"convert\",\"input\":\"import-my-file\",\"output_format\":\"pdf\"},\"export-my-file\":{\"operation\":\"export/url\",\"input\":\"convert-my-file\"}}}'"
      },
      "letme": {
        "capability": "https://letme.dev/pdf.convert",
        "tool": "https://letme.dev/cloudconvert"
      },
      "area": "web-data",
      "provenance": {
        "legalEntity": "Lunaweb GmbH",
        "domain": "cloudconvert.com",
        "domainRegistered": "2008-10-02",
        "endpointOnVendorDomain": true,
        "terms": "https://cloudconvert.com/terms",
        "privacy": "https://cloudconvert.com/privacy",
        "statusPage": "https://status.cloudconvert.com",
        "changelog": "",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "notes": [
          "The imprint names Lunaweb GmbH, Nördliche Münchner Straße 47, 82031 Grünwald, Germany, commercial register Amtsgericht München HRB 238086.",
          "The terms of service are dated 12 April 2022 and say they apply to the entire website and any API usage. They incorporate the privacy policy, dated 17 April 2026.",
          "security.txt names a contact address, expires on 8 April 2027 and says there is no formal bug bounty.",
          "RDAP for cloudconvert.com gives a registration date of 2008-10-02.",
          "No API changelog was found. The blog carries product announcements, one of them since August 2024.",
          "The status page runs on Better Stack."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cloudconvert.json",
      "live": {
        "slug": "cloudconvert",
        "probe": {
          "target": "https://api.cloudconvert.com/v2",
          "method": "get",
          "lastAt": "2026-10-10T02:07:05.323286585Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 45,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 49,
          "p95ms24h": 128,
          "samples24h": 107,
          "samples30d": 107,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.cloudconvert.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:50:14.754320673Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "cloudconvert/cloudconvert-node",
            "version": "3.0.0",
            "released": "2025-04-24",
            "seenAt": "2026-10-09T16:45:56.322350445Z"
          },
          {
            "registry": "npm",
            "name": "cloudconvert",
            "version": "3.0.0",
            "seenAt": "2026-10-09T16:45:53.861394323Z"
          },
          {
            "registry": "npm",
            "name": "cloudconvert-cli",
            "version": "3.0.1",
            "seenAt": "2026-10-09T16:45:54.924682633Z"
          },
          {
            "registry": "pypi",
            "name": "cloudconvert",
            "version": "2.1.0",
            "released": "2022-03-30",
            "seenAt": "2026-10-09T16:45:56.121976508Z"
          }
        ],
        "githubStars": 192,
        "npmWeekly": 103789,
        "pypiWeekly": 152991,
        "pages": [
          {
            "url": "https://cloudconvert.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:33:56.706849483Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "05f0d28019ec"
          },
          {
            "url": "https://cloudconvert.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:34:00.208661298Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "618055db1cbe"
          },
          {
            "url": "https://cloudconvert.com/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:34:00.730376469Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ef7bfd5d6f7a"
          }
        ],
        "updatedAt": "2026-10-10T02:07:05.323286585Z"
      }
    },
    "answer": "Nutrient DWS Processor API scores 68.7 (B) on agent readiness against CloudConvert API's 66.4 (B), and leads in 4 of 7 scored categories. CloudConvert API leads on reliability and security \u0026 auth.",
    "b": {
      "slug": "nutrient-dws-processor",
      "name": "Nutrient DWS Processor API",
      "vendor": "Nutrient (PSPDFKit GmbH)",
      "vendorUrl": "https://www.nutrient.io",
      "kind": "http-api",
      "category": "pdf-tools",
      "summary": "Hosted REST API from Nutrient (formerly PSPDFKit) that generates, converts, merges, OCRs, redacts, watermarks and signs PDF and Office documents. Agents call it with a Bearer key or through a local stdio MCP server.",
      "url": "https://www.anchorterminal.com/tools/nutrient-dws-processor",
      "markdownUrl": "https://www.anchorterminal.com/tools/nutrient-dws-processor.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/nutrient-dws-processor.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/nutrient-dws-processor.json",
      "repo": "https://github.com/PSPDFKit/nutrient-dws-mcp-server",
      "license": "Proprietary service under the Nutrient DWS API licence agreement. The MCP server and the TypeScript and Python clients are MIT",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://api.nutrient.io",
      "packages": [
        {
          "registry": "npm",
          "name": "@nutrient-sdk/dws-mcp-server"
        },
        {
          "registry": "npm",
          "name": "@nutrient-sdk/dws-client-typescript"
        },
        {
          "registry": "pypi",
          "name": "nutrient-dws"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve. A person signs up at dashboard.nutrient.io and copies a live key, sent as `Authorization: Bearer \u003ckey\u003e`. Keys can be scoped to one DWS product. `POST /tokens` issues a JWT limited to named operations and origins, valid for one hour by default and at most 24, and revocable with `DELETE /tokens`. The MCP server uses OAuth in a browser (PKCE, dynamic client registration, scopes such as `product:processor`) or `NUTRIENT_DWS_API_KEY` for headless use. Test keys need Support to enable them.",
      "pricing": "freemium",
      "pricingNotes": "Free plan of 50 credits a month, no card, with watermarked output. Paid plans are Starter $75 a month for 1,000 credits, Growth $275 for 5,000 and Pro $445 for 10,000, with 10 per cent off billed yearly and custom plans above that. Most tools cost a fixed number of credits per use, from 0.5 to 10, and AI redaction is priced per page. Pay-as-you-go overage has a spending cap, and on the free plan starts with a $25 wallet load. The per-credit overage rate was not readable (https://www.nutrient.io/api/pricing/processor-api/, checked 2026-10-08).",
      "priceSummary": "$75 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the guides, the OpenAPI document, the pricing page or the MCP server README (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 8,
      "popularity": {
        "githubStars": 71,
        "npmWeekly": 2701,
        "pypiWeekly": 2214,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://www.nutrient.io/guides/dws-processor/",
      "llmsTxt": "https://www.nutrient.io/guides/dws-processor/llms.txt",
      "openapi": "https://cdn.cloud.nutrient.io/dws/assets/specs/public@1.19.0-ec566a84de4ef6c97fd9b586262ddcc4.yml",
      "registryName": "io.github.PSPDFKit/nutrient-dws-mcp-server",
      "capabilities": [
        "pdf.convert",
        "pdf.merge",
        "pdf.forms",
        "pdf.generate",
        "pdf.extract",
        "docs.ocr",
        "docs.tables"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "typescript",
        "python",
        "async-jobs",
        "free-tier",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-08-27",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.7,
        "grade": "B",
        "agentReady": false,
        "rank": 209,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 84,
          "maintenance": 78,
          "payments": 40,
          "reliability": 68,
          "schema": 84,
          "security": 66,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -2,
        "negativeNotes": [
          "2026-10-08. The product page FAQ says the API runs without strict rate limits or hard caps, while the pricing guide sets 100 requests a minute per key on every plan. The MCP product page also invites users to start on a free test key, which the test-mode guide says Support must enable first. Two points (https://www.nutrient.io/api/processor-api/, https://www.nutrient.io/guides/dws-processor/pricing.md)."
        ],
        "verdict": "A public OpenAPI 3.1 document, JSONPath-level error bodies and OAuth or operation-limited tokens make the API easy for an agent to call, and 50 free credits a month need no card. The status feed shows 61 minutes of platform downtime on 13 July 2026, and the terms let plans with data retention train models on submitted files.",
        "bestFor": "An agent that must change or produce documents (merge, convert, OCR, redact, sign, fill forms) in one chained request with predictable per-use cost.",
        "strengths": [
          "OpenAPI 3.1 document (version 1.19.0) for 17 operations, with llms.txt indexes and a Markdown twin of every guide",
          "Errors return `failingPaths` in JSONPath form, a `requestId`, and machine-readable `error.reason` codes for async jobs",
          "OAuth with PKCE, dynamic client registration and per-product scopes, plus JWTs limited by operation, origin and expiry of up to 24 hours",
          "All eight MCP tools carry `readOnlyHint`, `destructiveHint`, `idempotentHint` and `openWorldHint`, and file access can be confined to a sandbox directory",
          "Free plan of 50 credits a month with no card, and the vendor says failed requests (4xx or 5xx) cost no credits"
        ],
        "weaknesses": [
          "The status feed records 61 minutes of DWS Platform downtime on 13 July 2026 and five days with Processor API downtime since 23 July",
          "Plans with data retention enabled let Nutrient keep files and train models on them, and no public page says which plans those are",
          "The product page says there are no strict rate limits, while the pricing guide sets 100 requests a minute per key on every plan",
          "No public API changelog or deprecation policy was found, and the terms allow changes to the API at any time",
          "`Idempotency-Key` works only on async `/build` requests, and free-plan output is watermarked"
        ],
        "agentNotes": [
          "Send `Authorization: Bearer \u003ckey\u003e` to `https://api.nutrient.io`. Use `POST /build` with an `instructions` JSON part to chain several actions in one charged request",
          "Call `POST /analyze_build` first to get the credit cost of a build. The call is free",
          "Stay under 100 requests a minute per key and back off exponentially on 429. Test keys allow 10 a minute and 5 MB",
          "For long jobs send `Prefer: respond-async` with an `Idempotency-Key`, then poll the `Location` URL with `X-Async-Job-Token` after `Retry-After`",
          "Set `SANDBOX_PATH` for the MCP server. Without it the server reads and writes any path the user account can reach"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68.7
          }
        ],
        "editorialScores": {
          "ergonomics": 84,
          "maintenance": 78,
          "payments": 40,
          "reliability": 68,
          "schema": 84,
          "security": 66,
          "transparency": 62
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "npm install @nutrient-sdk/dws-client-typescript",
        "http": "curl -X POST 'https://api.nutrient.io/build' \\\n  -H 'Authorization: Bearer YOUR_API_KEY' \\\n  -F 'index.html=@index.html' \\\n  -F 'instructions={\"parts\":[{\"html\":\"index.html\"}]}' \\\n  -o hello.pdf",
        "config": {
          "mcpServers": {
            "nutrient-dws": {
              "args": [
                "-y",
                "@nutrient-sdk/dws-mcp-server"
              ],
              "command": "npx",
              "env": {
                "SANDBOX_PATH": "/your/sandbox/directory"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/pdf.convert",
        "tool": "https://letme.dev/nutrient-dws-processor"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 75,
          "note": "1,000 credits. $67 a month billed yearly"
        },
        {
          "item": "Growth",
          "unit": "month",
          "usd": 275,
          "note": "5,000 credits. $247 a month billed yearly"
        },
        {
          "item": "Pro",
          "unit": "month",
          "usd": 445,
          "note": "10,000 credits. $399 a month billed yearly"
        },
        {
          "item": "Credit on Starter",
          "unit": "credit",
          "usd": 0.075,
          "note": "Worked out from $75 for 1,000 credits. Merge costs 1 credit, OCR 2, a digital signature 10"
        }
      ],
      "provenance": {
        "legalEntity": "PSPDFKit GmbH",
        "domain": "nutrient.io",
        "domainRegistered": "2019-12-03",
        "endpointOnVendorDomain": true,
        "terms": "https://www.nutrient.io/legal/cloud-terms/",
        "privacy": "https://www.nutrient.io/legal/privacy/",
        "statusPage": "https://www.nutrientstatus.com",
        "changelog": "https://github.com/PSPDFKit/nutrient-dws-mcp-server/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The DWS API licence agreement (last updated September 2026) names PSPDFKit GmbH, doing business as Nutrient, Kaiserstrasse 117/17, 1070 Vienna, Austria, and applies Austrian law. Section 9 and Schedule 1 are the data processing terms.",
          "The privacy policy has a Nutrient API section naming PSPDFKit GmbH as controller, with a Processor API subsection.",
          "The API answers at https://api.nutrient.io. An unauthenticated request returned 401 with a JSON error and request id.",
          "The status page is on a separate domain, www.nutrientstatus.com, run on Better Stack.",
          "The changelog link is the MCP server's. No public changelog for the API itself was found.",
          "www.nutrient.io/.well-known/security.txt returns 404. Reports go through www.nutrient.io/security/report-vulnerability/.",
          "RDAP for nutrient.io gives a registration date of 2019-12-03.",
          "robots.txt carries `Content-Signal: search=yes, ai-input=yes, ai-train=yes` for every user agent."
        ],
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nutrient-dws-processor.json",
      "live": {
        "slug": "nutrient-dws-processor",
        "probe": {
          "target": "https://api.nutrient.io",
          "method": "get",
          "lastAt": "2026-10-10T02:07:18.052465046Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 227,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 180,
          "p95ms24h": 361,
          "samples24h": 191,
          "samples30d": 191,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 169,
              "ok": 169
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.nutrientstatus.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:50:52.550543026Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "PSPDFKit/nutrient-dws-mcp-server",
            "version": "v0.1.3",
            "released": "2026-08-28",
            "seenAt": "2026-10-09T17:08:59.802686806Z"
          },
          {
            "registry": "npm",
            "name": "@nutrient-sdk/dws-client-typescript",
            "version": "3.0.0",
            "seenAt": "2026-10-09T17:08:58.25092768Z"
          },
          {
            "registry": "npm",
            "name": "@nutrient-sdk/dws-mcp-server",
            "version": "0.1.3",
            "seenAt": "2026-10-09T17:08:57.387345054Z"
          },
          {
            "registry": "pypi",
            "name": "nutrient-dws",
            "version": "3.1.0",
            "released": "2026-05-27",
            "seenAt": "2026-10-09T17:08:59.618357401Z"
          }
        ],
        "githubStars": 71,
        "npmWeekly": 104,
        "pypiWeekly": 2214,
        "securityTxt": {
          "url": "https://nutrient.io/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-09T15:39:51.040080182Z"
        },
        "llmsTxt": {
          "url": "https://www.nutrient.io/guides/dws-processor/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:02:28.463227094Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/PSPDFKit/nutrient-dws-mcp-server/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:44:41.120278115Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8a1c5e1c4c5e"
          },
          {
            "url": "https://www.nutrient.io/api/pricing/processor-api/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:31.43057066Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "697e6a6df784"
          },
          {
            "url": "https://www.nutrient.io/legal/privacy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:36.685167408Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c741b79fc3f2"
          },
          {
            "url": "https://www.nutrient.io/legal/cloud-terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:34.76762467Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fb0a77e35d4f"
          }
        ],
        "updatedAt": "2026-10-10T02:07:18.052465046Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "CloudConvert (Lunaweb GmbH)",
        "b": "Nutrient (PSPDFKit GmbH)",
        "name": "Vendor"
      },
      {
        "a": "https://api.cloudconvert.com/v2",
        "b": "https://api.nutrient.io",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under CloudConvert's terms of service. The SDKs and the CLI on GitHub are MIT",
        "b": "Proprietary service under the Nutrient DWS API licence agreement. The MCP server and the TypeScript and Python clients are MIT",
        "name": "Licence"
      },
      {
        "a": "24",
        "b": "8",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.PSPDFKit/nutrient-dws-mcp-server",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-03",
        "b": "2026-08-27",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-09-01",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes, with an opt-out",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "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": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "192 stars, 104k npm/wk",
        "b": "71 stars, 2.7k npm/wk, 2.2k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Nutrient DWS Processor API scores 68.7 (B) on agent readiness against CloudConvert API's 66.4 (B), and leads in 4 of 7 scored categories. CloudConvert API leads on reliability and security \u0026 auth.",
        "question": "Which is better for AI agents, CloudConvert API or Nutrient DWS Processor API?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do CloudConvert API and Nutrient DWS Processor API need an API key?"
      },
      {
        "answer": "Yes. CloudConvert API has a hosted endpoint at https://api.cloudconvert.com/v2 and Nutrient DWS Processor API at https://api.nutrient.io.",
        "question": "Can an agent call CloudConvert API and Nutrient DWS Processor API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 68",
          "Security \u0026 auth, 71 against 66"
        ],
        "also": null,
        "goodFor": "An agent that converts between many file formats, merges to PDF, or needs OCR, PDF/A, encryption and page operations in one job, with storage on S3, Azure or Google Cloud.",
        "slug": "cloudconvert",
        "watchFor": "No OpenAPI document and no API changelog were found. The blog has one post since August 2024"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 84 against 59",
          "Agent ergonomics, 84 against 71",
          "Payments \u0026 pricing, 40 against 35",
          "Maintenance \u0026 community, 78 against 68"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "An agent that must change or produce documents (merge, convert, OCR, redact, sign, fill forms) in one chained request with predictable per-use cost.",
        "slug": "nutrient-dws-processor",
        "watchFor": "The status feed records 61 minutes of DWS Platform downtime on 13 July 2026 and five days with Processor API downtime since 23 July"
      }
    ],
    "job": {
      "capability": "pdf.convert",
      "name": "PDF conversion"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/cloudconvert-vs-foxit-pdf-services.json",
        "title": "CloudConvert API vs Foxit PDF Services API",
        "url": "https://www.anchorterminal.com/compare/cloudconvert-vs-foxit-pdf-services"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudconvert-vs-iloveapi.json",
        "title": "CloudConvert API vs iLoveAPI",
        "url": "https://www.anchorterminal.com/compare/cloudconvert-vs-iloveapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudconvert-vs-pdf-co.json",
        "title": "CloudConvert API vs PDF.co API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudconvert-vs-pdf-co"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foxit-pdf-services-vs-nutrient-dws-processor.json",
        "title": "Foxit PDF Services API vs Nutrient DWS Processor API",
        "url": "https://www.anchorterminal.com/compare/foxit-pdf-services-vs-nutrient-dws-processor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/iloveapi-vs-nutrient-dws-processor.json",
        "title": "iLoveAPI vs Nutrient DWS Processor API",
        "url": "https://www.anchorterminal.com/compare/iloveapi-vs-nutrient-dws-processor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdf-co.json",
        "title": "Nutrient DWS Processor API vs PDF.co API + MCP",
        "url": "https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdf-co"
      }
    ],
    "scores": [
      {
        "by": 12,
        "cloudconvert": 80,
        "edge": "cloudconvert",
        "key": "reliability",
        "name": "Reliability",
        "nutrient-dws-processor": 68,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 25,
        "cloudconvert": 59,
        "edge": "nutrient-dws-processor",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "nutrient-dws-processor": 84,
        "weight": 13
      },
      {
        "by": 13,
        "cloudconvert": 71,
        "edge": "nutrient-dws-processor",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "nutrient-dws-processor": 84,
        "weight": 13
      },
      {
        "by": 5,
        "cloudconvert": 71,
        "edge": "cloudconvert",
        "key": "security",
        "name": "Security \u0026 auth",
        "nutrient-dws-processor": 66,
        "weight": 14
      },
      {
        "by": 5,
        "cloudconvert": 35,
        "edge": "nutrient-dws-processor",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "nutrient-dws-processor": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "cloudconvert": 68,
        "edge": "nutrient-dws-processor",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "nutrient-dws-processor": 78,
        "weight": 7
      },
      {
        "by": 2,
        "cloudconvert": 75,
        "edge": "cloudconvert",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "nutrient-dws-processor": 73,
        "weight": 7
      }
    ],
    "summary": "Nutrient DWS Processor API scores 68.7 (B) on agent readiness against CloudConvert API's 66.4 (B), and leads in 4 of 7 scored categories. CloudConvert API leads on reliability and security \u0026 auth. Both do pdf conversion.",
    "verdicts": {
      "cloudconvert": "API keys and OAuth tokens carry six scopes, the terms promise 99.9 per cent monthly uptime with refunds, and uploaded files are deleted within 24 hours. No OpenAPI document or changelog was found, and the per-credit price is drawn by a script on the pricing page.",
      "nutrient-dws-processor": "A public OpenAPI 3.1 document, JSONPath-level error bodies and OAuth or operation-limited tokens make the API easy for an agent to call, and 50 free credits a month need no card. The status feed shows 61 minutes of platform downtime on 13 July 2026, and the terms let plans with data retention train models on submitted files."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor",
    "json": "https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.md",
    "slim": "https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.min.md"
  },
  "markdown": "Nutrient DWS Processor API scores 68.7 (B) on agent readiness against CloudConvert API's 66.4 (B), and leads in 4 of 7 scored categories. CloudConvert API leads on reliability and security \u0026 auth. Both do pdf conversion.\n\n- CloudConvert API: grade B, 66.4/100, rank #291 of 950. Markdown https://www.anchorterminal.com/tools/cloudconvert.md · JSON https://www.anchorterminal.com/api/v1/tools/cloudconvert.json\n- Nutrient DWS Processor API: grade B, 68.7/100, rank #209 of 950. Markdown https://www.anchorterminal.com/tools/nutrient-dws-processor.md · JSON https://www.anchorterminal.com/api/v1/tools/nutrient-dws-processor.json\n- Best PDF manipulation and conversion APIs for AI agents: https://www.anchorterminal.com/best/pdf-tools/index.md\n- All 24 pdf comparisons: https://www.anchorterminal.com/compare/pdf-tools/index.md\n\n## Which one, for what\n\n### CloudConvert API (B)\n\nGood for: An agent that converts between many file formats, merges to PDF, or needs OCR, PDF/A, encryption and page operations in one job, with storage on S3, Azure or Google Cloud.\n\nAhead on:\n- Reliability, 80 against 68\n- Security \u0026 auth, 71 against 66\n\nWatch for: No OpenAPI document and no API changelog were found. The blog has one post since August 2024\n\n### Nutrient DWS Processor API (B)\n\nGood for: An agent that must change or produce documents (merge, convert, OCR, redact, sign, fill forms) in one chained request with predictable per-use cost.\n\nAhead on:\n- Schema \u0026 documentation, 84 against 59\n- Agent ergonomics, 84 against 71\n- Payments \u0026 pricing, 40 against 35\n- Maintenance \u0026 community, 78 against 68\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: The status feed records 61 minutes of DWS Platform downtime on 13 July 2026 and five days with Processor API downtime since 23 July\n\n\n## Score by category\n\n| Category | Weight | CloudConvert API | Nutrient DWS Processor API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 68 | CloudConvert API +12 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 59 | 84 | Nutrient DWS Processor API +25 |\n| Agent ergonomics | 13% (16.2 this run) | 71 | 84 | Nutrient DWS Processor API +13 |\n| Security \u0026 auth | 14% (17.5 this run) | 71 | 66 | CloudConvert API +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 40 | Nutrient DWS Processor API +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 68 | 78 | Nutrient DWS Processor API +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 75 | 73 | CloudConvert API +2 |\n| Negative events | ≤15 | 0 | -2 | |\n| **Total** | | **66.4 · B** | **68.7 · B** | |\n\n## Facts side by side\n\n| Fact | CloudConvert API | Nutrient DWS Processor API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | CloudConvert (Lunaweb GmbH) | Nutrient (PSPDFKit GmbH) |\n| Hosted endpoint | `https://api.cloudconvert.com/v2` | `https://api.nutrient.io` |\n| Transports | HTTP | HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under CloudConvert's terms of service. The SDKs and the CLI on GitHub are MIT | Proprietary service under the Nutrient DWS API licence agreement. The MCP server and the TypeScript and Python clients are MIT |\n| Tools exposed | 24 | 8 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `io.github.PSPDFKit/nutrient-dws-mcp-server` |\n| Last release | 2026-09-03 | 2026-08-27 |\n| Terms last updated | no date given | 2026-09-01 |\n| Privacy policy last updated | no date given | no date given |\n| Customer content may train models | not found in the text | yes, with an opt-out |\n| Terms restrict automated access | not found in the text | 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 | not found in the text |\n| Popularity | 192 stars, 104k npm/wk | 71 stars, 2.7k npm/wk, 2.2k PyPI/wk |\n\n## Verdicts\n\n**CloudConvert API.** API keys and OAuth tokens carry six scopes, the terms promise 99.9 per cent monthly uptime with refunds, and uploaded files are deleted within 24 hours. No OpenAPI document or changelog was found, and the per-credit price is drawn by a script on the pricing page.\n\n**Nutrient DWS Processor API.** A public OpenAPI 3.1 document, JSONPath-level error bodies and OAuth or operation-limited tokens make the API easy for an agent to call, and 50 free credits a month need no card. The status feed shows 61 minutes of platform downtime on 13 July 2026, and the terms let plans with data retention train models on submitted files.\n\n## Before you call either\n\n### CloudConvert API\n\n1. Build each job from an import task, one or more processing tasks and an `export/url` task, then read the download links from the export task's `result.files`\n2. Call `GET /v2/operations` with `include=options` to find the options a format pair accepts before creating a `convert` task\n3. Do not retry a failed task automatically. CloudConvert retries retryable errors itself, and a retry endpoint creates a new task\n4. Download output within 24 hours. Tasks, files and export URLs are deleted after that\n5. Use `https://sandbox.api.cloudconvert.com/v2` for tests. It consumes no credits and accepts only a fixed set of approved test files\n\n### Nutrient DWS Processor API\n\n1. Send `Authorization: Bearer \u003ckey\u003e` to `https://api.nutrient.io`. Use `POST /build` with an `instructions` JSON part to chain several actions in one charged request\n2. Call `POST /analyze_build` first to get the credit cost of a build. The call is free\n3. Stay under 100 requests a minute per key and back off exponentially on 429. Test keys allow 10 a minute and 5 MB\n4. For long jobs send `Prefer: respond-async` with an `Idempotency-Key`, then poll the `Location` URL with `X-Async-Job-Token` after `Retry-After`\n5. Set `SANDBOX_PATH` for the MCP server. Without it the server reads and writes any path the user account can reach\n\n## Questions\n\n### Which is better for AI agents, CloudConvert API or Nutrient DWS Processor API?\n\nNutrient DWS Processor API scores 68.7 (B) on agent readiness against CloudConvert API's 66.4 (B), and leads in 4 of 7 scored categories. CloudConvert API leads on reliability and security \u0026 auth.\n\n### Do CloudConvert API and Nutrient DWS Processor API need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call CloudConvert API and Nutrient DWS Processor API without installing anything?\n\nYes. CloudConvert API has a hosted endpoint at https://api.cloudconvert.com/v2 and Nutrient DWS Processor API at https://api.nutrient.io.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.json, and with the fewest tokens: https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"cloudconvert\", \"b\": \"nutrient-dws-processor\"}`. From a terminal: `anchor compare cloudconvert nutrient-dws-processor`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/cloudconvert.json and https://www.anchorterminal.com/api/v1/tools/nutrient-dws-processor.json\n\n## Other comparisons with CloudConvert API or Nutrient DWS Processor API\n\n- [CloudConvert API vs Foxit PDF Services API](https://www.anchorterminal.com/compare/cloudconvert-vs-foxit-pdf-services.md)\n- [CloudConvert API vs iLoveAPI](https://www.anchorterminal.com/compare/cloudconvert-vs-iloveapi.md)\n- [CloudConvert API vs PDF.co API + MCP](https://www.anchorterminal.com/compare/cloudconvert-vs-pdf-co.md)\n- [Foxit PDF Services API vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/foxit-pdf-services-vs-nutrient-dws-processor.md)\n- [iLoveAPI vs Nutrient DWS Processor API](https://www.anchorterminal.com/compare/iloveapi-vs-nutrient-dws-processor.md)\n- [Nutrient DWS Processor API vs PDF.co API + MCP](https://www.anchorterminal.com/compare/nutrient-dws-processor-vs-pdf-co.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "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": "CloudConvert API vs Nutrient DWS Processor API",
        "url": ""
      }
    ],
    "description": "Nutrient DWS Processor scores 68.7 (B) to CloudConvert's 66.4 (B) for pdf conversion. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "CloudConvert API B 66.4",
      "Nutrient DWS Processor API B 68.7",
      "scores"
    ],
    "h1": "CloudConvert API vs Nutrient DWS Processor API",
    "image": "https://www.anchorterminal.com/assets/og/compare-cloudconvert-vs-nutrient-dws-processor.png",
    "path": "/compare/cloudconvert-vs-nutrient-dws-processor",
    "published": "2026-10-01",
    "section": "tools",
    "title": "CloudConvert vs Nutrient DWS Processor for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/cloudconvert-vs-nutrient-dws-processor"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 730
  },
  "version": 1
}
