readability-claude

readability-claude

Enables Claude to analyze and improve readability of text using local deterministic metrics like Flesch Reading Ease and lexical diversity, without sending data to external services.

Category
Visit Server

README

Readability for Claude

CI Release License: MIT

Keep Claude's prose clear without sending the draft to another service. Readability adds a local, deterministic readability check to Claude Code and Claude Desktop. Claude can score a draft, rewrite it, and check the result again.

  • Flesch Reading Ease: 0-100, higher is easier
  • MTLD and type-token ratio for lexical diversity
  • Sentence, paragraph, and word statistics
  • Local processing with no telemetry or network requests
  • Pure-JavaScript analyzer with no runtime dependencies

“Rewrite this release note in plain English. Keep every fact and aim for a Reading Ease score of at least 60.”

Install

Claude Code plugin

Run these commands inside Claude Code:

/plugin marketplace add alesdrobysh/readability-claude
/plugin install readability@readability-marketplace

Then invoke /readability, or ask Claude to check or simplify substantial English prose.

Requires Node.js 18 or newer on PATH.

Claude Desktop MCP Bundle

Download readability.mcpb from the latest release, open it, and approve the installation in Claude Desktop. The analyze_readability MCP tool will then be available.

The bundle contains its Node dependencies and needs no API key or setup. Its bundled server requires a host with Node.js 20 or newer.

Command line

From a checkout:

printf '%s\n' 'Your draft goes here.' | node src/check.js
printf '%s\n' 'Your draft goes here.' | node src/check.js --threshold 60

The threshold command exits 1 when the draft misses the target. Invalid input or options exit 2.

Example output

{
  "word_count": 174,
  "sentence_count": 12,
  "paragraph_count": 4,
  "avg_sentence_length": 14.5,
  "avg_word_length": 4.8,
  "ttr": 0.61,
  "mtld": 74.2,
  "flesch_reading_ease": 64.3,
  "complexity_label": "Moderate"
}
Field Meaning
flesch_reading_ease 0-100. 70+ simple, 50-69 moderate, below 50 complex.
complexity_label Bucket derived from Reading Ease.
mtld Lexical diversity; null below 50 words.
ttr Unique tokens divided by all tokens.
avg_sentence_length Words per sentence.
avg_word_length Characters per word.
word_count, sentence_count, paragraph_count Surface statistics.

Markdown code blocks and inline code are removed. Formatting markers are stripped while prose content, headings, links, and list text are retained. This is intentionally a small Markdown heuristic, not a complete parser.

What this score can and cannot do

This project currently supports English prose. Its syllable counter is a small English heuristic, not a dictionary. Flesch Reading Ease rewards short sentences and short words; it does not understand meaning, accuracy, tone, or style. Use the score as a guardrail against bloat, not a target to game.

Do not use it on source code, logs, command output, non-English prose, or tiny samples.

Privacy and security

Analysis happens in the local Node process. The analyzer:

  • makes no network requests;
  • does not persist text (the Claude host may retain conversation data);
  • starts no network listener;
  • uses no API keys or telemetry.

The MCP Bundle uses stdio to communicate with its host. See SECURITY.md to report a vulnerability.

Development

npm install
npm test
npm run validate:mcpb
npm run build:mcpb
# -> readability.mcpb and readability.mcpb.sha256

src/analyzer.js and src/check.js are canonical. The build copies them into the Claude Code plugin and MCP Bundle before packaging, and the test suite checks that all copies remain identical.

Project layout:

src/                         analyzer and CLI source
plugin/                      Claude Code plugin
mcpb/                        Claude Desktop MCP Bundle source
test/smoke.js                dependency-free smoke tests
scripts/build-mcpb.sh        validated, lockfile-based bundle build
.claude-plugin/              self-hosted Claude Code marketplace
.github/workflows/           CI and release automation

See CONTRIBUTING.md for development and release checks.

License

MIT. See LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured