Skip to main content
Glama
README.mdβ€’17.5 kB
# 🌐 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)](https://img.shields.io/github/v/release/r-pedraza/poeditor-mcp)](https://github.com/r-pedraza/poeditor-mcp/releases) [![Python](https://img.shields.io/badge/Python-3.8+-3776ab?logo=python&logoColor=white)](https://www.python.org/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![GitHub stars](https://img.shields.io/github/stars/r-pedraza/poeditor-mcp?style=social)](https://github.com/r-pedraza/poeditor-mcp/stargazers) [![MCP Protocol](https://img.shields.io/badge/MCP-Model%20Context%20Protocol-blue?logo=openai&logoColor=white)](https://github.com/modelcontextprotocol) [![POEditor API](https://img.shields.io/badge/POEditor-API%20Integration-orange?logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyIDJMMTMuMDkgOC4yNkwyMCA5TDEzLjA5IDE1Ljc0TDEyIDIyTDEwLjkxIDE1Ljc0TDQgOUwxMC45MSA4LjI2TDEyIDJaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K)](https://poeditor.com/) [![Claude Desktop](https://img.shields.io/badge/Claude%20Desktop-Compatible-8A2BE2?logo=anthropic&logoColor=white)](https://claude.ai/) [![VS Code](https://img.shields.io/badge/VS%20Code-Compatible-007ACC?logo=visual-studio-code&logoColor=white)](https://code.visualstudio.com/) [![GitHub issues](https://img.shields.io/github/issues/r-pedraza/poeditor-mcp)](https://github.com/r-pedraza/poeditor-mcp/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/r-pedraza/poeditor-mcp)](https://github.com/r-pedraza/poeditor-mcp/pulls) [![GitHub last commit](https://img.shields.io/github/last-commit/r-pedraza/poeditor-mcp)](https://github.com/r-pedraza/poeditor-mcp/commits/main) [![GitHub repo size](https://img.shields.io/github/repo-size/r-pedraza/poeditor-mcp)](https://github.com/r-pedraza/poeditor-mcp) ## πŸš€ **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 ## 🎯 **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](https://img.shields.io/badge/Development%20Status-Stable-brightgreen)](https://github.com/r-pedraza/poeditor-mcp) [![Maintenance](https://img.shields.io/badge/Maintained-Yes-green)](https://github.com/r-pedraza/poeditor-mcp/commits/main) [![API Coverage](https://img.shields.io/badge/POEditor%20API%20Coverage-100%25-success)](https://poeditor.com/docs/api) [![Documentation](https://img.shields.io/badge/Documentation-Complete-blue)](https://github.com/r-pedraza/poeditor-mcp#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) ```bash # 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** ```bash # 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** ```bash # 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` ```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 ```json { "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: ```bash 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: ```env # 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`: ```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** ```python 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** ```bash # 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** ```yaml # 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** - [πŸ“– Installation Guide](docs/INSTALLATION.md) - Detailed setup instructions - [βš™οΈ Configuration Guide](docs/CONFIGURATION.md) - Advanced configuration options - [πŸ”§ API Reference](docs/API_REFERENCE.md) - Complete API documentation - [πŸš€ Integration Guide](examples/integration_guide.md) - Platform integration examples - [🀝 Contributing](docs/CONTRIBUTING.md) - How to contribute to the project ## πŸ†˜ **Troubleshooting** ### **Common Issues** **Connection Failed** ```bash # Test your POEditor API token python test_connection.py # Check configuration python control_center.py status ``` **Missing Dependencies** ```bash # Reinstall requirements pip install -r requirements.txt # Run system diagnostics python control_center.py test ``` **Permission Errors** ```bash # 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](docs/CONTRIBUTING.md) for details on: - πŸ› Reporting bugs - πŸ’‘ Suggesting features - πŸ”§ Submitting pull requests - πŸ“– Improving documentation ## πŸ“„ **License** This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## 🌟 **Acknowledgments** - [Model Context Protocol](https://github.com/modelcontextprotocol) for the excellent MCP framework - [POEditor](https://poeditor.com) 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!**

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