Skip to main content

AI-powered PDF translation assistant using PDFMathTranslate-next, specialized for academic papers with mathematical formulas

Project description

Huoshui PDF Translator

Version: 0.1.0
Powered by: FastMCP & PDFMathTranslate-next
PyPI Package: huoshui-pdf-translator

An intelligent PDF translation assistant that specializes in academic papers with mathematical formulas. Built using the FastMCP framework and powered by PDFMathTranslate-next, it provides comprehensive translation capabilities with context-aware assistance.

๐ŸŒŸ Features

Core Translation Capabilities

  • ๐Ÿ“š Academic Papers: Excellent handling of mathematical formulas and equations
  • ๐Ÿ”ฌ Technical Documents: Preserves formatting and technical terminology
  • ๐ŸŒ Multi-language Support: Auto-detection with Chinese โ†” English specialization
  • ๐ŸŽจ Layout Preservation: Maintains original PDF structure and formatting

Smart Assistant Features

  • ๐Ÿง  Context-Aware Prompts: Multiple specialized prompts for different scenarios
  • ๐Ÿ› ๏ธ Tool Status Checking: Verify translation tool installation and availability
  • ๐Ÿ“Š PDF Analysis: Get detailed information about PDF files before translation
  • ๐Ÿ” Flexible Path Handling: Support for both absolute and relative file paths
  • โšก Progress Reporting: Real-time progress updates during translation
  • ๐Ÿšจ Intelligent Error Handling: Comprehensive error diagnosis and troubleshooting

MCP Features

  • ๐Ÿ“‹ Resources: Translation capability listings and PDF file information
  • ๐ŸŽฏ Tools: Translation, PDF analysis, and tool status checking
  • ๐Ÿ’ฌ Prompts: Role definitions, path guidance, options explanation, and error troubleshooting
  • ๐Ÿ”’ Security: Safe path validation with system directory protection

๐Ÿš€ Quick Start

Installation

From MCP Registry (Recommended)

This server is available in the Model Context Protocol Registry. Install it using your MCP client.

mcp-name: io.github.huoshuiai42/huoshui-pdf-translator

Using uvx

uvx huoshui-pdf-translator

Claude Desktop Setup

Add this to your Claude Desktop MCP configuration:

{
  "mcpServers": {
    "huoshui-pdf-translator": {
      "command": "uvx",
      "args": ["huoshui-pdf-translator"]
    }
  }
}

Alternative Installation Methods

Via pipx:

pipx install huoshui-pdf-translator

Via UV tools:

uv tool install huoshui-pdf-translator

Claude Desktop config for UV tools:

{
  "mcpServers": {
    "huoshui-pdf-translator": {
      "command": "uv",
      "args": ["tool", "run", "huoshui-pdf-translator"]
    }
  }
}

๐Ÿ“– Usage

First-Time Setup

  1. Warm up (downloads fonts/models): Use warm_up_translator tool
  2. Check status: Use check_translation_tool tool
  3. Translate: Use translate_pdf tool with your PDF path

MCP Tools

translate_pdf

Translates PDF documents while preserving mathematical formulas and layout.

# Basic usage
translate_pdf(pdf_path="Desktop/paper.pdf")

# With custom output path
translate_pdf(
    pdf_path="Documents/research.pdf",
    output_path="Documents/translated/research_cn.pdf"
)

pdf_get

Retrieves detailed information about a PDF file.

pdf_info = pdf_get(path="Desktop/document.pdf")
# Returns: PDFResource with path, size_bytes, page_count

warm_up_translator

Downloads required assets and models. Run this first to avoid timeouts.

warm_up_translator()
# Downloads fonts and models (~50MB) for faster subsequent translations

check_translation_tool

Verifies PDFMathTranslate-next installation and status.

status = check_translation_tool()
# Returns: status, version, message

MCP Prompts

  • role_and_rules: Core identity and operational rules
  • explain_pdf_paths: Help with file path specifications
  • explain_translation_options: Available options and best practices
  • troubleshoot_translation_error: Error diagnosis and solutions
  • explain_translation_result: Result explanation and next steps

File Path Examples

The assistant supports flexible path specifications:

# Absolute paths
/Users/john/Desktop/research.pdf
C:\Users\John\Documents\paper.pdf

# Relative to home directory
Desktop/research.pdf
Documents/papers/study.pdf

# Simple filenames (assumes home directory)
paper.pdf

๐ŸŽฏ Translation Workflow

  1. Install: uvx huoshui-pdf-translator
  2. Setup Claude Desktop: Add MCP configuration
  3. Warm up: Run warm_up_translator tool (first time only)
  4. Translate: Use translate_pdf with your PDF path
  5. Review: Two files created (dual-language and Chinese-only)

โšก Performance

  • First translation: 2-5 minutes (downloads fonts/models)
  • Subsequent translations: 30-60 seconds
  • File size limit: 200MB maximum
  • Cache size: ~50MB for fonts and models

๐Ÿ” Troubleshooting

Common Issues

Translation Tool Not Available

The tool automatically installs pdf2zh-next when needed. If issues occur:

# Check status
# Use check_translation_tool in Claude Desktop

# Manual install if needed
pip install pdf2zh-next

First Translation Timeout

# Run warmup first
# Use warm_up_translator tool in Claude Desktop

PDF File Not Found

  • Verify file path is correct
  • Use absolute paths for clarity
  • Check file hasn't been moved or deleted

Network Issues

  • Ensure internet connection (required for first-time font downloads)
  • Check firewall settings

Error Diagnosis

The assistant provides intelligent error diagnosis with specific solutions for:

  • File not found errors
  • Invalid PDF files
  • Translation tool issues
  • Network connectivity problems
  • File size limitations

๐Ÿ› ๏ธ Development

For Developers

Install from source:

git clone https://github.com/huoshuiai/huoshui-pdf-translator.git
cd huoshui-pdf-translator
uv sync
uv run python -m huoshui_pdf_translator.main

Build and publish:

uv build
uv run twine upload dist/*

Project Structure

huoshui-pdf-translator/
โ”œโ”€โ”€ huoshui_pdf_translator/
โ”‚   โ”œโ”€โ”€ __init__.py      # Package metadata
โ”‚   โ””โ”€โ”€ main.py         # FastMCP server implementation
โ”œโ”€โ”€ pyproject.toml      # Package configuration
โ”œโ”€โ”€ README.md          # This file
โ””โ”€โ”€ LICENSE           # Apache-2.0 license

๐Ÿ”„ Updates

Update to latest version:

uvx install --upgrade huoshui-pdf-translator
# or
uv tool upgrade huoshui-pdf-translator

๐Ÿค Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

๐Ÿ“„ License

This project is licensed under the Apache-2.0 License. See the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • PDFMathTranslate-next: Core translation engine
  • FastMCP: Framework for intelligent assistant capabilities
  • Anthropic: MCP protocol and ecosystem
  • UV & PyPI: Modern Python packaging and distribution

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

huoshui_pdf_translator-0.1.1.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

huoshui_pdf_translator-0.1.1-py3-none-any.whl (16.4 kB view details)

Uploaded Python 3

File details

Details for the file huoshui_pdf_translator-0.1.1.tar.gz.

File metadata

  • Download URL: huoshui_pdf_translator-0.1.1.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for huoshui_pdf_translator-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a80fa3a9dae7f641362a25d025a157ff0a527b3583d086175df33b5f5c4ca3f2
MD5 8c6e2dee9e26dabbf4043046cf3aebed
BLAKE2b-256 476be5732bd20402b61f9824178e139cd9a79814799829757ca234d27682e893

See more details on using hashes here.

File details

Details for the file huoshui_pdf_translator-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for huoshui_pdf_translator-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b2af0505ad2c535190e11e4480fd50d04173a2d9de0736c56ff1967f4189de45
MD5 e6d86726894474f767bf3037de825cdc
BLAKE2b-256 d1758585ed7d2b21a30abcc02e68b4091f3ba8430b1697c6f415a70aeb371b43

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page