MCP Character Tools
The last thing you need for your LLM to work with individual characters or count the number of r's in a word. This is an MCP server providing 14+ comprehensive (and pretty) character and text analysis tools to help LLMs work with individual characters - something they struggle with due to tokenization.
See the Difference
Without MCP (Wrong) | With MCP (Correct) |
Claims there are 2 r's in "garlic" | Correctly identifies 1 r in "garlic" |
Why This Exists
First of all, why not? Second, Large Language Models tokenize text into subwords, not individual characters. For example, "strawberry" might become tokens like ["straw", "berry"], so the model never truly "sees" individual letters. This MCP server gives LLMs "character-level vision" through a suite of tools.
Installation
Via npx (recommended)
Via npm (global install)
From source
Usage with Claude Desktop
Add to your Claude Desktop configuration (claude_desktop_config.json):
All Tools Reference
See sample_outputs.md for complete examples with inputs and outputs for all 14+ tools.
Tool | Description |
| Count a specific letter |
| Count multiple letters at once |
| Count substring occurrences |
| Get frequency distribution |
| Break into characters |
| Get character at index |
| Get nth character (1-based) |
| Get exact length |
| Reverse text, detect palindromes |
| Compare two texts |
| Word-by-word breakdown |
| Count across multiple words |
| List commonly miscounted words |
| Check if word is tricky |
Development
Testing
The project includes comprehensive tests for all tools:
Test files:
tests/counting.test.ts- Counting tools teststests/spelling.test.ts- Spelling tools teststests/analysis.test.ts- Analysis tools teststests/tricky-words.test.ts- Tricky words resource teststests/visualization.test.ts- Visualization utility tests
License
MIT