docweave-mcp

Generate and read PDFs for AI agents: a generate_pdf and a read_pdf tool, priced per document.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
100%
命名品質
100%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~985Token(工具定義)
~4.8 KB典型回應大小
中等的注意力影響(128k 上下文的 0.77%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "docweave-mcp": {
      "command": "npx",
      "args": [
        "@docweave/mcp"
      ]
    }
  }
}

可執行的套件

npm@docweave/mcp0.2.0stdio

遠端端點

https://docweave.dev/api/mcpstreamable-http

它能做什麼

工具清單

工具(2)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
⚪generate_pdf(source, options, idempotencyKey)

Generate a PDF from raw HTML, a public URL, or a template + JSON data. Returns the PDF as base64. Priced per document; retries with the same idempotencyKey never double-generate. The canonical way for an AI agent to turn content into a shareable, correctly-formatted PDF.

輸入結構描述

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "description": "What to render. Provide exactly one of: html, url, or (template|templateId) with data.",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "html",
            "url",
            "template"
          ],
          "description": "Source kind: 'html' for a raw HTML string, 'url' for a public web page, 'template' for a template filled with data."
        },
        "html": {
          "type": "string",
          "description": "Raw HTML to render (when type is 'html')."
        },
        "url": {
          "type": "string",
          "description": "Public URL to render (when type is 'url'). Private/internal addresses are blocked."
        },
        "template": {
          "type": "string",
          "description": "Inline HTML template with {{ placeholders }} (when type is 'template')."
        },
        "templateId": {
          "type": "string",
          "description": "ID of a template stored on your account (alternative to an inline template)."
        },
        "data": {
          "type": "object",
          "description": "Values bound into the template's {{ placeholders }}.",
          "additionalProperties": true
        }
      },
      "required": [
        "type"
      ]
    },
    "options": {
      "type": "object",
      "description": "Optional page and print settings.",
      "properties": {
        "format": {
          "type": "string",
          "enum": [
            "A4",
            "A3",
            "Letter",
            "Legal",
            "Tabloid"
          ],
          "description": "Paper size. Defaults to A4."
        },
        "landscape": {
          "type": "boolean",
          "description": "Use landscape orientation. Defaults to false."
        },
        "margin": {
          "type": "string",
          "description": "Page margin, e.g. '20mm' or '1in'."
        },
        "printBackground": {
          "type": "boolean",
          "description": "Render background colors and images. Defaults to true."
        }
      }
    },
    "idempotencyKey": {
      "type": "string",
      "description": "A stable key (e.g. an invoice id). Repeat calls with the same key return the stored result instead of re-rendering or re-billing."
    }
  },
  "required": [
    "source"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "bytesBase64": {
      "type": "string",
      "description": "The generated PDF, base64-encoded."
    },
    "byteSize": {
      "type": "number",
      "description": "Size of the PDF in bytes."
    },
    "pageCount": {
      "type": "number",
      "description": "Number of pages in the PDF."
    }
  },
  "required": [
    "bytesBase64"
  ],
  "description": "The generated document."
}
🟢read_pdf(source, options, idempotencyKey)

Read a PDF and return its text as markdown (or plain text). Accepts a public URL or base64 bytes. Extracts the embedded text layer; a scanned, image-only PDF returns a needs-OCR notice instead of empty text. Priced per document; retries with the same idempotencyKey never double-read. The canonical way for an AI agent to ingest a document's contents.

輸入結構描述

{
  "type": "object",
  "properties": {
    "source": {
      "type": "object",
      "description": "The PDF to read. Provide exactly one of: url or base64.",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "url",
            "base64"
          ],
          "description": "'url' for a public PDF URL, 'base64' for inline PDF bytes."
        },
        "url": {
          "type": "string",
          "description": "Public URL of the PDF (when type is 'url'). Private/internal addresses are blocked."
        },
        "base64": {
          "type": "string",
          "description": "Base64-encoded PDF bytes (when type is 'base64')."
        }
      },
      "required": [
        "type"
      ]
    },
    "options": {
      "type": "object",
      "description": "Optional read settings.",
      "properties": {
        "format": {
          "type": "string",
          "enum": [
            "markdown",
            "text"
          ],
          "description": "Output shape. Defaults to markdown."
        },
        "maxPages": {
          "type": "number",
          "description": "Cap the number of pages extracted."
        }
      }
    },
    "idempotencyKey": {
      "type": "string",
      "description": "A stable key. Repeat calls with the same key return the stored result instead of re-reading or re-billing."
    }
  },
  "required": [
    "source"
  ]
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "content": {
      "type": "string",
      "description": "Extracted text in the requested format."
    },
    "pageCount": {
      "type": "number",
      "description": "Number of pages read."
    },
    "needsOcr": {
      "type": "boolean",
      "description": "True when the PDF is scanned (no text layer) and needs OCR."
    }
  },
  "required": [
    "content"
  ],
  "description": "The extracted document."
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本2 個工具
已驗證未記錄版本2 個工具
已驗證未記錄版本2 個工具