Use PDF tools in your agent’s chat
- Connect once. Follow the MCP setup instructions to add the PDF tools and the other 12 toolsets to your agent.
- Provide your PDF. Give your agent a path it can read, or attach the file if your client supports uploads. The agent needs file access and HTTP transfer tools.
- Ask for the result. In your agent’s chat, describe the PDF task. Your agent calls the connected PDF tools and returns the information or a file you can download.
There is no required brand phrase or special command. If your agent chooses another method, ask it to use the connected EasyRunCraft tools. If several files match, specify which PDF you mean.
What to ask your agent
After connecting, use your own filenames and send a request like these in your agent’s chat:
| Ask your agent | You get |
|---|---|
| Merge agenda.pdf and notes.pdf in that order, add page numbers in the footer, and return one PDF. | Downloads a combined PDF with page numbers. |
| Delete page 2, move the last page to the beginning, then insert a blank page after page 1. | Applies the edits in order and downloads a new PDF. |
| Split report.pdf into a new file every 4 pages. | Downloads each part as its own PDF. |
| Render page 3 of this PDF as a PNG. | Downloads an image of the requested page. |
| Extract pages 2 through 4 from report.pdf into a separate PDF. | Downloads a PDF containing the selected pages. |
| Read the text on pages 1 and 3 of this PDF and show me the invoice numbers. | Reads the specified pages and uses the returned text to find the invoice numbers. |
Supported PDF operations
Use pdf_capabilities to check which operations are available. Page numbers start at 1. In a series of edits, each operation uses the page order left by the previous operation.
Inspect and search inspect_file
inspect- Read document details and extract text from up to five selected pages. Pass a file ID and, optionally, up to five page numbers. Defaults to page 1.
Inspect and search query_pdf
search_text- Find a phrase in the PDF text and return page locations. Pass the phrase to find. Optionally set a starting page, skip matches, or cap the response at 100 matches.
read_lines- Read existing text lines and their line numbers on one page. Pass one page number. Use the returned line number and exact text when replacing a line.
list_bookmarks- Read the bookmark outline. Use offset and limit to page through the outline. Bookmark paths are arrays of 1-based positions.
list_forms- List interactive form fields, options and current values. Use the returned field names and field types when filling or resetting a form.
list_links- List links and their destinations. Returns link locations and destinations.
list_comments- List annotations and comments. Optionally provide a page number to narrow the results.
Organize pages edit_pdf
merge- Combine up to five uploaded PDFs in order. Pass the file IDs in the intended order. Omit additional edits with an empty operations array.
rotate- Rotate selected pages by 90, 180 or 270 degrees. Pass the pages and a clockwise angle. Use 270 degrees for a 90-degree counterclockwise rotation.
delete- Delete selected pages from the copy. Pass the pages to remove from the current page order.
move- Move selected pages to a new position. Pass the pages to move and the destination position as counted before this move.
duplicate- Duplicate selected pages. Pass the pages to copy. The copies go after the last selected page.
insert_blank- Insert a blank page, with optional dimensions. Pass the insertion position. Provide both width and height in points to set the size, or omit both to use the neighboring page size.
insert_from_pdf- Insert selected pages from another uploaded PDF. Set merge_inputs to false and put the target PDF first. Pass the source file’s position in file_ids, the insertion position and optional source pages.
replace_from_pdf- Replace selected page content with pages from another uploaded PDF. Set merge_inputs to false and put the target PDF first. Pass the source file’s position, the destination pages and, optionally, the same number of source pages.
extract- Save only the selected pages as a new PDF. Pass the pages to keep. Use extraction only once and place it last in a series of edits.
crop- Set crop margins in points. Cropping changes the visible area. Pass the pages and four margins in points in left, bottom, right, top order.
reset_crop- Restore the default crop box. Pass the pages whose default crop box you want to restore.
page_labels- Set viewer page labels such as i, ii, iii or A-1, A-2. Pass the first and last page. Choose decimal, Roman numerals, letters or prefix only. A prefix and starting number are optional.
Edit content and document details edit_pdf
set_metadata- Set the title, author, subject or keywords. Choose Title, Author, Subject or Keywords. Pass an empty value to clear the field.
add_text- Place text using page coordinates and supported Western European characters. Pass the page, text and a position in points from the top-left corner. Width and font size are optional.
replace_text_line- Replace a supported PDF text line after checking its exact original text. Read the lines first. Submit a separate edit using the same uploaded PDF, page, line number, exact original text and one replacement line.
add_bookmark- Add a bookmark pointing to a page. Pass a title and page. An optional parent path creates a child bookmark.
rename_bookmark- Rename a bookmark. Pass the bookmark path and new title.
retarget_bookmark- Change a bookmark’s destination page. Pass the bookmark path and new destination page.
delete_bookmark- Delete a bookmark and its children. Pass the path of the bookmark to remove.
add_note- Add a comment note at a page position. Pass the page, top-left position in points and note text. The author is optional.
add_watermark- Add a text watermark. Pass text, with optional target pages and opacity from 0 to 1.
add_background- Apply a solid-color page background. Pass a #RRGGBB color and optionally select pages.
remove_page_marks- Remove supported headers, footers, watermarks or backgrounds. Choose header_footer, watermark or background. The engine removes supported marks of that kind.
Work with forms edit_pdf
fill_form- Fill supported interactive form fields. Pass field names with values matching their types, such as text, a checkbox boolean or a list of selected options. Up to 30 fields.
reset_form- Reset interactive fields to their defaults. Pass specific field names or omit the list to reset all fields.
flatten- Bake form fields or comments into the PDF page content. Choose forms, comments or both. The flattened elements become part of the page content.
Split and export export_pdf
split_every- Split into PDFs of N pages each, up to 20 outputs. Pass the number of pages per part. The last part can be shorter.
split_before- Start new PDFs at specified pages, up to 20 outputs. Pass the pages where a new file should start in ascending order. Each part has its own download link.
render_page- Render a page to a PNG at 36–144 DPI. Pass the page and optional DPI. The default is 96 DPI and the result is one PNG.
optimize- Create an optimized PDF copy. The result may have a similar file size. Pass the file ID. The service returns an optimized copy without a target-size setting.
Files, limits and results
Your assistant calls create_upload, sends the PDF bytes to the upload URL, then passes the returned file ID to the relevant tool. Each new task needs a unique request_id. Use the same ID only when retrying the same task.
Each PDF input and output can be up to 20 MB for accounts without a subscription and Starter, or 100 MB on Creator and Studio. An edit job accepts up to five PDFs totaling at most 100 MB, and up to 20 operations. A split job returns up to 20 PDFs with a combined output size within your account’s file allowance. See plan file limits. Each account can have two active jobs and each native command has a 45-second limit.
The assistant polls get_job at most once per second. A completed task returns its inspection result, a signed download in file, or a list of split downloads in files. Edits create a copy. Download it and open it in PdfCraft to continue working. Open the PdfCraft editor.
Jobs and files expire after 24 hours. Upload and download links expire after 10 minutes. Anyone holding a valid link can use it until it expires.
Unsupported requests and feedback
An unsupported operation ID returns UNSUPPORTED_OPERATION. A job that reaches the PDF engine can still fail, for example when a page number is out of range or the selected line has changed. The job response includes the reason and a link here.
Tell us what you wanted to do and what your assistant reported. You can include the task ID. Keep private PDFs, upload and download links, and access tokens out of the message.
Email PDF feedback