File Converter MCP Server

by wowyuarm
Verified

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Enables conversion of Markdown documents to PDF with proper styling, supporting both file path-based and content-based conversion methods.

  • Leverages pandas library for Excel to CSV conversion functionality, allowing users to transform spreadsheet data to a more accessible format.

  • Utilizes multiple conversion libraries from PyPI including docx2pdf, pdf2docx, and pdfkit to enable a wide range of file format conversions.

ファイルコンバーター MCP サーバー

简体中文| English

このMCPサーバーは、様々なドキュメントおよび画像形式を変換するための複数のファイル変換ツールを提供します。このプロジェクトは、モデルコンテキストプロトコル(MCP)を使用して構築されており、ファイル変換機能を必要とするAIエージェント向けに設計されています。

特徴

  • DOCXからPDFへ:Microsoft Word文書をPDFに変換
  • PDFからDOCXへ: PDF文書をMicrosoft Word形式に変換
  • 画像形式の変換: さまざまな画像形式 (JPG、PNG、WebP など) 間で変換します。
  • Excel から CSV へ: Excel スプレッドシートを CSV 形式に変換します
  • HTMLからPDFへ: HTMLファイルをPDF形式に変換します
  • Markdown to PDF : Markdown文書を適切なスタイルでPDFに変換します
  • 汎用変換: さまざまな形式の変換を処理できる多目的ツール

テクノロジー

インストール

  1. リポジトリのクローンを作成する
    git clone https://github.com/wowyuarm/file-converter-mcp.git cd file-converter-mcp
  2. 仮想環境を作成する(オプションですが推奨)
    python -m venv venv source venv/bin/activate # On Unix-based systems venv\Scripts\activate # On Windows
  3. 依存関係をインストールするpip を使用して必要なパッケージをインストールします。
    pip install mcp docx2pdf pdf2docx pillow pandas pdfkit markdown
    あるいは、 uvを使用している場合:
    uv add "mcp[cli]" docx2pdf pdf2docx pillow pandas pdfkit markdown
    注: 一部の変換ライブラリには追加のシステム依存関係がある場合があります。詳細はそれぞれのドキュメントをご確認ください。

使用法

開発モードでサーバーを実行する

サーバーをテストするには、次のコマンドを実行します。

mcp dev file_converter_server.py

Claude Desktop へのインストール

オプションとして、次の方法で Claude Desktop にサーバーをインストールできます。

mcp install file_converter_server.py --name "File Converter"

API / ツール

MCP サーバーは次のツールを公開します。

パスベースのツール(コンテンツ入力もサポート)

docx2pdf

コマンド: docx2pdf

  • 入力オプション1 : .docxファイルへのパス
    input_file: path/to/document.docx
  • 入力オプション2 : DOCXファイルのBase64エンコードされたコンテンツ
    file_content_base64: [base64 encoded string]
  • 出力: 変換されたPDFファイルのBase64エンコードされた文字列
pdf2docx

コマンド: pdf2docx

  • 入力オプション1 : PDFファイルへのパス
    input_file: path/to/document.pdf
  • 入力オプション2 : PDFファイルのBase64エンコードされたコンテンツ
    file_content_base64: [base64 encoded string]
  • 出力: 変換されたDOCXファイルのBase64エンコードされた文字列
画像変換

コマンド: convert_image

  • 入力オプション1 :
    input_file: path/to/image.png output_format: jpg
  • 入力オプション2 :
    file_content_base64: [base64 encoded string] input_format: png output_format: jpg
  • 出力: 変換された画像のBase64エンコードされた文字列
エクセル2csv

コマンド: excel2csv

  • 入力: Excel ファイルへのパス (.xls または .xlsx)
  • 出力: 変換されたCSVファイルのBase64エンコードされた文字列
html2pdf

コマンド: html2pdf

  • 入力: HTML または Markdown ファイルへのパス (.html、.md、.markdown)
  • 出力: 変換されたPDFファイルのBase64エンコードされた文字列
convert_file (汎用コンバーター)

コマンド: convert_file

  • 入力オプション1 :
    input_file: path/to/file.docx input_format: docx output_format: pdf
  • 入力オプション2 :
    file_content_base64: [base64 encoded string] input_format: docx output_format: pdf
  • 出力: 変換されたファイルのBase64エンコードされた文字列

コンテンツベースのツール(レガシー)

これらは下位互換性のために維持されています。すべての主要ツールがコンテンツベースの入力を直接サポートするようになりました。

convert_content (汎用コンテンツコンバータ)

コマンド: convert_content

  • 入力:
    • 入力ファイルのBase64エンコードされたコンテンツ
    • ソース形式(例:「docx」、「pdf」、「md」)
    • 対象フォーマット(例:「pdf」、「docx」)
  • 出力: 変換されたファイルのBase64エンコードされた文字列
docx2pdf_コンテンツ

コマンド: docx2pdf_content

  • 入力: DOCXファイルのBase64エンコードされたコンテンツ
  • 出力: 変換されたPDFファイルのBase64エンコードされた文字列
pdf2docx_コンテンツ

コマンド: pdf2docx_content

  • 入力: PDFファイルのBase64エンコードされたコンテンツ
  • 出力: 変換されたDOCXファイルのBase64エンコードされた文字列
マークダウン2PDFコンテンツ

コマンド: markdown2pdf_content

  • 入力: MarkdownファイルのBase64エンコードされたコンテンツ
  • 出力: 変換されたPDFファイルのBase64エンコードされた文字列

ファイル処理

サーバーには、次のような強力なファイル パス処理機能が含まれています。

  • 多段階の検索戦略を使用してファイルを検索します
  • 一般的な場所(一時ディレクトリ、現在のディレクトリ)でアップロードされたファイルを検索します。
  • 複数のファイル名のバリエーションを試します(大文字と小文字を区別せず、拡張子あり/なし)
  • ファイルの場所の問題のトラブルシューティングに役立つ詳細なログを提供します
  • Claude チャット インターフェース経由でアップロードされたファイルとシームレスに連携します
  • 相対および絶対ファイルパスをサポート
  • 可能な場合はファイル形式を自動的に検出します

デュアルモード入力

すべての変換ツールは、次の 2 つの入力方法をサポートするようになりました。

  1. パスベースの変換(従来のアプローチ)
    @File Converter docx2pdf input_file: file.docx
  2. コンテンツベースの変換(パス検索が失敗した場合でも機能します)
    @File Converter docx2pdf file_content_base64: [base64 encoded string]

このデュアルモード アプローチにより、最大限の柔軟性と信頼性が実現します。

  • 疑わしい場合は、コンテンツベースの入力を使用して確実に処理する
  • すべての中間ファイルは、一時ディレクトリに一意の名前で作成されます。
  • 一時ファイルは処理後に自動的にクリーンアップされます

Claude 固有のファイルアップロードの処理

Claude で使用する場合、ファイルのアップロードが見つからない場合は:

  1. 先頭にパスを付けた元のファイル名を使用してみてください:
    @File Converter docx2pdf input_file: /tmp/file.docx
  2. それが失敗した場合は、Claude から直接ファイルの内容を取得します。
    @File Converter docx2pdf file_content_base64: [base64 content obtained from Claude]

エラー処理

  • 各ツールは複数の検索戦略を使用してファイルの存在を検証します
  • 詳細なエラー メッセージは、構造化された JSON 形式で返されます: {"success": false, "error": "error message"}
  • 変換が成功すると次が返されます: {"success": true, "data": "base64 encoded file content"}
  • サーバーにはトラブルシューティングのための包括的なログ機能が含まれています
  • サーバーは例外を適切に処理し、有益なエラーメッセージを返します。

貢献

貢献は大歓迎です!貢献したい場合は、 CONTRIBUTING.md (中文版:贡献指南、英語: Contributing guideline ) のガイドラインに従ってください。

ライセンス

このプロジェクトは MIT ライセンスの下でライセンスされています。詳細についてはLICENSEファイルを参照してください。

GitHubリポジトリ

GitHub リポジトリにアクセスしてください: https://github.com/wowyuarm/file-converter-mcp

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

AI エージェントに複数のファイル変換ツールを提供する MCP サーバー。DOCX から PDF、PDF から DOCX、画像変換、Excel から CSV、HTML から PDF、Markdown から PDF など、さまざまなドキュメントおよび画像形式の変換をサポートします。

  1. Features
    1. Technologies
      1. Installation
        1. Usage
          1. Running the Server in Development Mode
          2. Installing for Claude Desktop
          3. API / Tools
        2. File Handling
          1. Dual-Mode Input
          2. Handling Claude-Specific File Uploads
        3. Error Handling
          1. Contributing
            1. License
              1. GitHub Repository
                ID: hc9kebc64l