Office Word MCP server

Provides a bridge to Microsoft Word for creating and modifying documents with features like text formatting, table manipulation, image scaling, and style management
Back to servers
Setup instructions
Provider
gongrzhe
Release date
Mar 25, 2025
Language
Python
Package
Stats
47.2K downloads
753 stars

Office-Word-MCP-Server is a powerful tool that enables AI assistants to create, read, and manipulate Microsoft Word documents through a standardized interface. It implements the Model Context Protocol (MCP) to bridge the gap between AI assistants and Word documents, allowing for comprehensive document editing capabilities.

Installation Options

Installing via Smithery

To automatically install the server for Claude Desktop:

npx -y @smithery/cli install @GongRzhe/Office-Word-MCP-Server --client claude

Manual Installation

Prerequisites

  • Python 3.8 or higher
  • pip package manager

Basic Installation Steps

# Clone the repository
git clone https://github.com/GongRzhe/Office-Word-MCP-Server.git
cd Office-Word-MCP-Server

# Install dependencies
pip install -r requirements.txt

Using the Setup Script

You can also use the provided setup script that handles all installation steps:

python setup_mcp.py

Configuration with Claude for Desktop

Method 1: After Local Installation

Add the server to your Claude for Desktop configuration file:

{
  "mcpServers": {
    "word-document-server": {
      "command": "python",
      "args": ["/path/to/word_mcp_server.py"]
    }
  }
}

Method 2: Without Installation (Using uvx)

Configure Claude for Desktop without local installation:

{
  "mcpServers": {
    "word-document-server": {
      "command": "uvx",
      "args": ["--from", "office-word-mcp-server", "word_mcp_server"]
    }
  }
}

Configuration file locations:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Remember to restart Claude for Desktop after making configuration changes.

Using the Word MCP Server

Once configured, you can ask Claude to perform various operations on Word documents:

Document Management

  • Create new documents with metadata
  • Extract text and analyze document structure
  • View document properties and statistics
  • List available documents in a directory
  • Create copies of documents
  • Convert Word documents to PDF format

Content Creation

  • Add headings with different levels
  • Insert paragraphs with optional styling
  • Create tables with custom data
  • Add images with proportional scaling
  • Insert page breaks
  • Add footnotes and endnotes

Text Formatting

  • Format specific text sections (bold, italic, underline)
  • Change text color and font properties
  • Apply custom styles to text elements
  • Search and replace text throughout documents

Table Manipulation

  • Format tables with borders and styles
  • Create header rows with distinct formatting
  • Apply cell shading and custom borders
  • Set cell alignment and padding
  • Merge cells horizontally and vertically
  • Set column widths with various units

Example Commands

You can ask Claude to:

  • "Create a new document called 'report.docx' with a title page"
  • "Add a heading and three paragraphs to my document"
  • "Insert a 4x4 table with sales data"
  • "Format the word 'important' in paragraph 2 to be bold and red"
  • "Apply alternating row colors to make the table more readable"
  • "Extract all comments from my document"

Troubleshooting

Common Issues

Missing Styles

  • Some documents may lack required styles for heading and table operations
  • The server will attempt to create missing styles or use direct formatting
  • For best results, use templates with standard Word styles

Permission Issues

  • Ensure the server has permission to read/write to the document paths
  • Use the copy_document function to create editable copies of locked documents
  • Check file ownership and permissions if operations fail

Image Insertion Problems

  • Use absolute paths for image files
  • Verify image format compatibility (JPEG, PNG recommended)
  • Check image file size and permissions

Table Formatting Issues

  • Ensure row and column indices are within table bounds (0-based indexing)
  • Use hex colors without '#' prefix (e.g., "FF0000" for red) or standard color names
  • Specify "points" or "percent" explicitly when setting cell padding
  • Apply cell text formatting after setting cell content for best results

Enabling Debug Mode

For detailed logging, set the environment variable:

export MCP_DEBUG=1  # Linux/macOS
set MCP_DEBUG=1     # Windows

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "word-document-server" '{"command":"python","args":["/path/to/word_mcp_server.py"]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "word-document-server": {
            "command": "python",
            "args": [
                "/path/to/word_mcp_server.py"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "word-document-server": {
            "command": "python",
            "args": [
                "/path/to/word_mcp_server.py"
            ]
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later