Skip to main content
Glama
README.md
# @docweave/mcp

[![docweave-mcp MCP server](https://glama.ai/mcp/servers/NicolasMartalog/docweave-mcp/badges/card.svg)](https://glama.ai/mcp/servers/NicolasMartalog/docweave-mcp)

The open-source MCP server for **[Docweave](https://docweave.dev)** — give any MCP client
(Claude, Cursor, Windsurf, and others) two document tools:

- **`generate_pdf`** — turn raw HTML, a public URL, or a template + JSON into a real PDF.
- **`read_pdf`** — turn a PDF (URL or base64) into clean text / markdown, with a `needsOcr`
  flag for scanned documents.

One MCP server for an agent's document I/O — write a document, read a document — priced per
document, not per page.

## Install

```bash
npx @docweave/mcp
```

Or use the zero-install hosted endpoint: `https://docweave.dev/api/mcp`.

### Claude Desktop

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

Tool calls that hit the hosted API authenticate with a Docweave API key
(`Authorization: Bearer dw_live_…`) — get one free at <https://docweave.dev/signup>
(50 documents/month, no card).

## Tools

### `generate_pdf`
`source` (one of: raw `html`, a public `url`, or a `template` + `data`) → a PDF.
Optional page `options` (format, landscape, margins). Idempotency-key aware, SSRF-guarded
URL rendering.

### `read_pdf`
`source` (`url` or `base64`) → extracted `content` (markdown or text) + `pageCount`.
Scanned/image PDFs return `needsOcr: true` instead of empty text.

## About this repo

This is the source of the [`@docweave/mcp`](https://www.npmjs.com/package/@docweave/mcp)
npm package, published from the Docweave monorepo and listed on the
[official MCP registry](https://registry.modelcontextprotocol.io) as
`io.github.NicolasMartalog/docweave-mcp`. The npm package ships bundled with its render
engine; install it with `npx` as above.

## License

MIT

TDQS

A4.2/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or confusion between tools. The single tool has a clear, distinct purpose.

Naming Consistency5/5

The tool name 'generate_pdf' follows a clear verb_noun pattern. With only one tool, consistency is perfect and the name is descriptive.

Tool Count3/5

A single tool suggests a very narrow scope. While PDF generation is a specific task, the server might benefit from additional related tools (e.g., listing templates or managing output) to feel more complete. The count is borderline thin.

Completeness3/5

The tool covers multiple input types (HTML, URL, template+data) and options (file path or bytes). However, there is no management of templates or output files, and no other lifecycle operations, leaving notable gaps for a full document workflow.

Maintenance

ActivitySlowing
ResponsivenessNo issues