Skip to main content
Glama

Split a PDF

pdf_split
Idempotent

Split a PDF into separate files by comma-separated page ranges or one file per page, saving each result to a chosen output folder.

Instructions

Split one PDF into several new files: one per comma-separated range (mode "ranges"), or one per page (mode "pages"). Files are written to output_folder.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoranges
inputYesPath to a PDF inside an allowed folder (absolute, or relative to the first allowed folder).
pagesNoPage numbers or ranges, such as "1, 3-5". Omit for every page.
output_folderYesFolder for the new files, inside an allowed folder; created if missing.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
outputsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare write semantics (readOnlyHint=false), idempotency and non-destructiveness, so the safety profile is covered. The description adds only the destination context ('Files are written to output_folder'), which the output_folder parameter description largely repeats; it says nothing about output naming, overwrite behavior, or what happens to pre-existing files in the target folder.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences with the core action and both modes front-loaded; every clause carries information and nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and the annotations cover the safety profile. The description covers the action, the two modes, and the output destination; the only meaningful omission is guidance on choosing this tool over pdf_extract_pages.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 75%, and the description earns credit by explaining the enum values themselves ('one per comma-separated range' vs 'one per page'), which the bare enum in the schema does not define. It also clarifies the pages input as comma-separated ranges, matching the schema example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb (split) and resource (one PDF) and clearly enumerates the two output shapes: one file per comma-separated range or one file per page. It is distinguishable from pdf_merge, but it never contrasts itself with the close sibling pdf_extract_pages, so the differentiation is only partial.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The mode semantics ('ranges' vs 'pages') implicitly tell the agent which behavior it will get, which is useful implied guidance. However, there is no explicit when-to-use/when-not statement and no pointer to alternatives such as pdf_extract_pages or pdf_remove_pages, so the agent must infer the choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.