MCP-OPENAPI-DOCX
Click on "Deploy 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., "@MCP-OPENAPI-DOCXadd a table with three columns to my quarterly report document"
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.
MCP-OPENAPI-DOCX
Enterprise-grade document editing and management server supporting MCP (Model Context Protocol) and OpenAPI protocols for DOCX documents.
๐ Features
Complete DOCX Support: Full support for reading, writing, and editing Microsoft Word documents
MCP Protocol: Implements the Model Context Protocol for AI-powered document operations
RESTful API: Comprehensive OpenAPI-compliant REST API with Swagger documentation
Async Architecture: Built with FastAPI and async/await for high performance
Document Processing: Paragraphs, tables, lists, images, styles, and more
Version Control: Track document versions and compare changes
Template Management: Create and manage document templates
Export Options: Export to PDF, HTML, Markdown, and plain text
Comments & Revisions: Add comments and track changes
Security: Document encryption, password protection, and permissions
Background Tasks: Celery integration for long-running operations
Containerized: Docker and Kubernetes ready
Related MCP server: che-word-mcp
๐ Table of Contents
๐ Installation
Prerequisites
Python 3.10 or higher
Docker and Docker Compose (optional)
PostgreSQL (optional, SQLite available for development)
Redis (for Celery tasks)
Using pip and venv (Recommended)
# Clone the repository
git clone https://github.com/Fu-Jie/MCP-OPENAPI-DOCX.git
cd MCP-OPENAPI-DOCX
# Create virtual environment
python -m venv venv
# Activate virtual environment
# On Linux/macOS:
source venv/bin/activate
# On Windows (Command Prompt):
venv\Scripts\activate.bat
# On Windows (PowerShell):
venv\Scripts\Activate.ps1
# Upgrade pip
pip install --upgrade pip
# Install dependencies
pip install -r requirements.txt
# Copy environment configuration
cp .env.example .env
# Run the application
python main.pyUsing Docker
# Clone the repository
git clone https://github.com/Fu-Jie/MCP-OPENAPI-DOCX.git
cd MCP-OPENAPI-DOCX
# Start with Docker Compose
docker-compose up -d
# View logs
docker-compose logs -f api๐ Quick Start
Start the API Server
# Method 1: Using main.py (Recommended)
python main.py
# Method 2: Using uvicorn directly
python -m uvicorn src.api.main:app --reload --port 8000
# Production mode with multiple workers
python -m uvicorn src.api.main:app --host 0.0.0.0 --port 8000 --workers 4Access the API
API Documentation: http://localhost:8000/docs
ReDoc: http://localhost:8000/redoc
OpenAPI Schema: http://localhost:8000/openapi.json
Start the MCP Server
# Run MCP server (for AI integrations)
python main.py --mcp๐ API Documentation
The API provides comprehensive endpoints for document management:
Core Endpoints
Endpoint | Method | Description |
| GET | List all documents |
| POST | Create a new document |
| GET | Get document details |
| PUT | Update document |
| DELETE | Delete document |
Text Operations
Endpoint | Method | Description |
| GET | List paragraphs |
| POST | Add paragraph |
| PUT | Update paragraph |
| POST | Apply formatting |
Table Operations
Endpoint | Method | Description |
| GET | List tables |
| POST | Create table |
| PUT | Update cell |
| POST | Add row |
See the full API Documentation for complete details.
๐ MCP Protocol
This server implements the Model Context Protocol for AI integrations:
Available Tools
create_document- Create a new DOCX documentopen_document- Open an existing documentadd_paragraph- Add a paragraph to a documentadd_table- Add a table to a documentformat_text- Apply text formattingsearch_replace- Search and replace textexport_document- Export to various formatsAnd 80+ more tools...
Example Usage
# Using MCP client
async with MCPClient("http://localhost:8000/mcp") as client:
result = await client.call_tool(
"create_document",
{"name": "My Document"}
)See the MCP Protocol Guide for detailed usage.
โ๏ธ Configuration
Configuration is managed through environment variables. Copy .env.example to .env:
cp .env.example .envKey Configuration Options
Variable | Description | Default |
| Database connection URL |
|
| Redis connection URL |
|
| JWT secret key | (required in production) |
| Enable debug mode |
|
| Environment name |
|
| Upload directory |
|
| Max upload size (bytes) |
|
See .env.example for all available options.
๐ ๏ธ Development
Project Structure
mcp-openapi-docx/
โโโ src/
โ โโโ api/ # FastAPI application
โ โ โโโ routes/ # API endpoints
โ โ โโโ dependencies.py
โ โโโ core/ # Core configuration
โ โโโ database/ # Database setup
โ โโโ handlers/ # DOCX file handlers
โ โโโ mcp/ # MCP server
โ โโโ middleware/ # HTTP middleware
โ โโโ models/ # Data models
โ โโโ services/ # Business logic
โ โโโ tasks/ # Celery tasks
โ โโโ utils/ # Utility functions
โโโ tests/ # Test suite
โโโ docs/ # Documentation
โโโ alembic/ # Database migrations
โโโ kubernetes/ # K8s configurations
โโโ scripts/ # Utility scriptsRunning Locally
# Activate virtual environment
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dev dependencies
pip install -r requirements.txt
# Run linting
ruff check src/
black --check src/
isort --check-only src/
# Run type checking
mypy src/
# Start development server
python main.py
# Or with auto-reload:
python -m uvicorn src.api.main:app --reloadDatabase Migrations
# Create a new migration
alembic revision --autogenerate -m "description"
# Apply migrations
alembic upgrade head
# Rollback
alembic downgrade -1๐งช Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=src --cov-report=html
# Run specific test file
pytest tests/unit/handlers/test_document_handler.py
# Run integration tests
pytest tests/integration/ -v๐ข Deployment
Docker Compose (Recommended for Development)
docker-compose up -dKubernetes
# Apply configurations
kubectl apply -f kubernetes/
# Check status
kubectl get pods -n docxManual Deployment
# Build the image
docker build -t mcp-openapi-docx:latest .
# Run the container
docker run -p 8000:8000 mcp-openapi-docx:latestSee the Deployment Guide for production recommendations.
๐ค Contributing
Contributions are welcome! Please read our contributing guidelines before submitting a pull request.
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Support
Documentation: docs/
Issues: GitHub Issues
Discussions: GitHub Discussions
Made with โค๏ธ for the document automation community
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP-native collaborative markdown editor with real-time AI document editing
Document-to-Markdown MCP server โ convert PDF, Office and HTML into LLM-ready Markdown.
DocBase MCP server for AI agents
Stimulsoft Reports & Dashboards docs MCP server. Semantic search for all platforms.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables programmatic interaction with Microsoft Word documents on Windows via COM Interop, allowing operations like document creation, text manipulation, formatting, and table management.16MIT
- AlicenseNot gradedqualityAmaintenanceSwift-native MCP server for Word (.docx) document manipulation. 148 tools for creating, reading, editing, formatting, and exporting Word documents with full OOXML support.6MIT
- AlicenseNot gradedqualityCmaintenanceA powerful Word document editing MCP server that provides complete document manipulation capabilities, including creation, editing, formatting, tables, images, and advanced features like footnotes and interface document generation.3MIT
- AlicenseAqualityDmaintenanceMCP server for Word document (.docx) creation and manipulation โ the production-grade document automation tool for AI agents.921 npmMIT