# Pdf Merge — REST API endpoint `pdf-merge`

Combine several PDFs into one, in the order given. Each input is a base64-encoded PDF and the result is a base64-encoded PDF. Pages are copied as they are — nothing is re-rendered, re-encoded or watermarked. An encrypted PDF must be unlocked first.

- Category: documents
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, no API keys, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/pdf-merge/execute (no API keys, 60 req/min per IP)
- Network tool: fetches a fixed, hard-coded public upstream (never a private host).
- Reference page: https://findutils.com/api/pdf-merge/
- Same tool on the other surface: https://findutils.com/mcp/pdf-merge/

## Call the endpoint (verified example)

```bash
curl -X POST https://api.findutils.com/api/tools/pdf-merge/execute \
  -H "Content-Type: application/json" \
  -d '{
    "pdfs": [
      "JVBERi0xLjcK",
      "JVBERi0xLjcK"
    ]
  }'

# Parameter schema
curl https://api.findutils.com/api/tools/pdf-merge
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `pdfs` | array | yes | Base64-encoded PDFs, in the order they should appear. At least two. |

Example arguments (verified):

```json
{
  "pdfs": [
    "JVBERi0xLjcK",
    "JVBERi0xLjcK"
  ]
}
```

OpenAPI 3.1 spec: https://findutils.com/api/openapi.json · Interactive docs: https://findutils.com/api/docs/

## Also an MCP tool

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/
```

Then ask the client to call `findutils:pdf_merge`. Full MCP reference: https://findutils.com/mcp/pdf-merge/

---
Full catalog: GET https://api.findutils.com/api/tools · https://findutils.com/api/ · https://findutils.com/llms.txt
