PowerPoint Translator

Traduce archivos de PowerPoint usando AWS Bedrock. Requiere que se configuren las credenciales de AWS.

Documentación

Servicio MCP de PowerPoint Translator

Un servicio de Model Context Protocol (MCP) que proporciona capacidades de traducción de PowerPoint utilizando modelos de AWS Bedrock.

Características

  • Traducir presentaciones de PowerPoint a múltiples idiomas
  • Preservar el formato durante la traducción
  • Soporte para modelos AWS Bedrock Nova
  • Manejo inteligente de nombres propios, marcas y contenido especial
  • Cumplimiento total del protocolo MCP con inicialización y manejo de herramientas adecuados
  • Implementación alternativa cuando la librería MCP no está disponible

Idiomas Soportados

  • Chino simplificado (zh-CN)
  • Chino tradicional (zh-TW)
  • Inglés (en)
  • Japonés (ja)
  • Coreano (ko)
  • Francés (fr)
  • Alemán (de)
  • Español (es)

Requisitos Previos

  • Python 3.8+
  • Cuenta de AWS con acceso a Bedrock
  • Credenciales de AWS configuradas (mediante aws configure o variables de entorno)

Instalación

Configuración Rápida

# 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

Configuración con Entorno Virtual (Recomendado)

# 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

Configuración de MCP

Opción 1: Configuración de AWS CLI (Recomendado)

Primero, configure sus credenciales de AWS:

aws configure

Luego agregue a su configuración de Amazon Q:

{
  "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"
      }
    }
  }
}

Opción 2: Configuración Directa de Credenciales

{
  "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"
      }
    }
  }
}

Uso

Con Amazon Q

Una vez configurado, puede usar comandos en lenguaje natural:

Translate my presentation.pptx to Japanese using the Nova model

Uso desde Línea de Comandos

# 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

Herramientas Disponibles

  1. translate_ppt - Traducir un documento de PowerPoint

    • input_file: Ruta al archivo de PowerPoint de entrada (obligatorio)
    • target_language: Código de idioma de destino (predeterminado: zh-CN)
    • output_file: Ruta para guardar el archivo traducido (opcional)
    • translation_method: Método de traducción, 'nova' o 'claude' (predeterminado: nova)
  2. list_supported_languages - Listar todos los idiomas de destino soportados

Argumentos de Línea de Comandos

  • --mcp: Ejecutar en modo MCP
  • --translate: Traducir un archivo de PowerPoint
  • --input-file: Ruta al archivo de PowerPoint de entrada
  • --target-language: Código de idioma de destino
  • --output-file: Ruta para guardar el archivo traducido
  • --model-id: ID del modelo de traducción (opciones: 'amazon.nova-micro-v1:0', 'amazon.nova-lite-v1:0')
  • --list-languages: Listar idiomas soportados
  • --install-deps: Instalar dependencias requeridas
  • --use-uv: Usar el administrador de paquetes uv en lugar de pip
  • --venv: Crear y usar un entorno virtual con uv
  • --venv-path: Ruta para el entorno virtual (predeterminado: ./venv)

Pruebas

Probar la funcionalidad del servidor MCP:

python test_mcp.py

Solución de Problemas

Problemas Comunes

  1. Credenciales de AWS: Asegúrese de que las credenciales de AWS estén configuradas correctamente mediante aws configure o variables de entorno.

  2. Dependencias Faltantes: Ejecute python server.py --install-deps para instalar los paquetes requeridos.

  3. Errores del Protocolo MCP: El servidor implementa el cumplimiento total del protocolo MCP. Si encuentra errores de inicialización, asegúrese de usar un cliente MCP compatible.

  4. Permisos de Archivos: Asegúrese de que el archivo server.py tenga permisos de ejecución: chmod +x server.py

Desarrollo

Desarrollo Local

  1. Clonar y configurar:

    git clone https://github.com/yourusername/mcpppttranslator.git
    cd mcpppttranslator
    python server.py --install-deps --use-uv --venv
    
  2. Probar el servidor:

    python test_mcp.py
    

Cumplimiento del Protocolo MCP

Este servidor implementa la especificación completa del protocolo MCP, incluyendo:

  • Manejo adecuado del método initialize
  • Métodos estándar tools/list y tools/call
  • Formato correcto de respuestas JSON-RPC 2.0
  • Manejo de errores y degradación gradual
  • Compatibilidad hacia atrás con métodos MCP heredados

Licencia

MIT