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

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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