@exactpdf/mcp 0.2.14 → 0.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -10,7 +10,9 @@ Use it when an agent needs to inspect, merge, split, rotate, compress to upload
10
10
 
11
11
  Developer quickstart: [https://exactpdf.com/developers](https://exactpdf.com/developers)
12
12
 
13
- ## Setup
13
+ ## One-minute Setup
14
+
15
+ ExactPDF MCP is free to install. Hosted ExactPDF API workflows include 20 free test credits, then pay-as-you-go credits when the workflow is worth automating.
14
16
 
15
17
  1. Create an API key at [max.exactpdf.com/account](https://max.exactpdf.com/account). New accounts get **20 free test credits**. Buy one-time credit packs only after the workflow works; no subscription is required for API/MCP.
16
18
  2. Export:
@@ -48,6 +50,161 @@ For a local checkout of this monorepo:
48
50
  "args": ["/path/to/ExactPDF/packages/exactpdf-mcp/dist/run.js"]
49
51
  ```
50
52
 
53
+ ## Copy-paste Configs
54
+
55
+ Use this bare config when your client lets you set environment variables separately:
56
+
57
+ ```json
58
+ {
59
+ "mcpServers": {
60
+ "exactpdf": {
61
+ "command": "npx",
62
+ "args": ["-y", "@exactpdf/mcp"]
63
+ }
64
+ }
65
+ }
66
+ ```
67
+
68
+ Use this config when the client supports env values inside JSON:
69
+
70
+ ```json
71
+ {
72
+ "mcpServers": {
73
+ "exactpdf": {
74
+ "command": "npx",
75
+ "args": ["-y", "@exactpdf/mcp"],
76
+ "env": {
77
+ "EXACTPDF_API_KEY": "sk_live_..."
78
+ }
79
+ }
80
+ }
81
+ }
82
+ ```
83
+
84
+ ### Claude Desktop
85
+
86
+ Add to `claude_desktop_config.json`, then restart Claude Desktop:
87
+
88
+ ```json
89
+ {
90
+ "mcpServers": {
91
+ "exactpdf": {
92
+ "command": "npx",
93
+ "args": ["-y", "@exactpdf/mcp"],
94
+ "env": {
95
+ "EXACTPDF_API_KEY": "sk_live_..."
96
+ }
97
+ }
98
+ }
99
+ }
100
+ ```
101
+
102
+ ### Claude Code
103
+
104
+ Add the server from your project terminal:
105
+
106
+ ```bash
107
+ claude mcp add exactpdf -- npx -y @exactpdf/mcp
108
+ export EXACTPDF_API_KEY="sk_live_..."
109
+ ```
110
+
111
+ If your Claude Code setup stores env values in its MCP config, use the JSON block above instead.
112
+
113
+ ### Cursor
114
+
115
+ Add to `.cursor/mcp.json` or Cursor Settings -> MCP:
116
+
117
+ ```json
118
+ {
119
+ "mcpServers": {
120
+ "exactpdf": {
121
+ "command": "npx",
122
+ "args": ["-y", "@exactpdf/mcp"],
123
+ "env": {
124
+ "EXACTPDF_API_KEY": "sk_live_..."
125
+ }
126
+ }
127
+ }
128
+ }
129
+ ```
130
+
131
+ ### Windsurf
132
+
133
+ Add ExactPDF as a custom MCP server:
134
+
135
+ ```json
136
+ {
137
+ "mcpServers": {
138
+ "exactpdf": {
139
+ "command": "npx",
140
+ "args": ["-y", "@exactpdf/mcp"],
141
+ "env": {
142
+ "EXACTPDF_API_KEY": "sk_live_..."
143
+ }
144
+ }
145
+ }
146
+ }
147
+ ```
148
+
149
+ ### VS Code / Cline
150
+
151
+ Add to your Cline MCP settings:
152
+
153
+ ```json
154
+ {
155
+ "mcpServers": {
156
+ "exactpdf": {
157
+ "command": "npx",
158
+ "args": ["-y", "@exactpdf/mcp"],
159
+ "env": {
160
+ "EXACTPDF_API_KEY": "sk_live_..."
161
+ }
162
+ }
163
+ }
164
+ }
165
+ ```
166
+
167
+ ## Five Agent Recipes
168
+
169
+ Paste one of these after the MCP server is connected. Use absolute local file paths.
170
+
171
+ ```text
172
+ Merge these 3 PDFs into one file:
173
+ /Users/me/Desktop/cover.pdf
174
+ /Users/me/Desktop/form.pdf
175
+ /Users/me/Desktop/id.pdf
176
+ ```
177
+
178
+ ```text
179
+ Compress /Users/me/Desktop/application.pdf under 500KB for a government upload.
180
+ Use ExactPDF MCP and save the output next to the original.
181
+ ```
182
+
183
+ ```text
184
+ Convert /Users/me/Desktop/manual.pdf to structured Markdown for RAG.
185
+ Keep headings and page references.
186
+ ```
187
+
188
+ ```text
189
+ Extract metadata and per-page JSON from /Users/me/Desktop/contract.pdf.
190
+ Show me the page count, title, author, and first-page text.
191
+ ```
192
+
193
+ ```text
194
+ Turn these images into one PDF:
195
+ /Users/me/Desktop/photo-1.jpg
196
+ /Users/me/Desktop/photo-2.jpg
197
+ /Users/me/Desktop/photo-3.jpg
198
+ ```
199
+
200
+ ## 30-Second Demo
201
+
202
+ ![ExactPDF MCP setup demo](https://exactpdf.com/demos/exactpdf-mcp-demo.gif)
203
+
204
+ Video: https://exactpdf.com/demos/exactpdf-mcp-demo.mp4
205
+
206
+ Install ExactPDF MCP, paste one config block, ask your agent to fix a PDF, and get a local output file.
207
+
51
208
  ## Tools
52
209
 
53
210
  Safe first run:
package/dist/run.js CHANGED
@@ -35,7 +35,7 @@ const TARGET_SIZE_PRESETS = {
35
35
  '500kb': 500 * 1024,
36
36
  '1mb': 1024 * 1024,
37
37
  };
38
- const server = new McpServer({ name: 'exactpdf', version: '0.2.14' }, {
38
+ const server = new McpServer({ name: 'exactpdf', version: '0.2.15' }, {
39
39
  instructions: 'ExactPDF turns local PDFs into production outputs for agents: inspect metadata, merge/split/rotate/compress, target-size best-effort compression, create portal-ready merge/images workflows, extract text, export PDF JSON, export structured Markdown for RAG, and create short voice previews. Start with exactpdf_first_run_checklist, then exactpdf_account and exactpdf_pdf_info before paid work. New users can create a key with free test credits at https://max.exactpdf.com/account; developer quickstart: https://exactpdf.com/developers. Free tools: first-run checklist, account, pdf-info, voice-preview, and speech cost estimate. Standard document tools cost 1 credit on success, including launch portal-ready workflows. PDF-to-images and OCR are visible as backend-required placeholders until server renderer/OCR worker endpoints ship. Background PDF speech/audiobook/translation/presentation jobs are in production hardening and must be treated as planning-only until worker smoke passes. Use absolute local file paths; binary outputs are saved to EXACTPDF_API_OUTPUT_DIR or the OS temp directory.',
40
40
  });
41
41
  async function saveBinaryFromResponse(res, prefix, fallbackExt) {
@@ -0,0 +1,67 @@
1
+ # ExactPDF MCP Installation for Agents
2
+
3
+ Use this file when an AI coding assistant or MCP marketplace needs deterministic setup instructions for `@exactpdf/mcp`.
4
+
5
+ ## Requirements
6
+
7
+ - Node.js 18 or newer.
8
+ - No repository clone is required.
9
+ - Optional: `EXACTPDF_API_KEY` for hosted ExactPDF API workflows.
10
+
11
+ ## Install Command
12
+
13
+ ```bash
14
+ npx -y @exactpdf/mcp
15
+ ```
16
+
17
+ ## MCP Client Config
18
+
19
+ ```json
20
+ {
21
+ "mcpServers": {
22
+ "exactpdf": {
23
+ "command": "npx",
24
+ "args": ["-y", "@exactpdf/mcp"],
25
+ "env": {
26
+ "EXACTPDF_API_KEY": "sk_live_or_test_key"
27
+ }
28
+ }
29
+ }
30
+ }
31
+ ```
32
+
33
+ If the user does not have an API key yet, keep the server installed and direct them to:
34
+
35
+ ```text
36
+ https://max.exactpdf.com/account
37
+ ```
38
+
39
+ New users get free test credits. The server can still show first-run guidance without a key.
40
+
41
+ ## First Verification Prompt
42
+
43
+ ```text
44
+ Use ExactPDF MCP. Run the first-run checklist, then check my ExactPDF account.
45
+ ```
46
+
47
+ ## First PDF Workflow Prompt
48
+
49
+ ```text
50
+ Use ExactPDF MCP to inspect this PDF, then compress it under 500KB and save the result next to the original file:
51
+ /absolute/path/to/document.pdf
52
+ ```
53
+
54
+ ## Safety and Billing Notes
55
+
56
+ - ExactPDF MCP is free to install.
57
+ - Hosted ExactPDF API workflows include free test credits, then pay-as-you-go credits.
58
+ - Standard document workflows consume credits only on successful output.
59
+ - Background PDF speech, audiobook, translate-and-speak, and presentation narration are disabled while dedicated worker hardening is in progress.
60
+ - OCR and PDF-to-images are listed as backend-required placeholders until dedicated API workers are enabled.
61
+
62
+ ## Common Troubleshooting
63
+
64
+ - If `npx` is not found, install Node.js 18+ and restart the MCP client.
65
+ - If the server starts but tools return `401`, set `EXACTPDF_API_KEY`.
66
+ - Use absolute file paths for local PDFs and images.
67
+ - If a PDF is too large for the API workflow, use ExactPDF browser tools or Max workflows from `https://exactpdf.com`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exactpdf/mcp",
3
- "version": "0.2.14",
3
+ "version": "0.2.15",
4
4
  "description": "MCP server for ExactPDF — agent PDF workflows, target-size compression, structured Markdown/RAG, PDF JSON, merge/split, images-to-PDF, voice previews, and API credits.",
5
5
  "mcpName": "com.exactpdf/mcp",
6
6
  "type": "module",
@@ -14,19 +14,20 @@
14
14
  "files": [
15
15
  "dist",
16
16
  "README.md",
17
+ "llms-install.md",
17
18
  "server.json"
18
19
  ],
19
20
  "publishConfig": {
20
21
  "access": "public"
21
22
  },
22
- "homepage": "https://exactpdf.com/developers",
23
+ "homepage": "https://exactpdf.com/mcp",
23
24
  "bugs": {
24
25
  "url": "https://exactpdf.com/docs/api",
25
26
  "email": "support@exactpdf.com"
26
27
  },
27
28
  "repository": {
28
29
  "type": "git",
29
- "url": "git+https://github.com/exactpdf/exactpdf.git",
30
+ "url": "git+https://github.com/smmallya/ExactPDF.git",
30
31
  "directory": "packages/exactpdf-mcp"
31
32
  },
32
33
  "scripts": {
package/server.json CHANGED
@@ -3,13 +3,13 @@
3
3
  "name": "com.exactpdf/mcp",
4
4
  "title": "ExactPDF",
5
5
  "description": "Agent-facing PDF API: merge, split, rotate, compress, target-size compression, images-to-PDF, metadata, text extraction, PDF JSON, structured Markdown/RAG, voice previews, and API credit checks. PDF-to-images/OCR require backend workers; background audio jobs are hardening-only until worker smoke passes.",
6
- "version": "0.2.14",
7
- "websiteUrl": "https://exactpdf.com/docs/api",
6
+ "version": "0.2.15",
7
+ "websiteUrl": "https://exactpdf.com/mcp",
8
8
  "packages": [
9
9
  {
10
10
  "registryType": "npm",
11
11
  "identifier": "@exactpdf/mcp",
12
- "version": "0.2.14",
12
+ "version": "0.2.15",
13
13
  "transport": {
14
14
  "type": "stdio"
15
15
  }