mcpField
M
Markdown To Text

Markdown To Text

ローカル
github.com/MD-TO-TEXT生産性066 週間前に更新

Markdown To Text について

Markdown To Text は、Markdown をプレーンテキストに変換する MCP サーバーです。文書、ファイル、リモートの Markdown を扱う用途に向け、テキスト・ファイル・URL・一括変換を stdio と HTTP で提供します。

主な機能

  1. 01Markdown のプレーンテキスト化
  2. 02出力形式とスタイルの設定
  3. 03stdio と HTTP に対応
  4. 04ディレクトリ内ファイルの一括処理
  5. 05URL の Markdown を変換
  6. 06入力検証とセキュリティ保護

活用シーン

  1. 01Markdown テキストのプレーンテキスト化
  2. 02ローカル Markdown ファイルの変換
  3. 03URL から取得した Markdown の変換
  4. 04ディレクトリ内文書の一括変換

MCP 対応

MCP サーバーは `convert_text`、`convert_file`、`convert_url`、`batch_convert` ツールを公開します。stdio と HTTP に対応し、ローカルおよびリモートのクライアントから利用できます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

Markdown からテキストへの MCP サーバー

Markdown ドキュメントをプレーンテキストに変換する、強力な Model Context Protocol(MCP)サーバーです。ローカルツールやリモートサービスとして利用できるよう、stdio と HTTP の両方のトランスポートプロトコルをサポートしています。

機能

  • 📝 Markdown の完全サポート:見出し、リスト、リンク、画像、コードブロック、表など、一般的なすべての要素を処理します。
  • 🎛️ 柔軟な変換オプション:複数の出力形式とスタイル設定を利用できます。
  • 🔧 2 種類のプロトコルをサポート:stdio モード(Claude Desktop)と HTTP モード(リモートクライアント)に対応しています。
  • 📁 バッチ処理:ディレクトリのスキャンとファイルの一括変換に対応しています。
  • 🌐 URL のサポート:リモートの Markdown ファイルを直接処理できます。
  • 🔒 強化されたセキュリティ:包括的な入力検証とセキュリティ保護を備えています。
  • ⚡ 高パフォーマンス:並行処理制御を備えた最適化済みの変換エンジンです。

クイックスタート

インストール
オプション 1:クローンしてビルド
git clone <repository-url>
cd md_to_text_mcp
npm install
npm run build
オプション 2:npx を使用(推奨)
# From npm registry (if published)
npx md_to_text_mcp --help

# From GitHub repository  
npx https://github.com/MD-TO-TEXT/md_to_text --help

# Local development
npm pack
npx ./md_to_text_mcp-1.0.0.tgz --help
基本的な使い方
# Stdio mode (default)
npm start
# or with npx
npx md_to_text_mcp

# HTTP mode
npm run dev:http
# or with npx  
npx md_to_text_mcp --mode http --port 3000

npx を使用する

npx を使うと、ツールをグローバルにインストールせずに実行できます。使い方は次のとおりです。

クイックテスト
# Test the tool help
npx md_to_text_mcp --help

# Run in stdio mode for Claude Desktop
npx md_to_text_mcp --mode stdio

# Start HTTP server
npx md_to_text_mcp --mode http --port 3000

# Custom configuration
npx md_to_text_mcp --mode http --host 0.0.0.0 --port 8080 --cors
ローカルパッケージから実行

ローカルで開発している場合:

# Create package
npm run build
npm pack

# Run with npx
npx ./md_to_text_mcp-1.0.0.tgz --help
npx ./md_to_text_mcp-1.0.0.tgz --mode stdio
npx を使用した Claude Desktop との連携

npx 経由でツールを使用するよう、Claude Desktop を設定できます。

{
  "mcpServers": {
    "md-to-text": {
      "command": "npx",
      "args": ["md_to_text_mcp", "--mode", "stdio"],
      "cwd": "/tmp"
    }
  }
}

注:Claude Desktop の設定で npx を使用するには、パッケージが npm レジストリに公開されているか、Git リポジトリで利用できる必要があります。

ツール

convert_text - テキスト変換

Markdown テキストをプレーンテキストに直接変換します。

convert_file - ファイル変換

ローカルの Markdown ファイルを読み込んで変換します。

convert_url - URL 変換

URL からリモートの Markdown コンテンツを取得して変換します。

batch_convert - バッチ変換

ディレクトリ内の Markdown ファイルを一括処理します。

変換オプション

  • preserveLinks:リンク URL を保持します
  • listStyle:リストのスタイル(bullets/numbers/none)
  • codeHandling:コードの処理方法(preserve/remove/inline)
  • tableFormat:表の形式(simple/grid/none)
  • headingStyle:見出しのスタイル(hash/underline/none)

Claude Desktop との連携

Claude for Desktop の設定ファイルに追加します。

{
  "mcpServers": {
    "md-to-text": {
      "command": "node",
      "args": ["./build/index.js"],
      "cwd": "/path/to/md_to_text_mcp"
    }
  }
}

コマンドラインオプション

md-to-text-mcp [OPTIONS]

OPTIONS:
  --mode <mode>         Server mode: 'stdio' or 'http' (default: stdio)
  --port <port>         HTTP server port (default: 3000)
  --host <host>         HTTP server host (default: localhost)
  --cors                Enable CORS for HTTP mode
  --no-cors             Disable CORS for HTTP mode
  --help, -h            Show help message

EXAMPLES:
  md-to-text-mcp                              # stdio mode
  md-to-text-mcp --mode http --port 3000      # HTTP mode
  md-to-text-mcp --mode http --host 0.0.0.0   # Allow external access

環境変数

変数説明デフォルト
MCP_MODEサーバーモード(stdio/http)stdio
MCP_PORTHTTP サーバーのポート3000
MCP_HOSTHTTP サーバーのホストlocalhost
MAX_FILE_SIZE最大ファイルサイズ(バイト)10485760 (10MB)
URL_TIMEOUTURL リクエストのタイムアウト(ms)30000 (30s)
ALLOWED_EXTENSIONS許可されるファイル拡張子.md,.markdown,.txt

Docker のサポート

# Build image
docker build -t md-to-text-mcp .

# Run HTTP mode
docker run -p 3000:3000 md-to-text-mcp

# Health check
curl http://localhost:3000/health

API の使用例

テキスト変換
{
  "name": "convert_text",
  "arguments": {
    "markdown": "# Hello World\n\nThis is **bold** text.",
    "options": {
      "preserveLinks": true,
      "listStyle": "bullets"
    }
  }
}
ファイル変換
{
  "name": "convert_file",
  "arguments": {
    "path": "/path/to/document.md",
    "options": {
      "headingStyle": "underline"
    }
  }
}
URL 変換
{
  "name": "convert_url",
  "arguments": {
    "url": "https://raw.githubusercontent.com/user/repo/main/README.md",
    "options": {
      "codeHandling": "remove"
    }
  }
}
バッチ変換
{
  "name": "batch_convert",
  "arguments": {
    "directory": "/path/to/docs",
    "recursive": true,
    "options": {
      "tableFormat": "simple"
    }
  }
}

セキュリティ

このサーバーには、複数のセキュリティ層が含まれています。

  • パストラバーサル対策:システムディレクトリへのアクセスを防ぎます
  • ファイルサイズ制限:デフォルトの最大サイズは 10MB です
  • URL 検証:HTTP/HTTPS プロトコルのみを許可します
  • プライベート IP フィルタリング:内部ネットワークへのアクセスを遮断します
  • コンテンツのサニタイズ:悪意のある可能性があるコンテンツを削除します
  • リクエストのタイムアウト:長時間実行される処理を防ぎます

開発

プロジェクト構成
src/
├── engine/          # Conversion engine
├── security/        # Security validation
├── tools/           # MCP tool implementations
├── transports/      # Transport protocols
├── types/           # TypeScript type definitions
└── index.ts         # Main entry point
開発コマンド
npm run build        # Build project
npm run watch        # Watch mode build
npm run dev:stdio    # Development - stdio
npm run dev:http     # Development - HTTP

関連リソース

Markdown ドキュメント
  • Markdown 完全ガイド - Markdown の構文を網羅した包括的なチュートリアルです。md からテキストへの変換を効率化できます。
オンラインツール

ライセンス

MIT ライセンス

コメント

MCP は初めてですか?

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

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