Handiworks
MCP tools for AI agents: render URLs to image/PDF, check link health, convert HTML/CSV/JSON.
我該用這個嗎
品質與安全性
A
根據工具定義與協定合規性的自動化分析。
上下文成本
~726Token(工具定義)
~2.3 KB典型回應大小
中等的注意力影響(128k 上下文的 0.57%)
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"handiworks-mcp": {
"url": "https://handiworks-mcp.privateluke4444.workers.dev/mcp"
}
}
}遠端端點
https://handiworks-mcp.privateluke4444.workers.dev/mcpstreamable-httphttps://mcp.handiworks.studio/mcpstreamable-http它能做什麼
工具清單
工具(3)
🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
⚪render(url, format, fullPage, width, height, ...)
Render a web page to a PNG/JPEG screenshot or a PDF using a real headless browser. Returns the image inline (base64) or the PDF as an embedded resource. Results are cached for 24h.
輸入結構描述
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The absolute URL to render (must include https:// or http://)."
},
"format": {
"default": "png",
"description": "Output format. png/jpeg return an image; pdf returns a PDF document.",
"type": "string",
"enum": [
"png",
"jpeg",
"pdf"
]
},
"fullPage": {
"default": false,
"description": "For screenshots: capture the entire scrollable page instead of just the viewport.",
"type": "boolean"
},
"width": {
"default": 1280,
"description": "Viewport width in pixels.",
"type": "integer",
"minimum": 64,
"maximum": 3840
},
"height": {
"default": 800,
"description": "Viewport height in pixels.",
"type": "integer",
"minimum": 64,
"maximum": 2160
},
"waitUntil": {
"default": "networkidle2",
"description": "Navigation completion signal before capturing.",
"type": "string",
"enum": [
"load",
"domcontentloaded",
"networkidle0",
"networkidle2"
]
},
"pdfFormat": {
"default": "A4",
"description": "Paper size, used only when format is pdf.",
"type": "string",
"enum": [
"A4",
"Letter",
"Legal",
"A3",
"Tabloid"
]
},
"fresh": {
"default": false,
"description": "Bypass the 24h cache and force a fresh render.",
"type": "boolean"
}
},
"required": [
"url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢check_link(url, followRedirects, maxRedirects, fresh)
Check a URL's health: follows the redirect chain, reports the final status and URL, extracts the page <title>, and flags likely paywalls. Cached for 6h.
輸入結構描述
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The absolute URL to check."
},
"followRedirects": {
"default": true,
"description": "Follow 3xx redirects to the final destination.",
"type": "boolean"
},
"maxRedirects": {
"default": 10,
"description": "Maximum redirect hops to follow.",
"type": "integer",
"minimum": 0,
"maximum": 20
},
"fresh": {
"default": false,
"description": "Bypass the 6h cache and re-check now.",
"type": "boolean"
}
},
"required": [
"url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪convert(mode, content, delimiter, headers, pdfFormat)
Convert content between formats. Modes: html-to-pdf, html-to-png (real browser), csv-to-json, json-to-csv. PDF/PNG return as attachment/image; data modes return text.
輸入結構描述
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"html-to-pdf",
"html-to-png",
"csv-to-json",
"json-to-csv"
],
"description": "Conversion to perform."
},
"content": {
"type": "string",
"description": "The input content: HTML, CSV, or JSON depending on mode."
},
"delimiter": {
"default": ",",
"description": "Field delimiter for CSV modes.",
"type": "string"
},
"headers": {
"default": true,
"description": "For csv-to-json: treat the first row as column headers.",
"type": "boolean"
},
"pdfFormat": {
"default": "A4",
"description": "Paper size for html-to-pdf.",
"type": "string",
"enum": [
"A4",
"Letter",
"Legal",
"A3",
"Tabloid"
]
}
},
"required": [
"mode",
"content"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}社群
證據
近期觀測
已驗證未記錄版本3 個工具
觀測失敗未記錄版本—
已驗證未記錄版本3 個工具
觀測失敗未記錄版本—
已驗證未記錄版本3 個工具