PowerPoint Translator MCP Service
Enables translation of PowerPoint presentations to multiple languages using AWS Bedrock models while preserving formatting. Supports 8 languages including Chinese, Japanese, Korean, and major European languages.
README
PowerPoint Translator MCP Service
A Model Context Protocol (MCP) service that provides PowerPoint translation capabilities using AWS Bedrock models.
Features
- Translate PowerPoint presentations to multiple languages
- Preserve formatting during translation
- Support for AWS Bedrock Nova models
- Intelligent handling of proper nouns, brand names, and special content
- Full MCP protocol compliance with proper initialization and tool handling
- Fallback implementation when MCP library is not available
Supported Languages
- Simplified Chinese (zh-CN)
- Traditional Chinese (zh-TW)
- English (en)
- Japanese (ja)
- Korean (ko)
- French (fr)
- German (de)
- Spanish (es)
Prerequisites
- Python 3.8+
- AWS account with Bedrock access
- AWS credentials configured (via
aws configureor environment variables)
Installation
Quick Setup
# Clone the repository
git clone https://github.com/yourusername/mcpppttranslator.git
cd mcpppttranslator
# Install dependencies
python server.py --install-deps
# Or use uv for faster installation
python server.py --install-deps --use-uv
Virtual Environment Setup (Recommended)
# Create virtual environment with uv
python server.py --install-deps --use-uv --venv
# Or specify custom path
python server.py --install-deps --use-uv --venv --venv-path /path/to/custom/venv
MCP Configuration
Option 1: AWS CLI Configuration (Recommended)
First, configure your AWS credentials:
aws configure
Then add to your Amazon Q configuration:
{
"mcpServers": {
"ppt-translator": {
"timeout": 300,
"type": "stdio",
"command": "python",
"args": [
"/path/to/mcpppttranslator/server.py",
"--mcp"
],
"env": {
"AWS_REGION": "us-east-1",
"DEFAULT_TARGET_LANGUAGE": "zh-CN"
}
}
}
}
Option 2: Direct Credential Configuration
{
"mcpServers": {
"ppt-translator": {
"timeout": 300,
"type": "stdio",
"command": "python",
"args": [
"/path/to/mcpppttranslator/server.py",
"--mcp"
],
"env": {
"AWS_ACCESS_KEY_ID": "your-access-key",
"AWS_SECRET_ACCESS_KEY": "your-secret-key",
"AWS_REGION": "us-east-1",
"DEFAULT_TARGET_LANGUAGE": "zh-CN"
}
}
}
}
Usage
With Amazon Q
Once configured, you can use natural language commands:
Translate my presentation.pptx to Japanese using the Nova model
Command Line Usage
# Run in MCP mode
python server.py --mcp
# Direct translation
python server.py --translate --input-file presentation.pptx --target-language ja
# List supported languages
python server.py --list-languages
Available Tools
-
translate_ppt - Translate a PowerPoint document
input_file: Path to the input PowerPoint file (required)target_language: Target language code (default: zh-CN)output_file: Path to save the translated file (optional)translation_method: Translation method, 'nova' or 'claude' (default: nova)
-
list_supported_languages - List all supported target languages
Command Line Arguments
--mcp: Run in MCP mode--translate: Translate a PowerPoint file--input-file: Path to the input PowerPoint file--target-language: Target language code--output-file: Path to save the translated file--model-id: Translation model ID (choices: 'amazon.nova-micro-v1:0', 'amazon.nova-lite-v1:0')--list-languages: List supported languages--install-deps: Install required dependencies--use-uv: Use uv package manager instead of pip--venv: Create and use a virtual environment with uv--venv-path: Path for the virtual environment (default: ./venv)
Testing
Test the MCP server functionality:
python test_mcp.py
Troubleshooting
Common Issues
-
AWS Credentials: Ensure AWS credentials are properly configured via
aws configureor environment variables. -
Missing Dependencies: Run
python server.py --install-depsto install required packages. -
MCP Protocol Errors: The server implements full MCP protocol compliance. If you encounter initialization errors, ensure you're using a compatible MCP client.
-
File Permissions: Ensure the server.py file has execute permissions:
chmod +x server.py
Development
Local Development
-
Clone and setup:
git clone https://github.com/yourusername/mcpppttranslator.git cd mcpppttranslator python server.py --install-deps --use-uv --venv -
Test the server:
python test_mcp.py
MCP Protocol Compliance
This server implements the full MCP protocol specification including:
- Proper
initializemethod handling - Standard
tools/listandtools/callmethods - Correct JSON-RPC 2.0 response formatting
- Error handling and graceful degradation
- Backward compatibility with legacy MCP methods
License
MIT
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.
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.
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.
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.