Need this in your own application? The full Documentize product family for C#/.NET.
Licensing Documentize

Dokumentų apdorojimo supergalios jūsų DI asistentui

Connect AI agents to Documentize with MCP

The Documentize MCP server exposes all document processing capabilities as tools for AI agents and LLM clients — convert, merge, extract, sign, and more, directly from Claude Desktop, VS Code Copilot, Cursor, or any MCP-compatible host.

🔑 Your MCP key

Requests from an MCP client count against your account the same way work you do on the website does. Without a key the server treats the client as an anonymous visitor and applies the anonymous daily limit.

Clients that support MCP's OAuth flow (protected-resource metadata, RFC 9728) can skip keys entirely — they discover the login page from the server and sign you in through the browser. Keys remain the way to connect scripts and clients without OAuth support.

No account needed to try this out — Create key below issues a free trial key on the spot, at the same limits as a free account. Sign in (top of the page) to list or revoke keys later, or to upgrade to a paid plan for full limits.

Copy this key now — it is stored only as a hash and cannot be shown again.

Paste it into your client config as an Authorization header:

This is a free trial key — it works at the same limits as a free account. Sign in to keep it listed for later, or upgrade to a paid plan for full limits.

Existing keys

LabelKeyCreatedLast used

⚡ Endpoint

The MCP server runs over Streamable HTTP at:

https://api.documentize.app/mcp

The server uses stateful sessions. After the initial initialize request the server returns an Mcp-Session-Id header; include it in every subsequent request. MCP clients handle this automatically.

🔌 Connect from Claude Desktop

Add the server to claude_desktop_config.json (%APPDATA%\Claude\ on Windows, ~/Library/Application Support/Claude/ on macOS):

{
  "mcpServers": {
    "documentize": {
      "type": "http",
      "url": "https://api.documentize.app/mcp",
      "headers": {
        "Authorization": "Bearer dmk_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. The Documentize tools will appear in the tool list. Omit the headers block to connect anonymously — the tools still work, but under the anonymous daily limit.

🔌 Connect from VS Code (GitHub Copilot)

Create .vscode/mcp.json in your workspace (or add to User Settings):

{
  "servers": {
    "documentize": {
      "type": "http",
      "url": "https://api.documentize.app/mcp",
      "headers": {
        "Authorization": "Bearer dmk_your_key_here"
      }
    }
  }
}

Open GitHub Copilot Chat, switch to Agent mode, and click the Tools button — Documentize tools will be listed there.

🔌 Connect from Cursor / Cline

In Cursor, open Settings → MCP and add a new server:

{
  "name": "documentize",
  "type": "http",
  "serverUrl": "https://api.documentize.app/mcp"
}

Cline users can add the same entry under MCP Servers in its settings panel.

⚙️ How tasks work

All processing tools are asynchronous. Each call starts a background job and returns a JSON object with a folderName field — that is your task ID.

  1. Call a processing tool (e.g. ConvertDocument) → receive a task ID (folderName).
  2. Call GetTaskStatus with that task ID and poll until statusCode is 200.
  3. When complete, the response contains a sharedFiles array. Each entry has a fileName (display name) and an uploadFileName (a pre-signed S3 download URL). Open any uploadFileName URL in your browser to download the result file.
// 1. Start a task
ConvertDocument(fileUrl: "C:\\Users\\Alice\\Documents\\report.pdf",
                inputType: "pdf", outputType: "docx")
// → { "folderName": "abc123", "statusCode": 204 }

// 2. Poll until done (statusCode 204/202/203 = still processing)
GetTaskStatus(taskId: "abc123")
// → {
//     "statusCode": 200,
//     "sharedFiles": [
//       {
//         "fileName": "report.docx",
//         "uploadFileName": "https://s3.amazonaws.com/...presigned-url..."
//       }
//     ]
//   }

// 3. Download the result
// Open uploadFileName in a browser, or tell the agent:
//   "Download https://s3.amazonaws.com/...presigned-url... and save it as report.docx"

Use GetNextAppSuggestions after any operation to get recommended follow-up tools based on the output format.

📂 Providing your files

Most users are pointing the agent at a file on their own machine, so lead with that — a plain local path or a file:// URI works directly, no upload step required. The server also accepts remote URLs when that's where the file actually lives.

Local file path (most common)

File paths are resolved by the server, not by the client. They work whenever the MCP server can see the path you give it — Documentize SelfHost, a local development instance, or an agent running alongside the server. Just point it at the file:

// Windows absolute path
ConvertDocument(fileUrl: "C:\\Users\\Alice\\Documents\\report.pdf",
                inputType: "pdf", outputType: "docx")

// macOS / Linux absolute path
ConvertDocument(fileUrl: "/home/alice/documents/report.pdf",
                inputType: "pdf", outputType: "docx")

You can also use the standard file:// URI format:

// file:// URI — Windows
ConvertDocument(fileUrl: "file:///C:/Users/Alice/Documents/report.pdf",
                inputType: "pdf", outputType: "docx")

// file:// URI — macOS / Linux
ConvertDocument(fileUrl: "file:///home/alice/documents/report.pdf",
                inputType: "pdf", outputType: "docx")

Remote URL

Pass any publicly accessible https:// or http:// URL instead, and the server fetches the file automatically before processing.

ConvertDocument(fileUrl: "https://example.com/report.pdf",
                inputType: "pdf", outputType: "docx")

Supported file-source schemes

The server recognizes these URL schemes for fileUrl / fileUrls — anything else is rejected before a task is started:

private static readonly HashSet<string> SupportedSchemes = new(StringComparer.OrdinalIgnoreCase)
{
    "http", "https", "ftp", "ftps", "file", "local"
};
  • file / local — a path on disk, either as a bare path (C:\..., /home/...) or a file:// URI.
  • http / https — a remote URL the server downloads before processing.
  • ftp / ftps — a file served from an FTP/FTPS host.

Practical agent prompts

Refer to files the way you naturally would — a path on your machine works directly:

// In Claude Desktop or Cursor chat:
"Convert my file C:\Users\Alice\Downloads\invoice.pdf to Word format"

"Compress file:///home/alice/documents/thesis.pdf and send me the download link"

"Extract all the text from /home/alice/documents/Q1.pdf"

If the file isn't local — it's already hosted somewhere — pass its URL instead: "Convert https://example.com/invoice.pdf to Word format".

👤 Accounts, limits & quotas

Usage is metered per account, and an MCP client is metered exactly like the website: one operation = one processing call, whatever the file count. Checking task status and asking about your own account are free.

TierWhoOperations / day
anonymousNo Authorization header3 — enough to try a tool, not to work
freeRegistered account, no subscription5, resets midnight UTC
paidActive subscriptionUnlimited — the tier built for bulk and unattended agents

Three tools let an agent manage this itself. None of them consume quota:

  • GetAccountStatus — current tier, plan, operations used and remaining, reset time, and the safe parallelism for batch work.
  • GetSignInInstructions — the exact steps to register, issue a key, and configure the client. The agent relays these to you; it cannot sign in on your behalf.
  • SignOut — how to disconnect. Pass revokeKey: true to also revoke the key this connection uses (permanent, and it breaks every client sharing that key).

A healthy, signed-in connection looks like this:

GetAccountStatus()
// → {
//     "ok": true,
//     "account": {
//       "authenticated": true,
//       "authMethod": "mcp_key",
//       "credentialRejected": false,
//       "tier": "paid",
//       "plan": "Business",
//       "unlimited": true,
//       "maxParallelRequests": 8
//     },
//     "advice": "Unlimited plan. Mass processing is supported; use ProcessBatch
//                with up to 8 parallel requests."
//   }

A free account running low looks like this:

GetAccountStatus()
// → {
//     "account": {
//       "authenticated": true, "tier": "free", "unlimited": false,
//       "used": 4, "limit": 5, "remaining": 1,
//       "resetsAtUtc": "2026-08-28T00:00:00Z",
//       "maxParallelRequests": 2
//     },
//     "advice": "1 of 5 operations left today (resets 2026-08-28 00:00:00Z)..."
//   }

When a call is refused

Refusals come back as a structured object with a machine-readable error and a nextStep for the agent to follow, so it stops instead of retrying blindly. Each code means something different:

errorWhat happenedWhat to do
credential_rejectedThe key in your client config was revoked, deleted or mistyped, and the connection silently fell back to anonymous.Issue a new key above, replace it in the config, restart the client. Retrying will not help.
auth_requiredAnonymous allowance spent.Sign in and add a key — the agent can read you the steps.
quota_exceededSigned in, but out of operations for today.Wait for retryAfterUtc (midnight UTC), or subscribe.
billing_unavailableSubscription service unreachable.Nothing — advisory only. The work was still accepted.
// Example refusal — note that it is explicitly not retryable
CompressDocument(fileUrl: "C:\\Users\\Alice\\Documents\\big.pdf")
// → {
//     "ok": false,
//     "error": "credential_rejected",
//     "statusCode": 401,
//     "message": "The Documentize API key in this MCP client's configuration was
//                 refused — it has been revoked, deleted, or was copied incorrectly...",
//     "nextStep": "Tell the user to sign in ... issue a new one, and replace the value
//                  in this MCP client's configuration (then restart the client).",
//     "retryable": false
//   }

📦 Mass processing

A subscription removes the daily cap, so the real limit on bulk work is round trips: pushing 200 files through ConvertDocument costs 200 turns of the agent's attention, and any one of them can derail the run. Two tools collapse that into two calls.

  1. ProcessBatch — one operation, many files. Submits them concurrently server-side (8 at a time on an unlimited plan, 2 otherwise), up to 200 files per call, and returns one task ID per file.
  2. WaitForTasks — polls all of those task IDs server-side and returns every download link at once. Free, and it hands back any still-pending IDs at the timeout so a long run resumes instead of restarting.

ListBatchOperations returns the supported operation names and their parameters — the agent should call it rather than guess.

// 1. Submit 3 files (a real batch would be hundreds)
ProcessBatch(operation: "convert",
             fileUrls: "C:\\Docs\\a.pdf,C:\\Docs\\b.pdf,C:\\Docs\\c.pdf",
             parametersJson: "{\"inputType\":\"pdf\",\"outputType\":\"docx\"}")
// → {
//     "ok": true, "operation": "convert",
//     "requested": 3, "submittedCount": 3, "failedCount": 0,
//     "parallelism": 8,
//     "taskIds": ["abc123", "def456", "ghi789"],
//     "nextStep": "Call WaitForTasks with taskIds to collect the download links..."
//   }

// 2. Collect every result in one call
WaitForTasks(taskIds: "abc123,def456,ghi789", timeoutSeconds: 300)
// → {
//     "ok": true, "total": 3, "completedCount": 3, "pendingCount": 0,
//     "completed": [
//       { "taskId": "abc123",
//         "files": [{ "fileName": "a.docx",
//                     "uploadFileName": "https://s3...presigned..." }] },
//       ...
//     ]
//   }

Prompts that take this path:

"Convert all these PDFs to Word: <list of 40 local file paths>"

"OCR every scan in this list and give me the searchable PDFs"

"Compress these 120 invoices at high compression and collect the links"

What batching does and does not change

  • Every file is still metered individually. A batch of 50 costs 50 operations — it saves round trips, it is not a way around the free tier.
  • A batch that cannot finish is refused before anything runs. Ask for 40 files with 5 operations left and you get insufficient_quota carrying remaining and retryAfterUtc — and not one file is processed. Half-finished bulk work is worse than none.
  • One bad file never aborts the batch. An unreachable URL comes back as a single items[].status = "failed" entry; the rest proceed.
  • Batching is one operation applied to many files. Merging (many files → one result) is not batchable — use MergeDocuments.

🧰 Available Tools

Document Operations

  • ConvertDocument — Convert between PDF, DOCX, PPTX, HTML, JPG, PNG, and more.
  • MergeDocuments — Combine multiple files into a single document.
  • SplitDocument — Split a PDF by page ranges, bookmarks, or fixed size.
  • CompressDocument — Reduce PDF file size (low / medium / high).
  • RotateDocument — Rotate all or selected pages by 90°, 180°, or 270°.
  • ResizeDocument — Resize PDF pages to A4, Letter, A3, etc.
  • RemovePages — Delete specific pages from a PDF.

Security

  • LockDocument — Encrypt a PDF with a password.
  • UnlockDocument — Remove a password from a protected PDF.
  • SignDocument — Digitally sign a document.
  • VerifySignature — Verify existing digital signatures.

Content Extraction

  • ExtractText — Pull all text from a document (Pure or Raw mode).
  • ExtractImages — Export all embedded images.
  • ExtractMetadata — Read author, title, creation date, keywords, etc.
  • ExtractFormData — Export data from fillable PDF form fields.
  • ParseDocument — Parse annotations, bookmarks, tables, and more.
  • SearchInDocument — Find text occurrences inside a document.
  • MakeSearchable — Add a text layer to a scanned PDF via OCR.
  • RunOcr — Run OCR on a scanned file or image to produce a searchable PDF.

Form & Structure

  • FlattenDocument — Flatten form fields and annotations (make non-editable).
  • AddTable — Embed a table from an Excel or CSV file into a PDF.
  • AddToc — Add a table of contents to a PDF based on its headings.

AI-Powered

  • GenerateTableOfContents — AI-structured TOC from document headings.
  • GenerateAbstract — Summarize a document (academic / professional / casual style).
  • GenerateChecklist — Extract tasks, requirements, or compliance items from a document.
  • AnalyzeResume — Extract, analyze, or compare a CV against a job description.
  • ChatWithDocument — Ask questions about document content (RAG).
  • GenerateSvg — Create an SVG illustration from a text prompt.
  • AddIllustrations — Generate AI illustrations and embed them in a document.

Bulk Processing

  • ProcessBatch — Apply one operation to up to 200 files in a single call.
  • WaitForTasks — Wait for many tasks and return all download links at once.
  • ListBatchOperations — List the operations ProcessBatch accepts and their parameters.

Account & Quota

  • GetAccountStatus — Tier, plan, operations remaining today, safe parallelism.
  • GetSignInInstructions — How to register, issue a key, and configure the client.
  • SignOut — Disconnect, and optionally revoke this connection's key.

Status & Utility

  • GetTaskStatus — Check task progress; returns download link when ready.
  • GetNextAppSuggestions — Get recommended follow-up operations for a given output.

📋 Notes

  • File sources can be a local path (C:\file.pdf, /home/user/file.pdf), a file:// URI, or a public https:// URL. Supported schemes: http, https, ftp, ftps, file, local.
  • For MergeDocuments, pass file URLs as a comma-separated string.
  • Status codes: 202/203 = still processing, 200 = done, 500 = error.
  • MCP protocol version reported by the server: 2025-11-25.
  • OAuth: the server publishes protected-resource metadata at /.well-known/oauth-protected-resource/mcp and answers unauthorized requests with WWW-Authenticate: Bearer resource_metadata="…", so clients implementing MCP authorization sign you in through the browser.
  • Authentication is optional but recommended: send Authorization: Bearer dmk_… to have calls counted against your account instead of the anonymous limit. Keys are created above, shown once, and can be revoked at any time.

Quick Reference

MCP Endpoint

https://api.documentize.app/mcp

claude_desktop_config.json

{
  "mcpServers": {
    "documentize": {
      "type": "http",
      "url": "https://api.documentize.app/mcp"
    }
  }
}

.vscode/mcp.json

{
  "servers": {
    "documentize": {
      "type": "http",
      "url": "https://api.documentize.app/mcp"
    }
  }
}

Key Facts

  • Protocol: MCP 2025-11-25 (Streamable HTTP)
  • Sessions: stateful — Mcp-Session-Id header required after init
  • Tasks are async — poll GetTaskStatus; download via sharedFiles[].uploadFileName (S3 pre-signed URL)
  • File inputs accept local paths / file:// URIs (most common) or public URLs — schemes: http, https, ftp, ftps, file, local
  • Auth: optional Authorization: Bearer dmk_… key ties usage to your account
  • Metering: 1 operation = 1 processing call; status checks and account tools are free

Common Cases

What to type in the agent's chat. It picks the tools itself.

One file

"Convert C:\Docs\a.pdf
 to Word"

Agent calls ConvertDocument, then GetTaskStatus until done, then gives you the link.

Many files

"OCR all 60 of these
 scans and give me the
 searchable PDFs"

ProcessBatch + WaitForTasks — two calls, not 120. Needs an unlimited plan to be practical.

Before a big job

"How many Documentize
 operations do I have
 left today?"

GetAccountStatus — free, and it reports the safe parallelism too.

Chained work

"Convert this to PDF,
 compress it high, then
 password-protect it"

Three operations, charged as three. The agent feeds each result URL into the next step.

Setting up

"How do I sign in to
 Documentize?"

GetSignInInstructions — the agent reads you the steps; the login itself happens in your browser.

Edge Cases

The situations that actually cost people an afternoon.

Tools work, but you are told to sign up
You are connected anonymously. Check the headers block really is in the config — many clients silently ignore a malformed one.
credential_rejected
Your key was revoked or mistyped and the connection quietly dropped to anonymous. Issue a new key, replace it, restart the client — config is read at startup. Retrying changes nothing.
Key edited but nothing changed
Same cause: the client is still holding the old session. Restart it, then ask the agent to run GetAccountStatus to confirm the tier.
Batch refused, nothing processed
insufficient_quota — the batch needed more operations than you have left, so none ran. Submit remaining files now, or subscribe.
Quota gone faster than expected
Each file in a batch is one operation, and each step of a chained job is another. The website shares the same daily counter.
Task never reaches 200
204/203 mean it is still running — large scans and AI tools can take minutes. Call WaitForTasks again with the pending IDs; waiting is never charged.
Download link stopped working
uploadFileName is a pre-signed URL and expires. Re-run GetTaskStatus for a fresh one.
Local file path fails
Paths are resolved by the server. Against the hosted endpoint your disk is not visible — use a public URL, or run SelfHost.
Merging a folder
Not a batch: ProcessBatch is one operation per file. MergeDocuments takes the comma-separated list instead.
More than 200 files
Split into chunks of 200. The agent can loop ProcessBatch — one chunk per call.
Two agents on one account
They share the daily counter, so a batch can be refused mid-run. Submitted files still come back with their task IDs — nothing you were charged for is lost.
Key leaked
Revoke it here, or ask the agent for SignOut with revokeKey: true. Every client using that key drops to anonymous immediately.
Dokumentų apdorojimo supergalios jūsų DI asistentui

Prijunkite Claude, Cursor arba bet kurį MCP suderinamą klientą prie 28+ dokumentų įrankių naudodami natūralią kalbą.

Prijunkite Claude, Cursor arba bet kurį MCP suderinamą klientą prie daugiau nei 28 dokumentų įrankių. Konvertuokite, suspauskite, pasirašykite, išgaukite tekstą, vykdykite OCR ir generuokite DI santraukas – viskas natūralia kalba.

Kaip veikia Documentize MCP

1. Prijunkite savo MCP klientą

Pridėkite Documentize MCP serverį prie Claude Desktop, Cursor, VS Code arba bet kurio MCP suderinamo kliento. Viena konfigūracijos eilutė.

2. Inicializuoti sesiją

Jūsų klientas automatiškai išsiunčia inicializacijos užklausą ir gauna sesijos ID. Visi vėlesni kvietimai naudoja šią sesiją sekimui (puiku naudojimo pagrindu pagrįstam monetizavimui).

3. Klausk natūraliai

"Konvertuokite šį PDF į DOCX" – jūsų AI asistentas iškviečia atitinkamą įrankį su jūsų dokumentu. API dokumentacija nėra reikalinga.

4. Gauti rezultatus

Serveris apdoroja asinchroniškai, tikrina būseną ir tiesiogiai pristato konvertuotą dokumentą arba išgautus duomenis jūsų AI asistentui.

FAQs

Model Context Protocol (MCP) yra atviras standartas, leidžiantis AI asistentams, tokiems kaip Claude ir Cursor, tiesiogiai kvieti įrankius. Vietoj to, kad rašytumėte API kodą, tiesiog natūraliai klausiate. Documentize suteikia MCP serverį su 28 dokumentų apdorojimo įrankiais, kuriuos jūsų AI gali iš karto naudoti.
Būsenos režimas suteikia galimybę sekti kiekvieną sesiją, matuoti naudojimą ir izoliuoti klientą — tai būtina monetizacijai. Kiekvienas klientas po inicializacijos gauna unikalų sesijos ID, kurį galite naudoti mokant pagal naudojimą, įgyvendinant grečio apribojimus arba sekant klientų veiklą. Jų AI klientas automatiškai tvarko sesijos ID.
Taip! Naudokite file:// URI (pvz., file:///home/user/document.pdf). Jūsų MCP klientas siunčia failo kelią, o Documentize skaito jį tiesiai iš jūsų vietinės failų sistemos. Puiku jautriems dokumentams, kurių neturėtų būti įkeliama į debesį.
Claude Desktop (su Agent režimu), Cursor IDE, VS Code su Copilot, Continue.dev ir bet kuris MCP suderinamas klientas. Taip pat teikiame tiesioginę HTTP prieigą pasirinktiniams integravimams.
Documentize veikia jūsų pačioje infrastruktūroje, kai yra savarankiškai talpinama, arba mūsų ES serveriuose debesų versijai. MCP serveryje galite pasirinkti: savarankišką talpinimą, kad turėtumėte visišką duomenų kontrolę, arba naudoti mūsų debesų API patogumui. Jokie dokumentų duomenys niekada nenaudojami AI modelių mokymui.
Documentize teikia apdorojimo variklį. Jūs pridedate autentifikacijos tarpinę programinę įrangą, naudojimo sekimą ir atsiskaitymus. Būsenos sesijos modelis suteikia Mcp-Session-Id antraštes, kurias galite susieti su API raktų arba vartotojų paskyrų. Mes siūlome licencijavimą komerciniam platinimui.

DI MCP serveris

⬡

Daugiasluoksnė SVG architektūra

Kiekvienas SVG susideda iš fono, vidurinio ir priekinio sluoksnių su Z‑indekso tvarka ir priklausomybių sekimu. DI valdo sluoksnių santykius ir automatiškai pašalina nepakankamai efektyvius sluoksnius, kad išvestis būtų švari ir nuosekli.

↻

Iteratyvus SVG redagavimas

Patobulinkite ir keiskite SVG dizainus per nuolatinį DI pokalbį.

✦

Greitas vektorų kūrimas

Kurti piktogramas, logotipus ir iliustracijas per kelias sekundes.

Paprasta, naudojimo pagrindu nustatyta kainodara

Nemokamas planas

$0
  • 50 dokumentų operacijų per mėnesį
Choose Nemokamas planas

Premium planas

$4/mėn. (apmokama metams)
  • Pilna prieiga prie visų Documentize AI programų
  • Išplėstos kasdienės apdorojimo ribos
  • Prioritetinis apdorojimas ir nemokama pagalba
Choose Premium planas

Premium planas

$7/mėn.
  • Pilna prieiga prie Documentize programų
  • Labiau pažangūs įrankiai ir funkcijos
  • Išplėsti failų apdorojimo limitai
  • Nemokama pagalba
Choose Premium planas