pdf-tools

Free PDF tools for AI agents: merge, split, rotate, watermark, page numbers, metadata, flatten.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
85%
Vollständigkeit des Schemas
98%
Qualität der Benennung
88%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (5)

  • LOWTool 'merge_pdfs' description lacks action verbin merge_pdfs
  • LOWTool 'extract_pages' description lacks action verbin extract_pages
  • LOWTool 'watermark_pdf' description lacks action verbin watermark_pdf
  • LOWTool 'add_page_numbers' description lacks action verbin add_page_numbers
  • LOWTool 'flatten_pdf' description lacks action verbin flatten_pdf

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~1,085Tokens (Tool-Definitionen)
~806 BTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (0.85% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "pdf-tools": {
      "url": "https://pdfia.com/mcp"
    }
  }
}

Remote-Endpunkte

https://pdfia.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (10)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
⚪merge_pdfs(files)

Merge multiple PDF files into one, in the order given. Returns the merged PDF as base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "files": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "The PDF file, base64-encoded (max 10 MB)"
      },
      "description": "2+ PDFs, base64-encoded, in merge order"
    }
  },
  "required": [
    "files"
  ]
}
🟢split_pdf(file, ranges)

Split a PDF into parts. Provide ranges like "1-3, 5, 8-10" (each comma group becomes one output PDF), or omit ranges to get every page as its own PDF. Returns base64 files.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "ranges": {
      "type": "string",
      "description": "e.g. \"1-3, 5, 8-10\"; omit for one file per page"
    }
  },
  "required": [
    "file"
  ]
}
🟢extract_pages(file, pages)

Extract the given pages into a new PDF (original order). Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "pages": {
      "type": "string",
      "description": "Page list like \"2, 5-7\" (1-based)"
    }
  },
  "required": [
    "file",
    "pages"
  ]
}
🔴remove_pages(file, pages)

Delete the given pages from a PDF. Returns the remaining document as base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "pages": {
      "type": "string",
      "description": "Page list like \"2, 5-7\" (1-based)"
    }
  },
  "required": [
    "file",
    "pages"
  ]
}
🟢rotate_pdf(file, degrees, pages)

Rotate pages clockwise by 90, 180, or 270 degrees. Rotates all pages unless a page list is given. Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "degrees": {
      "type": "number",
      "enum": [
        90,
        180,
        270
      ]
    },
    "pages": {
      "type": "string",
      "description": "Optional page list like \"1, 3\"; omit to rotate all"
    }
  },
  "required": [
    "file",
    "degrees"
  ]
}
⚪watermark_pdf(file, text, opacity, size, color)

Stamp a diagonal text watermark (e.g. "CONFIDENTIAL", "DRAFT") across every page. Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "text": {
      "type": "string",
      "description": "Watermark text"
    },
    "opacity": {
      "type": "number",
      "description": "0.02–1, default 0.15"
    },
    "size": {
      "type": "number",
      "description": "Font size in points, 8–200, default 60"
    },
    "color": {
      "type": "string",
      "enum": [
        "gray",
        "red",
        "blue"
      ],
      "description": "Default gray"
    }
  },
  "required": [
    "file",
    "text"
  ]
}
🟡add_page_numbers(file, position, start, format, size)

Stamp page numbers onto every page of a PDF. Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "position": {
      "type": "string",
      "enum": [
        "bottom-center",
        "bottom-right",
        "bottom-left",
        "top-center"
      ],
      "description": "Default bottom-center"
    },
    "start": {
      "type": "number",
      "description": "First number, default 1"
    },
    "format": {
      "type": "string",
      "enum": [
        "n",
        "page-n",
        "n-of-total"
      ],
      "description": "Default n"
    },
    "size": {
      "type": "number",
      "description": "Font size 6–24, default 12"
    }
  },
  "required": [
    "file"
  ]
}
🟢get_pdf_metadata(file)

Read a PDF's document properties (title, author, subject, keywords, creator, producer, dates, page count).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    }
  },
  "required": [
    "file"
  ]
}
🟡set_pdf_metadata(file, title, author, subject, keywords, ...)

Rewrite a PDF's document properties. Pass empty strings to strip identifying metadata before sharing. Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    },
    "title": {
      "type": "string"
    },
    "author": {
      "type": "string"
    },
    "subject": {
      "type": "string"
    },
    "keywords": {
      "type": "string",
      "description": "Comma-separated"
    },
    "creator": {
      "type": "string"
    },
    "producer": {
      "type": "string"
    }
  },
  "required": [
    "file"
  ]
}
⚪flatten_pdf(file)

Flatten fillable form fields into permanent page content so answers can't be edited. Returns base64.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "The PDF file, base64-encoded (max 10 MB)"
    }
  },
  "required": [
    "file"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet10 Tools
verifiziertVersion nicht aufgezeichnet10 Tools