Connect your AI Agents to Adobe PDF Services in minutes

Merge lets you securely connect your agents to Adobe PDF Services and thousands of tools instantly

Available tools

upload_asset

Upload a file to Adobe PDF Services for processing. Returns an asset_id to use with PDF operations. File content must be base64-encoded. Supported types: PDF, Word, Excel, PPT, HTML, images.

download_asset

Download a processed file from Adobe PDF Services. Use the downloadUri from a completed job status response. Returns base64-encoded file content.

create_pdf

Convert a Word, Excel, PowerPoint, HTML, or image file to PDF. Upload the source file first with uploadasset, then pass its assetid. Returns a statusurl to poll with getjob_status.

export_pdf

Convert a PDF to Word, Excel, PowerPoint, RTF, PNG, or JPEG. Upload the PDF first with uploadasset, then pass its assetid. Returns a statusurl to poll with getjob_status.

extract_pdf

Extract text, tables, and figures from a PDF using AI. Upload the PDF first with uploadasset. Results include structured JSON with text and table data. Returns a statusurl to poll with getjobstatus.

get_pdf_properties

Get metadata and properties of a PDF (page count, dimensions, etc.). Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

generate_document

Generate a PDF or Word document from a template and JSON data. Upload a Word template first with uploadasset, then pass JSON data to merge. Returns a statusurl to poll with getjobstatus.

auto_tag_pdf

Auto-tag a PDF for accessibility compliance. Adds structure tags for headings, paragraphs, lists, tables, etc. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

ocr_pdf

Add a searchable text layer to a scanned PDF using OCR. Upload the scanned PDF first with uploadasset. Supports multiple languages. Returns a statusurl to poll with getjobstatus.

add_watermark

Add a watermark to a PDF using another PDF or image as the watermark. Upload both the target PDF and watermark file with uploadasset first. Returns a statusurl to poll with getjobstatus.

get_job_status

Poll the status of an Adobe PDF Services operation. Use the status_url returned by any operation tool. Status is 'in progress', 'done', or 'failed'. When done, the response includes asset download info.

combine_pdfs

Merge multiple PDFs into a new PDF; the input PDFs are unchanged. Upload each PDF with uploadasset first. Pass asset objects with 'assetID' and optional 'pageRanges'. Returns a statusurl to poll with getjobstatus.

split_pdf

Split a PDF into multiple files by page count, page ranges, or file count. Creates new output PDFs; the input PDF is unchanged. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

compress_pdf

Reduce the file size of a PDF. Compression levels: LOW, MEDIUM, HIGH. Creates a new output PDF; the input PDF is unchanged. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

linearize_pdf

Optimize a PDF for fast web viewing (linearization). Creates a new output PDF; the input PDF is unchanged. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

insert_pages

Insert pages from one PDF into another at a specific position. Upload both PDFs with uploadasset first. Returns a statusurl to poll with getjobstatus.

replace_pages

Replace pages in a PDF with pages from another PDF. Upload both PDFs with uploadasset first. Returns a statusurl to poll with getjobstatus.

delete_pages

Delete specific pages from a PDF. Upload the PDF first with uploadasset. Page ranges use 1-indexed start and end. Returns a statusurl to poll with getjobstatus.

rotate_pages

Rotate pages in a PDF by 90, 180, or 270 degrees. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

reorder_pages

Reorder pages in a PDF. Specify the new page order with asset IDs and ranges. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

protect_pdf

Add password protection and encryption to a PDF. Set userpassword (to open) and/or ownerpassword (to change permissions). Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

remove_protection

Remove password protection from a PDF. Provide the password used to protect the file. Upload the PDF first with uploadasset. Returns a statusurl to poll with getjobstatus.

apply_electronic_seal

Apply an electronic seal (e-seal) to a PDF using a digital certificate. Upload the PDF first with uploadasset. Requires seal certificate credentials (URL, password, type). Returns a statusurl to poll with getjobstatus.

validate_credential

Validate Adobe PDF Services credentials by attempting a token exchange. Returns success if the clientid and clientsecret are valid.

View all tools by creating a free accountSee more tools

How to set up Merge Agent Handler

In an mcp.json file, add the configuration below, and restart Cursor.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "url": "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
5      "headers": {
6        "Authorization": "Bearer yMt*****"
7      }
8    }
9  }
10}
11
Copy Code

Open your Claude Desktop configuration file and add the server configuration below. You'll also need to restart the application for the changes to take effect.

Make sure Claude is using the Node v20+.

Learn more in the official documentation ↗

1{
2  "mcpServers": {
3    "agent-handler": {
4      "command": "npx",
5      "args": [
6        "-y",
7        "mcp-remote@latest",
8        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
9        "--header",
10        "Authorization: Bearer ${AUTH_TOKEN}"
11      ],
12      "env": {
13        "AUTH_TOKEN": "yMt*****"
14      }
15    }
16  }
17}
Copy Code
Copied!

Open your Windsurf MCP configuration file and add the server configuration below.
Click on the refresh button in the top right of the Manage MCP server page or in the top right of the chat box in the box icon.

Learn more in the official documentation ↗

1{
2    "mcpServers": {
3      "agent-handler": {
4        "command": "npx",
5        "args": [
6          "-y",
7          "mcp-remote@latest",
8          "https://ah-api.merge.dev/api/v1/tool-packs/<tool-pack-id>/registered-users/<registered-user-id>/mcp",
9          "--header",
10          "Authorization: Bearer ${AUTH_TOKEN}"
11        ],
12        "env": {
13          "AUTH_TOKEN": "<ah-production-access-key>"
14        }
15      }
16    }
17  }
Copy Code

In Command Palette (Cmd+Shift+P on macOS, Ctrl+Shift+P on Windows), run "MCP: Open User Configuration".

You can then add the configuration below and press "start" right under servers. Enter the auth token when prompted.

Learn more in the official documentation ↗

1{
2  "inputs": [
3    {
4      "type": "promptString",
5      "id": "agent-handler-auth",
6      "description": "Agent Handler AUTH_TOKEN", // "yMt*****" when prompt
7      "password": true
8    }
9  ],
10  "servers": {
11    "agent-handler": {
12      "type": "stdio",
13      "command": "npx",
14      "args": [
15        "-y",
16        "mcp-remote@latest",
17        "https://ah-api-develop.merge.dev/api/v1/tool-packs/{TOOL_PACK_ID}/registered-users/{REGISTERED_USER_ID}/mcp",
18        "--header",
19        "Authorization: Bearer ${input:agent-handler-auth}"
20      ]
21    }
22  }
23}
Copy Code

FAQs on using Merge's Adobe PDF Services  MCP server

FAQs on using Merge's Adobe PDF Services  MCP server

Explore other MCP servers built and managed by Merge

sabre
Sabre
salesforce
Salesforce
sanity
Sanity
sapsf
SAP SuccessFactors
sendgrid
SendGrid
sentry
Sentry
servicenow
ServiceNow
sharepoint
SharePoint
sharepoint_gcc
SharePoint GCC High
shopify
Shopify
slack
Slack
slackbot
Slackbot
smartrecruiters
SmartRecruiters
smartsheet
Smartsheet
snowflake
Snowflake
spotify
Spotify
sprout_social
Sprout Social
square
Square
straker
Straker
stripe
Stripe
supabase
Supabase
teamwork
Teamwork.com
tiktok
TikTok
trello
Trello

Ready to try it out?

Whether you're an engineer experimenting with agents or a product manager looking to add tools, you can get started for free now