Aspose.Words MCP
Aspose.Words MCP is a FastMCP-based MCP server built on top of Aspose.Words for Python via .NET. It automates Microsoft Word document creation and editing and exposes operations as MCP tools that any MCP-compatible client can call.
README
Aspose.Words MCP
Overview
Aspose.Words MCP is a FastMCP-based MCP server built on top of Aspose.Words for Python via .NET. It automates Microsoft Word document creation and editing and exposes operations as MCP tools that any MCP-compatible client can call. The server is aligned with Aspose.Words for Python via .NET 26.3.0. Supported transports: stdio, streamable-http, sse.
Features
- Create documents; read/write text, headings, and paragraphs
- Text replacement workflows, including optional run joining when needed
- Text formatting (font, size, style, color, underline)
- Page and section breaks; page setup (margins, orientation, paper size, columns)
- Lists (bulleted/numbered)
- Tables: create, auto-fit, merge cells, alignment, shading, paddings, column widths, header styling
- Footnotes and endnotes: add, convert, anchor-based operations, validation
- Comments: get by author, by paragraph, all comments
- Document properties: read/write (title, author, subject, keywords)
- Protection: protect/unprotect, partial editing restrictions
- Bookmarks, hyperlinks
- Watermarks (text/image)
- Export as Base64 (DOCX, PDF, etc.)
- Render page to image (PNG, etc.)
- In-memory document management: copy, save as, list, delete, merge
Requirements
- Python 3.11+
- Aspose.Words for Python via .Net. This library is a commercial product.
You'll need to obtain a valid license for Aspose.Words. The package will install this dependency, but you're responsible for complying with Aspose's licensing terms.
Installation
pip install aspose-words-mcp
From source (download repo and install requirements):
git clone https://github.com/aspose-words/Aspose.Words-MCP
cd Aspose.Words-MCP
pip install -r requirements.txt
Command Line Interface
After installation, the CLI command is available:
aspose-words-mcp
By default, the server runs with the stdio transport.
Run without installation:
python mcp_server.py
Transports and Configuration
Supported MCP transports: stdio, streamable-http, sse.
Environment Variables
MCP_TRANSPORT—stdio|streamable-http|sse(defaultstdio)MCP_HOST— host address (default0.0.0.0)MCP_PORT— port (default8080)MCP_PATH— HTTP path forstreamable-http(default/mcp)MCP_SSE_PATH— events path forsse(default/sse)LOG_LEVEL— logging level (INFO,DEBUG, ...)
Aspose.Words License
The Aspose.Words license is applied when the server starts. The effective path to the license file is resolved with the following precedence:
- The
license_pathargument ofrun_server(..., license_path=None) - The
ASPOSE_WORDS_LICENSE_PATHenvironment variable
If no license is provided or the file is not accessible, the server runs in Evaluation mode.
Example of setting the environment variable:
export ASPOSE_WORDS_LICENSE_PATH='/path/to/aspose.words.lic'
HTTP/SSE Run Example
export MCP_TRANSPORT=streamable-http # or sse
export MCP_HOST=0.0.0.0
export MCP_PORT=8080
export MCP_PATH=/mcp # for streamable-http
export MCP_SSE_PATH=/sse # for sse
aspose-words-mcp
On start, the server prints the listening address.
Tools
See full list and signatures in mcp_server.py (function register_tools) and tests in tests/features/*.
Main tool categories:
- content/reading: create document, insert/delete/read text, headings, lists, HTML/Markdown
- layout: pages, breaks, columns, headers/footers, page numbering
- tables: create and format tables
- watermarks: watermarks
- links/bookmarks: hyperlinks and bookmarks
- properties: document properties
- protection: protection and restrictions
- comments/notes: comments, footnotes/endnotes
- export/render: export (including Docling advanced export), page rendering
Example Workflow via an MCP Client
Sequence of tool calls (names match the server):
create_document→ getdoc_idadd_heading(e.g., levels 1–3)add_paragraph/insert_text_endadd_table_endoradd_table_at_paragraphadd_watermark_textoradd_watermark_image_base64export_base64(e.g.,fmt="pdf") — get file as Base64
Integration with MCP Clients
- Claude Desktop MCP: add this server with
streamable-httporssetransport and the URL printed by the server at startup. - Any MCP (JSON) clients — configure the matching transport and path.
License
This package is licensed under the MIT License. However, it depends on Aspose.Words for Python via .Net library, which is proprietary, closed-source library.
⚠️ You must obtain valid license for Aspose.Words for Python via .Net library. This repository does not include or distribute any proprietary components.
Trademarks
This project may contain trademarks or logos for projects, products, or services. Use of third-party trademarks or logos is subject to those third-party policies.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.