DocGen MCP Server
O que é
Servidor Model Context Protocol (MCP) via stdio para leitura e escrita de documentos, planilhas, renderização HTML→PDF (Playwright) e utilitários de arquivo. É distribuído no PyPI como docgen-mcp-server e requer Python 3.11+.
Recomenda-se executar com uvx docgen-mcp-server. Para travar em uma versão, use uvx --from docgen-mcp-server==0.2.2 docgen-mcp-server.
Na primeira execução, o Playwright pode precisar de um navegador Chromium/Chrome instalado (tools render_page e render_image). render_slide gera o arquivo PowerPoint diretamente, sem navegador.
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 blocos JSON tipados; template {{campo}}. |
write_sheet |
.xlsx ou .csv; append em .xlsx para logs. |
|
| render_ | render_slide |
HTML/CSS → PowerPoint .pptx (use <section> ou .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,.awsno 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: PyPI)
Em qualquer cliente MCP com transporte stdio:
- Comando:
uvx. - Argumentos:
["docgen-mcp-server"](ou["--from", "docgen-mcp-server==0.2.2", "docgen-mcp-server"]para uma versão fixa). - Variáveis de ambiente: opcionais; veja as variáveis do Playwright/Chromium se precisar de proxy ou caminho de browser.
Exemplo (Cursor, VS Code com MCP, Claude Desktop, etc.):
{
"mcpServers": {
"docgen": {
"command": "uvx",
"args": ["docgen-mcp-server"],
"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 na instalação
Se uvx não for encontrado, instale o uv. Para atualizar uma instalação em cache, use uvx --refresh docgen-mcp-server.
Se a ferramenta de renderização reclamar de navegador, instale o Chromium com playwright install chromium ou configure o caminho de um Chrome já instalado.
Desenvolvimento a partir do clone
git clone <repo>
cd docgen-mcp-server
uv sync
uv run docgen-mcp-server
Sem build prévio (local):
uv run docgen-mcp-server
| Script | Ação |
|---|---|
uv sync |
Instala dependências do projeto |
uv run docgen-mcp-server |
Executa o servidor |
uv build |
Gera os artefatos para publicação |
Publicação no PyPI (mantenedores)
uv build
uv publish --dry-run
uv publish
Licença
ISC
Metadata
Release files for docgen-mcp-server 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| docgen_mcp_server-0.2.2.tar.gz | 32.3 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| docgen_mcp_server-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 59.4 kB
Release files / docgen_mcp_server-0.2.2.tar.gz
| Download URL | docgen_mcp_server-0.2.2.tar.gz |
|---|---|
| Size | 32.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ba782cc1580db181c080fd132dd132b407188c5b4fcc27cb157c06531cf539c9
|
|
BLAKE2b-256 checksum How to use checksums |
46f024d00f6b4c41cdbfdcee431c7803b8b445e632cd9d90af3c4ba9b3491c31
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / docgen_mcp_server-0.2.2-py3-none-any.whl
| Download URL | docgen_mcp_server-0.2.2-py3-none-any.whl |
|---|---|
| Size | 27.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7f6b574ebfa631ca0c0b82c06a181e26b2a09926cc9efbcf73d2bc51ef54e48c
|
|
BLAKE2b-256 checksum How to use checksums |
afc26456ab281ff95a7fa978273acf711370492c257b529b09400576f5fe28e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Security for docgen-mcp-server 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.