About Markdown Word Counter Mcp
Markdown Word Counter Mcp is an MCP server for counting Chinese characters and English words in Markdown files. Its two tools provide totals or detailed statistics, with optional Markdown and HTML processing.
Key features
- 01Chinese and English word counting
- 02Configurable Markdown processing
- 03Optional HTML tag removal
- 04Markdown link text extraction
- 05Total and detailed statistics
Use cases
- 01Count words in Markdown documents
- 02Exclude markup when measuring text
- 03Inspect counts with processing details
MCP support
It exposes `count_words` and `detailed_word_count` tools to MCP clients. Both accept a file path and processing options.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMarkdown Word Counter MCP Server
A Model Context Protocol (MCP) server that provides word counting functionality for Markdown files, with support for both Chinese characters and English words.
Features
- Accurate Word Counting: Properly handles both Chinese characters and English words
- Minimal Processing by Default: Only normalizes whitespace, preserves all content
- Configurable Processing: Control what gets processed with flexible options
- Markdown-Aware: Optionally removes Markdown syntax while preserving content
- HTML Tag Removal: Optionally strips HTML tags from content
- Link Processing: Optionally extracts text from Markdown links
- Two Tools Available:
count_words: Get total word count with optionsdetailed_word_count: Get detailed statistics with processing info
Processing Options
By default, only whitespace is normalized. All other processing is optional:
- remove_html_tags (default: false) - Remove HTML tags like
<div>,<p> - process_markdown_links (default: false) - Extract text from
[text](url)links - remove_markdown_headers (default: false) - Remove header markers
#,##, etc. - remove_markdown_lists (default: false) - Remove list markers
-,*,+ - normalize_whitespace (default: true) - Collapse multiple spaces/newlines
Installation
- Clone or download this repository
- Install dependencies:
npm install - Build the project:
npm run build
Usage
As MCP Server
Add to your MCP client configuration (e.g., mcp_settings.json):
{
"mcpServers": {
"markdown-word-counter": {
"command": "node",
"args": [
"/path/to/markdown-word-counter-mcp/build/index.js"
]
}
}
}
Available Tools
count_words
Count total words in a Markdown file.
Parameters:
file_path(string, required): Path to the Markdown fileremove_html_tags(boolean, optional): Remove HTML tags (default: false)process_markdown_links(boolean, optional): Process Markdown links (default: false)remove_markdown_headers(boolean, optional): Remove headers (default: false)remove_markdown_lists(boolean, optional): Remove list markers (default: false)normalize_whitespace(boolean, optional): Normalize whitespace (default: true)
Example (Default - Minimal Processing):
{
"file_path": "document.md"
}
Example (Enable All Processing):
{
"file_path": "document.md",
"remove_html_tags": true,
"process_markdown_links": true,
"remove_markdown_headers": true,
"remove_markdown_lists": true
}
detailed_word_count
Get detailed word count statistics with processing information.
Parameters:
- Same as
count_words
Example:
{
"file_path": "document.md",
"remove_markdown_headers": false
}
Standalone Usage
You can also run the server directly:
npm start
Development
npm run dev: Watch mode for developmentnpm run build: Build the TypeScript codenpm start: Run the built server
Word Counting Logic
The server uses the following logic to count words:
- Remove HTML tags: Strips all HTML markup
- Process Markdown links: Extracts link text, removes URLs
- Remove Markdown syntax: Headers (
#), lists (-,*,+) - Normalize whitespace: Collapses multiple spaces
- Count separately:
- Chinese characters: Using Unicode range
[\u4e00-\u9fa5] - English words: Using word boundaries
\b\w+\b
- Chinese characters: Using Unicode range
- Sum totals: Chinese chars + English words = Total words
Examples
Default Processing (Minimal - Only Normalize Whitespace)
For a file containing:
# Hello 世界
This is a [link](http://example.com) with **bold** text.
- 中文测试
- English test
Default result (preserves all Markdown syntax):
- Chinese Characters: 4 (中文测试)
- English Words: 13 (Hello This is a link http example com with bold text English test)
- Total Words: 17
Full Processing (All Options Enabled)
Same file with all processing enabled:
{
"file_path": "document.md",
"remove_html_tags": true,
"process_markdown_links": true,
"remove_markdown_headers": true,
"remove_markdown_lists": true,
"normalize_whitespace": true
}
Result with full processing:
- Chinese Characters: 4 (世界中文测试)
- English Words: 7 (Hello This is a link with bold text English test)
- Total Words: 11
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.