Skip to main content
Glama
r-pedraza

POEditor MCP Server

by r-pedraza

🌐 POEditor MCP Server

A comprehensive Model Context Protocol (MCP) server for POEditor translation management, featuring advanced automation scripts and workflow optimization tools.

GitHub release (latest by date) Python License: MIT GitHub stars

MCP Protocol POEditor API Claude Desktop VS Code

GitHub issues GitHub pull requests GitHub last commit GitHub repo size

πŸš€ Features

  • πŸ”Œ Complete MCP Server: Full integration with POEditor API

  • πŸŽ›οΈ Control Center: Master script to manage all automation tools

  • πŸ“Š Smart Reporting: Interactive HTML reports with progress tracking

  • 🚨 Monitoring System: Automated alerts for translation issues

  • πŸ€– AI Automation: Intelligent translation suggestions and consistency checking

  • πŸ“§ Notifications: Email and Slack integration for team updates

  • πŸ“¦ Mass Export: Multi-format export system for all platforms

  • πŸ•’ Scheduler: Automated task execution with cron-like functionality

Related MCP server: translator-ai

🎯 Why This MCP?

Unlike other MCP servers that require complex Docker setups, POEditor MCP is designed for simplicity:

  • ❌ No Docker required - Pure Python implementation

  • 🎯 Translation-focused - Built specifically for localization workflows

  • πŸ”§ Minimal setup - Just add your API token and run

  • πŸš€ Instant execution - python setup.py && python control_center.py

  • πŸ“Š Visual reports - Beautiful HTML dashboards

  • πŸ€– Built-in AI - Smart translation suggestions

πŸ“Š Project Status

Development Status Maintenance API Coverage Documentation

Feature

Status

Description

πŸ”Œ MCP Server

βœ… Complete

Full MCP protocol implementation

🎯 POEditor API

βœ… Complete

All API endpoints covered

πŸ€– Claude Desktop

βœ… Supported

Ready-to-use configuration

πŸ”§ VS Code

βœ… Supported

MCP extension compatible

πŸ“Š Automation

βœ… Complete

10+ automation scripts

πŸ“– Documentation

βœ… Complete

Comprehensive guides

πŸ§ͺ Testing

βœ… Complete

Thorough test coverage

🌐 Internationalization

🚧 Planned

Multi-language support

πŸ“‹ Quick Start

1. Automatic Setup (Recommended)

# Clone the repository
git clone https://github.com/yourusername/poeditor-mcp.git
cd poeditor-mcp

# Run the automatic setup script
python setup.py

# Follow the interactive prompts to configure your POEditor API token

2. Manual Setup

# Install dependencies
pip install -r requirements.txt

# Copy environment template
cp .env.template .env

# Edit .env with your POEditor API token
nano .env

# Test the connection
python test_connection.py

3. Start Using

# Show all available commands
python control_center.py help

# Run daily monitoring
python control_center.py monitor

# Generate progress report
python control_center.py daily_report

# Start automated scheduling
python control_center.py schedule start

οΏ½ MCP Client Configuration

Once installed, configure your MCP client to use the POEditor server:

🎯 Claude Desktop

Add this configuration to your Claude Desktop config file:

macOS/Linux: ~/.claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "poeditor": {
      "command": "python",
      "args": ["-m", "mcp_poeditor"],
      "cwd": "/path/to/your/poeditor-mcp",
      "env": {
        "POEDITOR_API_TOKEN": "your_poeditor_token_here"
      }
    }
  }
}

πŸ”§ Visual Studio Code

Add this configuration to your VS Code settings:

File: .vscode/settings.json (workspace) or user settings

{
  "mcp.servers": {
    "poeditor": {
      "command": "python",
      "args": ["-m", "mcp_poeditor"],
      "cwd": "/path/to/your/poeditor-mcp",
      "env": {
        "POEDITOR_API_TOKEN": "your_poeditor_token_here"
      }
    }
  }
}

πŸ“ Configuration Notes

  • Replace /path/to/your/poeditor-mcp with the actual path to your installation

  • Replace your_poeditor_token_here with your actual POEditor API token

  • Restart your MCP client after configuration

  • Use the provided example files: claude_desktop_config_example.json and vscode_settings_example.json

οΏ½πŸ› οΈ Available Tools

The MCP server provides comprehensive POEditor management through these tool categories:

πŸ“‹ Project Management

  • list_projects - List all projects

  • get_project - Get project details

  • create_project - Create new project

🌍 Language Management

  • list_languages - List project languages

  • add_language - Add language to project

  • remove_language - Remove language from project

πŸ” Term Management

  • list_terms - List project terms

  • search_terms - Search terms by key/value

  • add_terms - Add new terms

  • delete_terms - Remove terms

✏️ Translation Management

  • list_translations - Get language translations

  • add_translation - Add new translation

  • update_translation - Update existing translation

  • export_translations - Export in multiple formats

πŸ“Š Statistics & Analytics

  • get_project_stats - Project statistics

  • get_translation_progress - Progress by language

  • compare_languages - Language comparison analysis

πŸŽ›οΈ Automation Scripts

The project includes a powerful suite of automation scripts accessible through the control center:

python control_center.py <command>

πŸ“Š Reporting & Analytics

  • daily_report - Generate comprehensive HTML progress reports

  • status - Check system health and configuration

🚨 Monitoring & Alerts

  • monitor - Scan for translation issues and quality problems

  • test - Run system diagnostics

πŸ€– Automation

  • automate - AI-powered translation suggestions and consistency checks

  • schedule - Automated task scheduling and execution

πŸ“ˆ Optimization

  • optimize - Workflow analysis with actionable recommendations

  • sync - Synchronize translations between similar projects

πŸ“¦ Export & Integration

  • export - Mass export in multiple formats (JSON, Android XML, iOS Strings, etc.)

  • notify - Send team notifications via email/Slack

πŸ”§ Management

  • setup - Interactive environment configuration

  • demo - Complete system demonstration

πŸ“ Project Structure

poeditor-mcp/
β”œβ”€β”€ πŸ“„ README.md                     # This file
β”œβ”€β”€ πŸ“„ requirements.txt              # Python dependencies
β”œβ”€β”€ πŸ“„ .env.template                 # Environment template
β”œβ”€β”€ πŸ“„ setup.py                      # Automatic setup script
β”œβ”€β”€ πŸ“„ test_connection.py            # Connection test utility
β”œβ”€β”€ πŸ“„ claude_desktop_config_example.json # Claude Desktop config example
β”œβ”€β”€ πŸ“„ vscode_settings_example.json # VS Code config example
β”œβ”€β”€ πŸ“„ CONFIG_README.md             # Configuration guide
β”‚
β”œβ”€β”€ πŸ“ mcp_poeditor/                # Core MCP package
β”‚   β”œβ”€β”€ πŸ“„ __init__.py
β”‚   β”œβ”€β”€ πŸ“„ __main__.py              # Entry point
β”‚   β”œβ”€β”€ πŸ“„ server.py                # MCP server implementation
β”‚   β”œβ”€β”€ πŸ“„ poeditor_client.py       # POEditor API client
β”‚   β”‚
β”‚   β”œβ”€β”€ πŸ“ tools/                   # MCP tools
β”‚   β”‚   β”œβ”€β”€ πŸ“„ projects.py          # Project management
β”‚   β”‚   β”œβ”€β”€ πŸ“„ languages.py         # Language management
β”‚   β”‚   β”œβ”€β”€ πŸ“„ terms.py             # Term management
β”‚   β”‚   β”œβ”€β”€ πŸ“„ translations.py      # Translation management
β”‚   β”‚   └── πŸ“„ stats.py             # Statistics & analytics
β”‚   β”‚
β”‚   └── πŸ“ utils/                   # Utilities
β”‚       β”œβ”€β”€ πŸ“„ config.py            # Configuration management
β”‚       └── πŸ“„ helpers.py           # Helper functions
β”‚
β”œβ”€β”€ πŸ“ scripts/                     # πŸŽ›οΈ AUTOMATION SUITE
β”‚   β”œβ”€β”€ πŸ“„ README.md                # Scripts documentation
β”‚   β”œβ”€β”€ πŸ“„ control_center.py        # πŸŽ›οΈ Master control script
β”‚   β”œβ”€β”€ πŸ“„ daily_report.py          # πŸ“Š Daily progress reports
β”‚   β”œβ”€β”€ πŸ“„ translation_monitor.py   # 🚨 Quality monitoring
β”‚   β”œβ”€β”€ πŸ“„ workflow_optimizer.py    # πŸ“ˆ Workflow optimization
β”‚   β”œβ”€β”€ πŸ“„ project_sync.py          # πŸ”„ Project synchronization
β”‚   β”œβ”€β”€ πŸ“„ notification_manager.py  # πŸ“§ Team notifications
β”‚   β”œβ”€β”€ πŸ“„ translation_automator.py # πŸ€– AI automation
β”‚   β”œβ”€β”€ πŸ“„ mass_exporter.py         # πŸ“¦ Multi-format export
β”‚   β”œβ”€β”€ πŸ“„ scheduler.py             # πŸ•’ Task scheduling
β”‚   └── πŸ“„ demo_workflow.py         # 🎯 Complete demo
β”‚
β”œβ”€β”€ πŸ“ examples/                    # Usage examples
β”‚   β”œβ”€β”€ πŸ“„ basic_usage.py          # Basic MCP usage
β”‚   β”œβ”€β”€ πŸ“„ automation_examples.py  # Automation examples
β”‚   └── πŸ“„ integration_guide.md    # Integration guide
β”‚
└── πŸ“ docs/                       # Documentation
    β”œβ”€β”€ πŸ“„ INSTALLATION.md         # Detailed installation
    β”œβ”€β”€ πŸ“„ CONFIGURATION.md        # Configuration guide
    β”œβ”€β”€ πŸ“„ API_REFERENCE.md        # API documentation
    └── πŸ“„ CONTRIBUTING.md         # Contribution guidelines

πŸ”§ Configuration

Environment Variables

Create a .env file in the root directory:

# POEditor API Configuration
POEDITOR_API_TOKEN=your_api_token_here
POEDITOR_API_URL=https://api.poeditor.com/v2/

# MCP Server Configuration
MCP_SERVER_NAME=poeditor-mcp
MCP_SERVER_VERSION=1.0.0

# Notification Settings (Optional)
SMTP_SERVER=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=your_email@company.com
SMTP_PASSWORD=your_app_password

SLACK_WEBHOOK_URL=https://hooks.slack.com/services/...

# Automation Settings
DEFAULT_EXPORT_FORMAT=json
MAX_RETRIES=3
REQUEST_TIMEOUT=30
LOG_LEVEL=INFO

Scheduler Configuration

Customize automation schedules in scripts/scheduler_config.json:

{
  "schedules": {
    "daily_report": {
      "time": "08:00",
      "enabled": true,
      "weekdays_only": true,
      "description": "Generate daily progress report"
    },
    "monitoring": {
      "time": "09:00",
      "enabled": true,
      "weekdays_only": true,
      "description": "Run translation quality monitoring"
    },
    "weekly_optimization": {
      "day": "monday",
      "time": "08:30",
      "enabled": true,
      "description": "Weekly workflow optimization analysis"
    }
  }
}

πŸš€ Usage Examples

Basic Translation Management

from mcp_poeditor.server import call_tool

# List all projects
projects = await call_tool("list_projects", {})

# Get project languages
languages = await call_tool("list_languages", {"project_id": "123456"})

# Search for specific terms
results = await call_tool("search_terms", {
    "project_id": "123456",
    "search_query": "login"
})

# Export translations
export_url = await call_tool("export_translations", {
    "project_id": "123456",
    "language_code": "es",
    "file_format": "json"
})

Automation Workflow

# Morning routine
python control_center.py monitor        # Check for issues
python control_center.py daily_report   # Generate progress report

# Development workflow  
python control_center.py automate       # Get AI suggestions
python control_center.py export         # Export for developers

# Weekly optimization
python control_center.py optimize       # Analyze workflow efficiency
python control_center.py sync          # Sync related projects

Integration with CI/CD

# GitHub Actions example
name: Translation Export
on:
  schedule:
    - cron: '0 8 * * *'  # Daily at 8 AM
  
jobs:
  export:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Setup Python
        uses: actions/setup-python@v4
        with:
          python-version: '3.9'
      - name: Install dependencies
        run: pip install -r requirements.txt
      - name: Export translations
        env:
          POEDITOR_API_TOKEN: ${{ secrets.POEDITOR_API_TOKEN }}
        run: python control_center.py export

πŸ”„ Automated Workflows

Daily Automation

  • πŸŒ… Morning: Quality monitoring and progress reports

  • πŸ•™ Midday: AI-powered translation suggestions

  • πŸŒ† Evening: Export updates for development teams

Weekly Optimization

  • πŸ“Š Monday: Workflow analysis and optimization recommendations

  • πŸ”„ Wednesday: Project synchronization and consistency checks

  • πŸ“¦ Friday: Complete backup and multi-format export

Real-time Monitoring

  • 🚨 Quality alerts: Fuzzy translations, consistency issues

  • πŸ“ˆ Progress tracking: Language completion milestones

  • πŸ‘₯ Team notifications: Slack/email updates for important events

🎯 Supported Export Formats

Perfect for any development workflow:

  • πŸ“± Mobile: Android XML, iOS Strings, React Native JSON

  • 🌐 Web: JSON, CSV for React/Vue/Angular applications

  • πŸ–₯️ Backend: Gettext PO, Java Properties, YAML

  • πŸ“Š Analysis: Excel XLSX, CSV for progress tracking

  • πŸ”„ Integration: XLIFF, TMX for CAT tools

πŸ“š Documentation

πŸ†˜ Troubleshooting

Common Issues

Connection Failed

# Test your POEditor API token
python test_connection.py

# Check configuration
python control_center.py status

Missing Dependencies

# Reinstall requirements
pip install -r requirements.txt

# Run system diagnostics
python control_center.py test

Permission Errors

# Fix file permissions
chmod +x setup.py
chmod +x control_center.py

Getting Help

  1. πŸ” Check logs: ./logs/ directory contains detailed execution logs

  2. πŸ§ͺ Run diagnostics: python control_center.py test

  3. πŸ“Š System status: python control_center.py status

  4. πŸ› Report issues: Create a GitHub issue with log details

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • πŸ› Reporting bugs

  • πŸ’‘ Suggesting features

  • πŸ”§ Submitting pull requests

  • πŸ“– Improving documentation

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🌟 Acknowledgments

  • Model Context Protocol for the excellent MCP framework

  • POEditor for their comprehensive translation management API

  • The open-source community for inspiration and best practices


⭐ If this project helps you, please consider giving it a star!

πŸš€ Start automating your translation workflow today!

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/r-pedraza/poeditor-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server