mcpField
M
Markdown Word Counter Mcp

Markdown Word Counter Mcp

ローカル
github.com/Logan66666生産性072 週間前に更新

Markdown Word Counter Mcp について

Markdown Word Counter Mcp は、Markdown ファイル内の中国語文字と英単語を数える MCP サーバーです。合計数と詳細統計を返す 2 つのツールがあり、Markdown や HTML の処理を選択できます。

主な機能

  1. 01中国語文字と英単語のカウント
  2. 02設定可能な Markdown 処理
  3. 03HTML タグの任意削除
  4. 04Markdown リンクテキストの抽出
  5. 05合計数と詳細統計

活用シーン

  1. 01Markdown 文書の語数カウント
  2. 02マークアップを除いたテキスト計測
  3. 03処理情報付き統計の確認

MCP 対応

MCP クライアントに `count_words` と `detailed_word_count` ツールを提供します。どちらもファイルパスと処理オプションを受け取ります。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

Markdown 単語カウンター MCP サーバー

Markdown ファイルの単語数をカウントする機能を提供する Model Context Protocol(MCP)サーバーです。中国語の文字と英単語の両方に対応しています。

機能

  • 正確な単語数のカウント:中国語の文字と英単語の両方を適切に処理します
  • デフォルトでは最小限の処理:空白のみを正規化し、すべてのコンテンツを保持します
  • 設定可能な処理:柔軟なオプションで処理内容を制御できます
  • Markdown に対応:コンテンツを保持したまま、Markdown 構文を任意で削除できます
  • HTML タグの削除:コンテンツから HTML タグを任意で除去できます
  • リンクの処理:Markdown リンクからテキストを任意で抽出できます
  • 2 つのツールを利用可能:
    • count_words:オプションを指定して合計単語数を取得します
    • detailed_word_count:処理情報を含む詳細な統計を取得します

処理オプション

デフォルトでは、空白のみが正規化されます。それ以外の処理はすべて任意です。

  • remove_html_tags(デフォルト:false)- <div>、<p> などの HTML タグを削除します
  • process_markdown_links(デフォルト:false)- [text](url) リンクからテキストを抽出します
  • remove_markdown_headers(デフォルト:false)- #、## などの見出し記号を削除します
  • remove_markdown_lists(デフォルト:false)- -、*、+ などのリスト記号を削除します
  • normalize_whitespace(デフォルト:true)- 連続するスペースや改行をまとめます

インストール

  1. このリポジトリをクローンするか、ダウンロードします
  2. 依存関係をインストールします:
    npm install
    
  3. プロジェクトをビルドします:
    npm run build
    

使用方法

MCP サーバーとして使用

MCP クライアントの設定(例:mcp_settings.json)に追加します:

{
  "mcpServers": {
    "markdown-word-counter": {
      "command": "node",
      "args": [
        "/path/to/markdown-word-counter-mcp/build/index.js"
      ]
    }
  }
}
利用可能なツール
count_words

Markdown ファイルの合計単語数をカウントします。

パラメーター:

  • file_path(string、必須):Markdown ファイルへのパス
  • remove_html_tags(boolean、任意):HTML タグを削除します(デフォルト:false)
  • process_markdown_links(boolean、任意):Markdown リンクを処理します(デフォルト:false)
  • remove_markdown_headers(boolean、任意):見出しを削除します(デフォルト:false)
  • remove_markdown_lists(boolean、任意):リスト記号を削除します(デフォルト:false)
  • normalize_whitespace(boolean、任意):空白を正規化します(デフォルト:true)

例(デフォルト — 最小限の処理):

{
  "file_path": "document.md"
}

例(すべての処理を有効化):

{
  "file_path": "document.md",
  "remove_html_tags": true,
  "process_markdown_links": true,
  "remove_markdown_headers": true,
  "remove_markdown_lists": true
}
detailed_word_count

処理情報を含む、詳細な単語数の統計を取得します。

パラメーター:

  • count_words と同じ

例:

{
  "file_path": "document.md",
  "remove_markdown_headers": false
}
単独での使用

サーバーを直接実行することもできます:

npm start

開発

  • npm run dev:開発用の監視モードで実行します
  • npm run build:TypeScript コードをビルドします
  • npm start:ビルド済みのサーバーを実行します

単語数のカウントロジック

サーバーは次のロジックで単語数をカウントします。

  1. HTML タグを削除:すべての HTML マークアップを除去します
  2. Markdown リンクを処理:リンクテキストを抽出し、URL を削除します
  3. Markdown 構文を削除:見出し(#)、リスト(-、*、+)
  4. 空白を正規化:連続するスペースをまとめます
  5. 個別にカウント:
    • 中国語の文字:Unicode 範囲 [\u4e00-\u9fa5] を使用します
    • 英単語:単語境界 \b\w+\b を使用します
  6. 合計を算出:中国語の文字数 + 英単語数 = 合計単語数

例

デフォルトの処理(最小限 — 空白のみを正規化)

次の内容を含むファイルの場合:

# Hello 世界

This is a [link](http://example.com) with **bold** text.

- 中文测试
- English test

デフォルトの結果(すべての Markdown 構文を保持):

  • 中国語の文字数:4(中文测试)
  • 英単語数:13(Hello This is a link http example com with bold text English test)
  • 合計単語数:17
完全な処理(すべてのオプションを有効化)

同じファイルにすべての処理を適用した場合:

{
  "file_path": "document.md",
  "remove_html_tags": true,
  "process_markdown_links": true,
  "remove_markdown_headers": true,
  "remove_markdown_lists": true,
  "normalize_whitespace": true
}

すべての処理を適用した結果:

  • 中国語の文字数:4(世界中文测试)
  • 英単語数:7(Hello This is a link with bold text English test)
  • 合計単語数:11

ライセンス

MIT

コメント

MCP は初めてですか?

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

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