docgen-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@docgen-mcpCreate a project proposal for the new website redesign"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
docgen-mcp
MCP server for generating professional documents—Word (.docx) and Google Docs—with structured formatting.
Features
Word document generation from templates (brief, memo, proposal, etc.)
Google Docs generation via structured JSON sections
Rich text formatting: bold, italic, underline, colors, links, code
Document elements: headings, paragraphs, lists, tables, callouts, code blocks
Image support: public URLs or local file upload via Drive
Headers/footers with alignment options
Nested lists with multiple numbering styles
Table cell styling: per-cell backgrounds, bold, and alignment
Two contexts: TMA (consulting) or PWP (internal)
Related MCP server: doc-mcp-server
Prerequisites
Node.js 18+
For Google Docs: Google Cloud project with Docs and Drive APIs enabled
OAuth 2.0 credentials (shares tokens with gmail-mcp)
Installation
git clone https://github.com/mideliberto/docgen-mcp.git
cd docgen-mcp
npm install
npm run buildConfiguration
Environment Variables (for Google Docs)
GOOGLE_CLIENT_ID=your-client-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=GOCSPX-your-secret
TOKEN_ENCRYPTION_KEY=your-32-byte-base64-key
TOKEN_STORAGE_PATH=~/gmail_mcp_tokens/tokens.jsonClaude Desktop Config
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"docgen": {
"command": "node",
"args": ["/path/to/docgen-mcp/dist/index.js"],
"env": {
"GOOGLE_CLIENT_ID": "...",
"GOOGLE_CLIENT_SECRET": "...",
"TOKEN_ENCRYPTION_KEY": "...",
"TOKEN_STORAGE_PATH": "~/gmail_mcp_tokens/tokens.json"
}
}
}
}Quick Start
Google Docs (create_google_doc)
{
"title": "My Document",
"config": "pwp",
"sections": [
{ "type": "heading", "level": 1, "text": "Introduction" },
{ "type": "paragraph", "content": "Hello, world!" },
{ "type": "bullet_list", "items": ["First item", "Second item"] }
]
}Returns: { "id": "...", "webViewLink": "https://docs.google.com/..." }
Word Documents (generate_document)
{
"doc_type": "brief",
"context": "tma",
"title": "Cloud Migration Strategy",
"content": {
"executive_summary": "Migrate to Azure over 6 months.",
"recommendation": "Proceed with phased migration.",
"next_steps": ["Inventory systems", "Select pilot workloads"]
}
}Returns: Path to generated .docx file
Tools
Tool | Description |
| Create Google Doc from structured sections |
| Create Word doc from template |
| Get schema for Google Docs sections |
| List Word doc types |
| Get schema for Word doc type |
Documentation
USAGE.md - Complete API reference for
create_google_docWord doc schemas - See below for
generate_documentcontent schemas
Word Document Types
Type | Description |
| Executive brief with recommendation |
| Internal memorandum |
| Project proposal with scope/timeline |
| Meeting summary |
| Status report |
| IT assessment with findings |
| Risk tracking table |
| Operational procedures |
Known Limitations
No page numbers in Google Docs: REST API doesn't support AutoText
No bookmarks: REST API lacks
createBookmarkLocal images: Uploaded to Drive automatically, requires public sharing
See docs/api-quirks.md for Google Docs API limitations.
Development
npm run dev # Watch mode
npm run build # Production build
npm start # Run serverLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mideliberto/docgen-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server