Puter MCP
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Drop-in fetch MCP: clean Markdown from any URL, with JS rendering and anti-bot.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"fetchmcp": {
"command": "npx",
"args": [
"-y",
"@labtoolsstudio/fetchmcp"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add fetchmcp -- npx -y @labtoolsstudio/fetchmcpวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"fetchmcp": {
"command": "npx",
"args": [
"-y",
"@labtoolsstudio/fetchmcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"fetchmcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@labtoolsstudio/fetchmcp"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 10 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub labtoolsstudio ซึ่งเป็นเจ้าของ repo
มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 2 จาก 2 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด 3 เดือนที่ผ่านมา และส่งรุ่นล่าสุด (0.1.1) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Puter MCP, Agent-Native Slides, Agent-Native Forms
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Puter MCP enables AI tools to interact with Puter: manage files, websites, workers, and more
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
A drop-in replacement for the official `fetch` MCP that actually works on modern web pages.
The official fetch MCP is broken on JavaScript-heavy pages, truncates output at 5,000 characters, and ships an unpatched SSRF vulnerability. fetchmcp returns clean, LLM-ready Markdown from any URL — rendering JavaScript when needed, passing basic bot protection without paid proxies, and telling you honestly when a page is blocked instead of hallucinating content. npx and go.
// Replace the official fetch server with this — one line in your MCP config:
"fetchmcp": { "command": "npx", "args": ["-y", "@labtoolsstudio/fetchmcp"] }
official fetch | fetchmcp | |
|---|---|---|
| JavaScript pages | ❌ empty / broken | ✅ auto-renders in a real browser |
| Output length | ✂️ truncated at 5,000 chars | ✅ full page, with paging |
| Bot protection (403 / Cloudflare) | ❌ fails silently | ✅ passes mid-tier walls, no paid proxy |
| Blocked page | ❌ returns the CAPTCHA as "content" | ✅ honest typed error, never fakes it |
| SSRF safety | ❌ CVE-2025-65513 (CVSS 9.3) | ✅ private/metadata IPs refused by default |
| Cost | free | free, self-hosted, $0 |
Add to your MCP client config (claude_desktop_config.json, Cursor mcp.json, Cline, etc.):
{
"mcpServers": { "fetchmcp": { "command": "npx", "args": ["-y", "@labtoolsstudio/fetchmcp"] } } }
The install is light — no browser is downloaded up front, and static reading (fetch → Readability → Markdown) works immediately. The first time a page actually needs JavaScript, fetchmcp downloads a stealth Chromium once (~150 MB) automatically, then renders it — still zero-config. To pre-download it at install time, set FETCHMCP_PREINSTALL_BROWSER=1. To stay static-only and never download it, set FETCHMCP_SKIP_BROWSER_DOWNLOAD=1 (JS pages then return an honest needs_js).
read_urlFetch any web page as clean Markdown.
| arg | type | description |
|---|---|---|
url | string | the URL to fetch (http/https) |
render | boolean | JS rendering: true = always, false = never, omitted = automatic (only for empty SPA shells) |
raw | boolean | return raw HTML instead of Markdown |
headers | object | extra request headers, e.g. {"Authorization": "Bearer …", "Cookie": "…"} |
max_length | integer | cap characters returned (0 = unlimited, the default) |
start_index | integer | offset for paging through a long page |
read_docsSame engine, tuned for documentation: strips navigation sidebars, headers, and footers so API docs and guides come back as clean reference text. Takes url, render, headers, max_length, start_index.
fetchmcp never returns a bot wall, an error page, or a truncated shell dressed up as real content. When it can't read a page it says why, with a typed status: blocked (bot protection, with the vendor), blocked_ssrf, needs_js, http_error, timeout, network_error, unsupported_content, or empty.
| var | default | meaning |
|---|---|---|
FETCHMCP_TIMEOUT_MS | 30000 | per-request timeout |
FETCHMCP_MAX_RETRIES | 2 | retries on network errors / 429 / 503 (with backoff + Retry-After) |
FETCHMCP_ALLOW_PRIVATE_IP | unset | set to 1 to allow private/localhost IPs (trusted intranet docs) |
FETCHMCP_FLARESOLVERR_URL | unset | self-hosted FlareSolverr endpoint for tougher challenges |
FETCHMCP_SKIP_BROWSER_DOWNLOAD | unset | set to 1 for static-only: never download Chromium; JS pages return needs_js |
FETCHMCP_PREINSTALL_BROWSER | unset | set to 1 to download Chromium at install time instead of on first JS use |
npm install # installs deps (Chromium downloads on first JS use)
npm run build # compile TypeScript to dist/ npm test # unit tests (block detection, SSRF) — no network npm run test:e2e # live end-to-end suite against real sites
node test/probe.mjs read_url https://example.com node test/probe.mjs read_url https://some-spa.example.com --render node test/probe.mjs read_docs https://docs.python.org/3/library/json.html node test/probe.mjs read_url https://api.example.com --header "Authorization=Bearer x" --max-length 500 node test/probe.mjs read_url https://example.com --full # print the whole response
test/probe.mjs --help semantics are documented at the top of that file.
Three tiers, escalating only as needed:
403/429/503.If fetchmcp saved you from one more fetch-returns-nothing moment, a star helps others find it.
MIT — see LICENSE.