為您的 AI 助理提供文件處理超能力
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
| Label | Key | Created | Last used |
|---|
⚡ Endpoint
The MCP server runs over Streamable HTTP at:
https://api.documentize.app/mcpThe 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.
- Call a processing tool (e.g.
ConvertDocument) → receive a task ID (folderName). - Call
GetTaskStatuswith that task ID and poll untilstatusCodeis 200. - When complete, the response contains a
sharedFilesarray. Each entry has afileName(display name) and anuploadFileName(a pre-signed S3 download URL). Open anyuploadFileNameURL 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 afile://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.
| Tier | Who | Operations / day |
|---|---|---|
| anonymous | No Authorization header | 3 — enough to try a tool, not to work |
| free | Registered account, no subscription | 5, resets midnight UTC |
| paid | Active subscription | Unlimited — 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: trueto 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:
error | What happened | What to do |
|---|---|---|
credential_rejected | The 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_required | Anonymous allowance spent. | Sign in and add a key — the agent can read you the steps. |
quota_exceeded | Signed in, but out of operations for today. | Wait for retryAfterUtc (midnight UTC), or subscribe. |
billing_unavailable | Subscription 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
// }將 Claude、Cursor 或任何相容 MCP 的客戶端透過自然語言連接至 28 種以上的文件工具。
將 Claude、Cursor 或任何相容 MCP 的客戶端連接至超過 28 種文件工具。轉換、壓縮、簽署、提取文字、執行 OCR,並產生 AI 摘要——全部透過自然語言操作。
Documentize MCP 的運作方式
1. 連接您的 MCP 客戶端
將 Documentize MCP 伺服器新增至 Claude Desktop、Cursor、VS Code 或任何相容 MCP 的客戶端。只需一行設定。
2. 初始化會話
您的客戶端會自動發送初始化請求並取得會話 ID。之後的所有呼叫皆使用此會話進行追蹤(非常適合基於使用量的營收模式)。
3. 自然提問
「將此 PDF 轉換為 DOCX」— 您的 AI 助手會使用您的文件呼叫相應工具。無需 API 文件說明。
4. 獲取結果
伺服器以非同步方式處理,輪詢狀態,並將轉換後的文件或提取的資料直接傳送至您的 AI 助理。
FAQs
AI MCP 伺服器
深度分層 SVG 架構
每個 SVG 由背景層、中景層和前景層組成,具備 Z 索引排序與依賴追蹤。AI 會管理圖層關係,並自動移除表現不佳的圖層,以保持輸出清晰且一致。
迭代式 SVG 編輯
透過持續的 AI 對話,改進與修改 SVG 設計。
快速向量創建
在秒內創建圖示、標誌和插圖。