Skip to main content

DocGen MCP Server

O que é

Servidor Model Context Protocol (MCP) via stdio para leitura e escrita de documentos, planilhas, renderização HTML→PDF (Puppeteer) e utilitários de arquivo. Está publicado no npm como docgen-mcp-server e requer Node.js 18+.

Recomenda-se executar com npx -y docgen-mcp-server@latest para o npx resolver sempre o dist-tag latest (evita reutilizar cache de instalação antiga). Para travar em uma versão: docgen-mcp-server@<versão> no lugar de @latest.

Na primeira execução, Puppeteer pode baixar Chromium (tools render_slide e render_page).

Ferramentas

Módulo Ferramenta Descrição resumida
read_ read_doc .docx/.pdf/.odt → Markdown; previewOnly / maxChars limitam saída.
read_sheet Planilhas → JSON ou Markdown; range tipo A1:D10; previewOnly / maxRows.
read_archive Lista árvore de entradas em .zip.
write_ write_doc .docx/.pdf; Markdown (#, listas, ```) ou contentFormat: plain; template {{campo}}.
write_sheet .xlsx ou .csv; append em .xlsx para logs.
render_ render_slide HTML/CSS → PDF ou ZIP de slides (use .slide por página).
render_page HTML/CSS → PDF A4 (índice opcional).
patch_ patch_doc PDF: merge, split, watermark; DOCX: replace_text em XML.
patch_sheet Atualiza células em .xlsx.
system_ scan_dir Busca por regex em diretório ou em arquivos/ZIPs.
diff_file Diff texto ou dados (planilhas).
bundle_zip Compacta lista de arquivos em um ZIP.

Segurança

  • Sem .. nos caminhos; leitura limitada por tamanho de ficheiro.
  • Escrita bloqueada em pastas do sistema (ex.: Windows, Program Files, .ssh, .aws no home).
  • Opcional: DOCGEN_ALLOWED_ROOTS — lista separada por vírgulas de pastas absolutas; só é permitido ler/escrever dentro delas (útil em monorepos/CI).

Variáveis de ambiente (opcional)

Variável Efeito
DOCGEN_ALLOWED_ROOTS Ex.: C:\repo\my-app,C:\tmp — restrição de caminhos.
DOCGEN_SCAN_MAX_MATCHES Máximo de correspondências em scan_dir (padrão 500).
DOCGEN_READ_SHEET_MAX_ROWS Teto de linhas de dados em read_sheet quando não usas maxRows (padrão 10000).

Erros das tools devolvem structuredContent com ok: false, code, tool, message e às vezes hint.

Como usar nos clientes (recomendado: npm publicado)

Em qualquer cliente MCP com transporte stdio:

  • Comando: npx (no Windows, se necessário, use o caminho completo de npx.cmd).
  • Argumentos: ["-y", "docgen-mcp-server@latest"] (ou versão fixa: ["-y", "docgen-mcp-server@3.0.0"]).
  • Variáveis de ambiente: opcional; veja variáveis do Puppeteer/Chromium se precisar de proxy ou caminho de browser.

Exemplo (Cursor, VS Code com MCP, Claude Desktop, etc.):

{
  "mcpServers": {
    "docgen": {
      "command": "npx",
      "args": ["-y", "docgen-mcp-server@latest"],
      "env": {}
    }
  }
}

No repositório há um exemplo em .cursor/mcp.json.example.

Cursor

Configurações → MCP (ou JSON de MCP do projeto): use command, args e env como acima.

Claude Desktop

Mesmo esquema de command, args e env. Detalhes de caminho do arquivo de configuração variam por SO; veja a documentação da Anthropic sobre MCP.

Problemas comuns no Windows com npx

Se aparecer EPERM, TAR_ENTRY_ERROR ou erros tipo Cannot find package '...\node_modules\yauzl\index.js', o cache do npx costuma estar corrompido (extração interrompida quando o Cursor recarrega o MCP no meio do npm install).

  1. Desligue ou desative temporariamente o servidor Docgen no MCP.
  2. Apague %LocalAppData%\npm-cache\_npx (pasta inteira ou só o subdiretório do pacote).
  3. Suba o MCP de novo com npx -y docgen-mcp-server@latest.

Alternativa estável: npm install -g docgen-mcp-server e no MCP use command: docgen-mcp-server (sem npx), ou node com o caminho absoluto do cli.js global.

Desenvolvimento a partir do clone

git clone <repo>
cd docgen-mcp-server
npm install
npm run build
npm start

Sem build prévio (local):

npm install
npm run dev
Script Ação
npm run build Compila src/dist/ (tsc)
npm start node dist/cli.js
npm run dev tsx src/cli.ts

Publicação no npm (mantenedores)

O pacote não inclui node_modules; o tarball contém só dist/ + README.md + package.json (dependências são instaladas pelo cliente ao rodar npx).

npm whoami
npm publish --dry-run
npm publish

Se a conta tiver 2FA “Auth and writes”, o npm exige OTP:

npm publish --otp=123456

Erro 403 Forbidden com nome livre costuma ser: OTP ausente, npm login em outra conta, ou registro apontando para outro servidor (npm config get registry deve ser https://registry.npmjs.org/).

Versões subsequentes (como no Nautilus):

npm run release        # patch
npm run release:minor
npm run release:major

Licença

ISC

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docgen_mcp_server-0.2.0.tar.gz (28.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docgen_mcp_server-0.2.0-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file docgen_mcp_server-0.2.0.tar.gz.

File metadata

  • Download URL: docgen_mcp_server-0.2.0.tar.gz
  • Upload date:
  • Size: 28.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for docgen_mcp_server-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7a6e70781279a4c8a28da1c4993e98755cddab92b73c595b0bdeff5de177d736
MD5 17f1370d8339f5c7b08ed513a1bf90ab
BLAKE2b-256 af9e7b97e5feda8a83330c01480fa754038b36411a2428232fd9a620bbf7db93

See more details on using hashes here.

File details

Details for the file docgen_mcp_server-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: docgen_mcp_server-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for docgen_mcp_server-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d1ce40809215ed72a83b6f06ad041e645fa5fc364543afa5518264d094d0f275
MD5 ae9f76053ee97a041652187236e3ec38
BLAKE2b-256 bcbb7bdffcff4e8f92c282de11a89f244e72837584b099a3bf80a278b4bdfe31

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.1

2 files

This release

0.2.0 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page