mcpField
M
Markdownify MCP Server - UTF-8 Enhanced

Markdownify MCP Server - UTF-8 Enhanced

ローカル
github.com/JDJR2024ブラウザ自動化1585 週間前に更新

Markdownify MCP Server - UTF-8 Enhanced について

ウェブページや各種ローカルファイルを Markdown に変換する MCP サーバーで、多言語文書を扱うユーザー向けです。UTF-8 と Windows の文字コード対応を強化し、バッチ変換も行えます。

主な機能

  1. 01PDF、DOCX、XLSX、PPTX の変換
  2. 02画像、音声、ウェブコンテンツの変換
  3. 03YouTube の字幕と検索結果への対応
  4. 04UTF-8 と多言語テキストのサポート
  5. 05複数ファイルのバッチ処理
  6. 06メタデータ抽出と書式保持

活用シーン

  1. 01ローカル文書を Markdown に変換
  2. 02ウェブページや YouTube 動画の内容を整理
  3. 03多言語ファイルをまとめて変換
  4. 04Windows で非 ASCII テキストを処理

MCP 対応

README ではデスクトップアプリに MCP サーバーとして設定できると説明されていますが、MCP クライアントに公開する具体的なツールは記載されていません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Markdownify MCP Server - UTF-8 Enhanced

UTF-8 エンコーディングのサポートを強化し、多言語コンテンツの処理を最適化した、オリジナルの Markdownify MCP プロジェクトの改良版です。

中文文档

改良点

  • UTF-8 エンコーディングを包括的にサポート
  • 多言語コンテンツの処理を最適化
  • Windows システムでのエンコーディングの問題を修正
  • エラー処理の仕組みを改善

オリジナルプロジェクトとの主な違い

  1. エンコーディングのサポートを強化:

    • すべての操作で UTF-8 を完全にサポート
    • 中国語、日本語、韓国語などの非 ASCII 文字を適切に処理
    • Windows 固有のエンコーディングの問題を修正(cmd.exe および PowerShell との互換性)
  2. エラー処理を改善:

    • 英語と中国語による詳細なエラーメッセージ
    • ネットワークの問題に対する例外処理を改善
    • 変換に失敗した場合の適切なフォールバック機能
  3. 機能を拡張:

    • 複数ファイルの一括処理をサポート
    • YouTube 動画の文字起こし処理を強化
    • さまざまなファイル形式からのメタデータ抽出を改善
    • ドキュメントの書式をより適切に保持
  4. パフォーマンスを最適化:

    • 大容量ファイルの変換時のメモリ使用量を最適化
    • 多言語コンテンツの処理を高速化
    • 依存関係の競合を削減
  5. 開発エクスペリエンスを向上:

    • 包括的なデバッグオプション
    • 詳細なログシステム
    • 環境固有の設定をサポート
    • 英語と中国語による分かりやすいドキュメント

機能

さまざまなファイル形式を Markdown に変換できます。

  • PDF ファイル
  • 画像(メタデータ付き)
  • 音声(文字起こし付き)
  • Word ドキュメント(DOCX)
  • Excel スプレッドシート(XLSX)
  • PowerPoint プレゼンテーション(PPTX)
  • Web コンテンツ:
    • YouTube 動画の文字起こし
    • 検索結果
    • 一般的な Web ページ
  • 既存の Markdown ファイル

クイックスタート

  1. このリポジトリをクローンします。

    git clone https://github.com/JDJR2024/markdownify-mcp-utf8.git
    cd markdownify-mcp-utf8
    
  2. 依存関係をインストールします。

    pnpm install
    

    注:これにより、uv と関連する Python 依存関係もインストールされます。

  3. プロジェクトをビルドします。

    pnpm run build
    
  4. サーバーを起動します。

    pnpm start
    

要件

  • Node.js 16.0 以上
  • Python 3.8 以上
  • pnpm パッケージマネージャー
  • Git

詳細なインストールガイド

1. 環境のセットアップ
  1. Node.js をインストールします。

  2. pnpm をインストールします。

    npm install -g pnpm
    pnpm --version
    
  3. Python をインストールします。

    • Python の公式サイトからダウンロードします。
    • インストール時に Python が PATH に追加されていることを確認します。
    • インストールを確認します:python --version
  4. (Windows のみ)UTF-8 サポートを設定します。

    # Set system-wide UTF-8
    setx PYTHONIOENCODING UTF-8
    # Set current session UTF-8
    set PYTHONIOENCODING=UTF-8
    # Enable UTF-8 in command prompt
    chcp 65001
    
2. プロジェクトのセットアップ
  1. リポジトリをクローンします。

    git clone https://github.com/JDJR2024/markdownify-mcp-utf8.git
    cd markdownify-mcp-utf8
    
  2. Python の仮想環境を作成して有効化します。

    # Windows
    python -m venv .venv
    .venv\Scripts\activate
    
    # Linux/macOS
    python3 -m venv .venv
    source .venv/bin/activate
    
  3. プロジェクトの依存関係をインストールします。

    # Install Node.js dependencies
    pnpm install
    
    # Install Python dependencies (will be handled by setup.sh)
    ./setup.sh
    
  4. プロジェクトをビルドします。

    pnpm run build
    
3. 確認
  1. サーバーを起動します。

    pnpm start
    
  2. インストールをテストします。

    # Convert a web page
    python convert_utf8.py "https://example.com"
    
    # Convert a local file
    python convert_utf8.py "path/to/your/file.docx"
    

使用ガイド

基本的な使い方
  1. Web ページを変換する:

    python convert_utf8.py "https://example.com"
    

    変換された Markdown は converted_result.md として保存されます。

  2. ローカルファイルを変換する:

    # Convert DOCX
    python convert_utf8.py "document.docx"
    
    # Convert PDF
    python convert_utf8.py "document.pdf"
    
    # Convert PowerPoint
    python convert_utf8.py "presentation.pptx"
    
    # Convert Excel
    python convert_utf8.py "spreadsheet.xlsx"
    
  3. YouTube 動画を変換する:

    python convert_utf8.py "https://www.youtube.com/watch?v=VIDEO_ID"
    
高度な使い方
  1. 環境変数:

    # Set custom UV path
    export UV_PATH="/custom/path/to/uv"
    
    # Set custom output directory
    export MARKDOWN_OUTPUT_DIR="/custom/output/path"
    
  2. 一括処理: URL またはファイルパスを記載したバッチファイル(例:convert_batch.txt)を作成します。

    https://example1.com
    https://example2.com
    file1.docx
    file2.pdf
    

    次に、以下を実行します。

    while read -r line; do python convert_utf8.py "$line"; done < convert_batch.txt
    
トラブルシューティング
  1. よくある問題:

    • エンコーディングエラーが表示される場合は、UTF-8 が適切に設定されていることを確認してください。
    • Windows でアクセス許可の問題が発生する場合は、管理者として実行してください。
    • Python のパスに関する問題が発生する場合は、仮想環境が有効になっていることを確認してください。
  2. デバッグ:

    # Enable debug output
    export DEBUG=true
    python convert_utf8.py "your_file.docx"
    

使い方

コマンドライン

Web ページを Markdown に変換します。

python convert_utf8.py "https://example.com"

ローカルファイルを変換します。

python convert_utf8.py "path/to/your/file.docx"
デスクトップアプリとの連携

このサーバーをデスクトップアプリと連携するには、アプリのサーバー設定に以下を追加します。

{
  "mcpServers": {
    "markdownify": {
      "command": "node",
      "args": [
        "{ABSOLUTE_PATH}/dist/index.js"
      ],
      "env": {
        "UV_PATH": "/path/to/uv"
      }
    }
  }
}

トラブルシューティング

  1. エンコーディングの問題

    • 文字エンコーディングの問題が発生した場合は、PYTHONIOENCODING 環境変数が utf-8 に設定されていることを確認してください
    • Windows ユーザーは、UTF-8 サポートを有効にするために chcp 65001 を実行する必要がある場合があります
  2. 権限の問題

    • ファイルの読み取り/書き込みに必要な権限があることを確認してください
    • Windows では、管理者として実行する必要がある場合があります

謝辞

このプロジェクトは、Zach Caceres によるオリジナルの成果に基づいています。卓越した貢献をしてくださった原作者に感謝します。

ライセンス

このプロジェクトは引き続き MIT License のもとでライセンスされています。詳細については、LICENSE ファイルをご覧ください。

コントリビューション

コントリビューションを歓迎します!プルリクエストを送信する前に、以下を確認してください。

  1. コードがプロジェクトのコーディング規約に準拠していること
  2. 必要なテストとドキュメントを追加していること
  3. README の関連セクションを更新していること

お問い合わせ

問題や提案がある場合:

  1. Issue を送信する:https://github.com/JDJR2024/markdownify-mcp-utf8/issues
  2. プルリクエストを作成する:https://github.com/JDJR2024/markdownify-mcp-utf8/pulls
  3. メール:[email protected]

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。