PDF Tools
Automatically detect and correct skewed (tilted) PDF pages. Preserves text pages as searchable vector content and only rasterizes image pages (e.g. scans).
Call this tool from your code in three languages.
# 1) Upload each file first → returns { filePath }
curl -X POST 'https://api.elysiatools.com/upload/pdf-deskew' \
-F 'file=@/path/to/sourceFile.ext'
# 2) Call the tool with the returned filePath values
curl -X POST 'https://api.elysiatools.com/en/api/tools/pdf-deskew' \
-F 'sourceFile=/public/samples/pdf/sample-multipage.pdf' \
-F 'mode=auto' \
-F 'manualAngle=0' \
-F 'threshold=0.5' \
-F 'rasterizeText=false' \
-F 'pageRange='Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST https://api.elysiatools.com/en/api/tools/pdf-deskew| Name | Type | Required | Description |
|---|---|---|---|
| sourceFile | fileupload required | Yes | — |
| mode | select | Yes | — |
| manualAngle | number | No | Manual correction angle (degrees). Positive value corrects a clockwise tilt. Only used in Manual mode. |
| threshold | number | No | Minimum detected skew angle (in degrees) required to apply correction in Auto mode. Smaller values detect subtle tilts. |
| rasterizeText | select |
Add this tool to your Model Context Protocol server so AI agents can list and call it.
Add this block to your MCP client configuration:
{
"mcpServers": {
"elysiatools-pdf-deskew": {
"name": "pdf-deskew",
"description": "Automatically detect and correct skewed (tilted) PDF pages. Preserves text pages as searchable vector content and only rasterizes image pages (e.g. scans).",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=pdf-deskew",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}After connecting to the SSE endpoint, list the exposed tools:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoke the tool by its id, passing arguments built from its parameters:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "pdf-deskew",
"arguments": {
"sourceFile": "/public/samples/pdf/sample-multipage.pdf",
"mode": "auto",
"manualAngle": 0,
"threshold": 0.5,
"rasterizeText": "false",
"pageRange": ""
}
}
}| No |
| By default text pages are preserved as searchable vector content (not deskewed). Enable this only if you need to deskew vector text content, accepting loss of text selectability. |
| pageRange | text | No | Specify pages to deskew (e.g., 1-3,5,7-9). Leave blank to process all pages. |
File result
{
"filePath": "/public/processing/randomid.ext",
"fileName": "output.ext",
"contentType": "application/octet-stream",
"size": 1024,
"metadata": {
"key": "value"
},
"error": "Error message (optional)",
"message": "Notification message (optional)"
}Questions or issues? Contact [email protected]