mcp-ms-office-documents

dvejsada/mcp-ms-office-documents

3.3

If you are the rightful owner of mcp-ms-office-documents and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol Server running over SSE, offering tools for LLM to create MS Office documents.

MCP MS Office Documents Server

A Model Context Protocol server that empowers AI assistants to create professional Microsoft Office documents on your behalf.

๐Ÿš€ What You Can Do

Transform your conversations with AI into professional documents:

  • ๐Ÿ“Š PowerPoint Presentations - Create professional slideshows with title slides, section dividers, and content slides featuring bullet points and proper formatting
  • ๐Ÿ“„ Word Documents - Generate formatted documents from markdown including headers, tables, lists, and styling - perfect for reports, contracts, and documentation
  • ๐Ÿ“ง Email Drafts - Compose professional email drafts in EML format with proper HTML formatting and styling
  • ๐Ÿ“ˆ Excel Spreadsheets - Build data-rich spreadsheets from markdown tables with formula support and cross-table references

All documents are created with professional templates and can be customized with your own branding.

๐Ÿ› ๏ธ Quick Setup

1. Run the Container

Using Docker Compose (recommended):

# Download the docker-compose.yml file
curl -O https://raw.githubusercontent.com/dvejsada/mcp-ms-office-documents/main/docker-compose.yml

# Edit the environment variables (see configuration below)
nano docker-compose.yml

# Start the server
docker-compose up -d

The server will be available at http://localhost:8958

2. Configure File Upload Strategy

Choose how generated files are delivered to you by setting the UPLOAD_STRATEGY environment variable:

Option A: Local Files (files saved to your computer)

environment:
  UPLOAD_STRATEGY: LOCAL
volumes:
  - ./output:/app/output  # Files will be saved here

Option B: AWS S3 (files uploaded to cloud storage)

environment:
  UPLOAD_STRATEGY: S3
  AWS_ACCESS_KEY: your_access_key
  AWS_SECRET_ACCESS_KEY: your_secret_key  
  AWS_REGION: your-region
  S3_BUCKET: your-bucket-name

๐Ÿ”— Connect to MCP Clients

LibreChat

Add this configuration to your librechat.yaml file:

mcpServers:
  office-docs:
    type: streamable-http
    url: http://localhost:8958/sse  # Adjust URL if running on different host
    timeout: 120000  # Allow extra time for document generation

After updating the configuration:

  1. Restart LibreChat
  2. Create a new agent or edit an existing one
  3. Add the MCP Office Documents tools to your agent
  4. Start creating documents by asking your agent!

Claude Desktop

Add this configuration to your Claude Desktop MCP settings:

{
  "mcpServers": {
    "office-docs": {
      "command": "node",
      "args": ["-e", "require('http').get('http://localhost:8958/sse')"]
    }
  }
}

Other MCP Clients

The server exposes an SSE (Server-Sent Events) endpoint at /sse and follows the standard MCP protocol. Consult your MCP client's documentation for connection details.

๐ŸŽจ Advanced Features

Custom Templates

Use your own company templates and branding:

  1. Create template files:

    • template_4_3.pptx (4:3 aspect ratio PowerPoint)
    • template_16_9.pptx (16:9 aspect ratio PowerPoint)
    • template.docx (Word document)
  2. Mount the template directory:

volumes:
  - ./templates:/app/templates

Template Requirements:

  • PowerPoint: Title slide layout must be 3rd, content slide layout must be 5th, section slide layout must be 8th in master slides
  • Word: Must contain standard Word styles for proper formatting

Usage Tips

For best results when working with AI assistants:

  • Presentations: Ask for structured content with clear sections and bullet points
  • Documents: Use markdown formatting in your requests for better results
  • Emails: Specify tone, recipients, and key points you want to cover
  • Spreadsheets: Describe your data structure and any calculations needed

See instructions_template.md for detailed agent configuration examples.

๐Ÿ”ง Requirements

  • Docker and Docker Compose
  • An MCP-compatible client (LibreChat, Claude Desktop, etc.)
  • For S3 upload: AWS account with S3 access

๐Ÿค Contributing

Contributions are welcome! Feel free to submit issues, feature requests, or pull requests.

Development Roadmap

  • PowerPoint presentations (pptx)
  • Word documents (docx)
  • Email drafts (eml)
  • Excel spreadsheets (xlsx)
  • Additional template customization options