Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Unofficial PDF toolkit (merge/split/compress/OCR/convert/watermark/protect/...) via iLoveAPI.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ILOVEAPI_PROJECT_PUBLIC_KEY, ILOVEAPI_PROJECT_SECRET_KEY, ILOVEAPI_SANDBOX_ROOTค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"pdf-toolkit": {
"command": "npx",
"args": [
"-y",
"pdf-toolkit-mcp"
],
"env": {
"ILOVEAPI_PROJECT_PUBLIC_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_PROJECT_SECRET_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_SANDBOX_ROOT": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add pdf-toolkit --env ILOVEAPI_PROJECT_PUBLIC_KEY='ใส่ค่าของคุณ' --env ILOVEAPI_PROJECT_SECRET_KEY='ใส่ค่าของคุณ' --env ILOVEAPI_SANDBOX_ROOT='ใส่ค่าของคุณ' -- npx -y pdf-toolkit-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"pdf-toolkit": {
"command": "npx",
"args": [
"-y",
"pdf-toolkit-mcp"
],
"env": {
"ILOVEAPI_PROJECT_PUBLIC_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_PROJECT_SECRET_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_SANDBOX_ROOT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"pdf-toolkit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pdf-toolkit-mcp"
],
"env": {
"ILOVEAPI_PROJECT_PUBLIC_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_PROJECT_SECRET_KEY": "ใส่ค่าของคุณ",
"ILOVEAPI_SANDBOX_ROOT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ILOVEAPI_SANDBOX_ROOT envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub EigenCharlie ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: ILOVEAPI_PROJECT_PUBLIC_KEY, ILOVEAPI_PROJECT_SECRET_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.2) เข้า registry 7 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Agent-Native Google Calendar - manage events, sync, and public booking
ให้ AI สร้างและแก้ไฟล์ Excel ได้เอง ทั้งสูตร กราฟ และ PivotTable โดยไม่ต้องมีโปรแกรม Excel ในเครื่อง
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
18 PDF operations for Claude Code, Claude Desktop, and any MCP client — via iLoveAPI.
Install · Tools · Recipes · Architecture · Security · FAQ
Disclaimer.
pdf-toolkit-mcpis an independent, community-built open-source client. It is not affiliated with, endorsed, sponsored, or certified by iLovePDF SL. The project talks to the public iLoveAPI REST service using *your* project credentials — nothing is proxied, resold, or relicensed. "iLovePDF" and "iLoveAPI" are trademarks of iLovePDF SL; this project does not claim ownership of those marks.
| Manual iLoveAPI | Raw @ilovepdf/ilovepdf-nodejs | `pdf-toolkit-mcp` | |
|---|---|---|---|
| Callable from Claude Code / Claude Desktop / any MCP client | ❌ | ❌ | ✅ |
| JWT signing + 5-step lifecycle handled for you | ❌ | ✅ | ✅ |
| Validated Zod schemas (no bad inputs reach the API) | ❌ | ❌ | ✅ |
| Path sandboxing against traversal | ❌ | ❌ | ✅ |
Structured error codes (RATE_LIMITED, PLAN_LIMIT, …) | ❌ | partial | ✅ |
| Progress notifications during long OCR tasks | ❌ | ❌ | ✅ |
| Bundled Claude Code skill with multi-step pipelines | ❌ | ❌ | ✅ |
Zero-setup install via npx -y | ❌ | ❌ | ✅ |
Free for personal use. iLoveAPI's free tier grants ~2,500 credits / month; this MCP itself is MIT-licensed and costs nothing.
After installation, just *talk* to Claude. The model figures out which tools to call:
You: Merge invoice-jan.pdf and invoice-feb.pdf into Q1.pdf, then compress it hard
and lock it with the password "2026q1".
Claude (planning):
Claude (result): ✅ Created ~/docs/Q1-compressed-protected.pdf (312 KB, password-protected).
Project public key and Project secret key.export ILOVEAPI_PROJECT_PUBLIC_KEY="project_public_xxx"
export ILOVEAPI_PROJECT_SECRET_KEY="secret_key_xxx"
claude mcp add pdf-toolkit -- npx -y pdf-toolkit-mcp
Restart Claude Code and all 18 tools appear in the picker. Verify with /mcp → you should see pdf-toolkit: connected (18 tools).
pdf-workflow skill)/plugin marketplace add EigenCharlie/pdf-toolkit-mcp
/plugin install pdf-toolkit@EigenCharlie/pdf-toolkit-mcp
The plugin auto-configures the MCP server *and* installs a skill that teaches Claude five canonical multi-step PDF pipelines (see Workflow recipes).
claude_desktop_config.json)Click to expand
Edit claude_desktop_config.json (%APPDATA%\Claude\ on Windows, ~/Library/Application Support/Claude/ on macOS):
{
"mcpServers": { "pdf-toolkit": { "command": "npx", "args": ["-y", "pdf-toolkit-mcp"], "env": { "ILOVEAPI_PROJECT_PUBLIC_KEY": "project_public_xxx", "ILOVEAPI_PROJECT_SECRET_KEY": "secret_key_xxx" } } } }
Restart Claude Desktop — the 🔌 icon should show pdf-toolkit connected.
ILOVEAPI_PROJECT_PUBLIC_KEY=… ILOVEAPI_PROJECT_SECRET_KEY=… npx -y pdf-toolkit-mcp
The server speaks the standard MCP JSON-RPC 2.0 framing over stdio. Wire it into Cursor, Windsurf, mcphub, mcp-inspector, or anything else that speaks MCP.
.mcpb bundle (drag-and-drop)Grab pdf-toolkit-mcp- .mcpb from the latest GitHub Release and drag it into Claude Desktop → Settings → Extensions. Claude will prompt for your iLoveAPI keys via the user_config section of the bundled manifest. No npx, no Node, no terminal.
Bundles ship unsigned (no publisher certificate yet). macOS Gatekeeper / Windows SmartScreen may warn on first install; verify the SHA-256 in the release notes before accepting.
The server is indexed on the official MCP Registry under io.github.EigenCharlie/pdf-toolkit-mcp. Clients that browse the registry (Claude Desktop extension pane, VS Code MCP picker, mcphub, etc.) can install it without any manual config — they'll point at the npm package and prompt for the two iLoveAPI env vars automatically.
All 18 tools are exposed with strict Zod schemas, additionalProperties: false, and return both a text summary *and* a file:// resource URI so the client can surface the output.
| Tool | What it does | Key inputs |
|---|---|---|
merge_pdf | Combine ≥ 2 PDFs in order | input_files[], output_path? |
split_pdf | Split by page ranges ("1-3,5-7") or fixed chunk size | input_file, ranges?, fixed_range? |
extract_pdf_pages | Keep a specific subset of pages | input_file, pages ("1,3,5-9") |
| Tool | Output | Notes |
|---|---|---|
pdf_to_word | .docx | Scanned PDFs → run ocr_pdf first for best results |
pdf_to_excel | .xlsx | Works best on tabular source PDFs |
pdf_to_powerpoint | .pptx | One slide per PDF page |
pdf_to_jpg | .zip of .jpg | mode: "pages" renders pages; "extract" pulls embedded images |
| Tool | Accepts | Notes |
|---|---|---|
office_to_pdf | .doc, .docx, .xls, .xlsx, .ppt, .pptx | Server-side rendering |
html_to_pdf | .html, .htm | Local HTML only; external assets may not resolve |
image_to_pdf | .jpg, .jpeg, .png | One image per page, preserves order |
| Tool | What it does | Key inputs |
|---|---|---|
rotate_pdf | Rotate pages 90 / 180 / 270° clockwise | rotation, pages? (default: all) |
add_page_numbers | Stamp numbered footer/header | starting_number, vertical_position, horizontal_position |
add_watermark | Text or image watermark | mode: "text" + text, OR mode: "image" + image_file |
| Tool | What it does | Key inputs |
|---|---|---|
unlock_pdf | Remove known password | input_file, password |
protect_pdf | Add password | input_file, password |
| Tool | What it does | Notes |
|---|---|---|
repair_pdf | Attempt structural repair on damaged PDFs | Useful before further processing |
ocr_pdf | Run OCR to make scans searchable | languages[] (e.g. ["eng"], ["spa"], ["eng","spa"]). ⏱ Can exceed 60s on image-heavy PDFs |
All tools accept absolute or CWD-relative paths for
input_file(s)and an optionaloutput_path(file or directory). Defaults place the result next to the first input with a timestamped name.
The bundled pdf-workflow skill (skills/pdf-workflow/SKILL.md) teaches Claude five canonical multi-step pipelines. You can also run these manually — just describe the end state and Claude chains the tools for you.
merge_pdf([a.pdf, b.pdf, c.pdf])
→ compress_pdf(level="recommended") → protect_pdf(password="…")
</details>
office_to_pdf(report.docx)
→ add_watermark(mode="text", text="CONFIDENTIAL", opacity=30) → protect_pdf(password="…")
</details>
extract_pdf_pages(scan.pdf, pages="3-9")
→ ocr_pdf(languages=["eng"]) → pdf_to_word
</details>
compress_pdf(big.pdf, level="extreme")
→ protect_pdf(password="…")
</details>
repair_pdf(scan_broken.pdf)
→ ocr_pdf(languages=["eng"]) → add_page_numbers(position="bottom-center")
</details>
┌────────────────────────────┐ stdio ┌──────────────────────────┐
│ Claude Code / Desktop │◀───────────▶│ pdf-toolkit-mcp server │ │ (or any MCP client) │ JSON-RPC │ (this repo) │ └────────────────────────────┘ └────────────┬─────────────┘ │ ▼ ┌──────────────────────┐ │ @ilovepdf/ │ │ ilovepdf-nodejs │ │ (JWT + HTTP) │ └──────────┬───────────┘ │ ▼ HTTPS ┌──────────────────────┐ │ iLoveAPI servers │ │ api.ilovepdf.com │ └──────────────────────┘
src/api/tasks.ts) [ 10% ] start → POST /v1/start/{tool} (server assignment + task id)
[ 40% ] upload → POST /v1/upload (one call per file, progress scales) [ 50% ] proce
ตัดมาแค่ช่วงต้น อ่านต่อใน repo