AgentStack
MCP verified MIT Self-run

Prose Rich Mcp

mcp-justinritchie-prose-rich-mcp · by justinritchie

One local MCP server wrapping five free prose linters (proselint, alex, write-good, blocklint, textstat) + AI-tell detector - for catching weak, inflated, exclusionary, or LLM-generated writing without subscription costs

No reviews yet
0 installs
3 views
0.0% view→install

Install

$ agentstack add mcp-justinritchie-prose-rich-mcp

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Prose Rich Mcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

prose-rich-mcp

> One local Model Context Protocol (MCP) server that wraps five free prose linters — proselint, alex, write-good, blocklint, textstat — plus a small built-in AI-tell detector. Gives Claude (and any MCP client) six independent lenses on a draft without per-word subscription costs or sending your text to a cloud service.

[](LICENSE) [](https://www.python.org/downloads/) [](https://modelcontextprotocol.io/)


Why this exists

The "writing improvement" MCP landscape is fragmented — every paid tool (Grammarly, ProWritingAid, DeepL Write, HumanTone, Sapling) wants a subscription and pushes someone else's opinion of good writing on you. The free tools (proselint, alex, write-good, blocklint, textstat) each give Claude a different lens on the same draft, but they all need to be installed and called separately.

This is the single connector that wires them all together. ~600 lines of Python, no API keys, no network, runs forever for free.

Pair it with Vale for your own house-style enforcement, and with the Writing Tools MCP for objective "does this still read like an LLM" signals (perplexity + stylometric), and you have a complete free local writing-improvement stack.

Tools

| Tool | What it catches | | --- | --- | | lint_proselint | Adverbs, clichés, hyperbole, redundancy, vague modifiers — Bryan Garner / DFW / Pinker / Orwell-inspired rules. | | lint_alex | Gender-favoring, ableist, racial, and other insensitive language. Markdown/MDX/HTML aware. | | lint_writegood | Passive voice, weasel words ("many", "various"), lexical illusions, "so/there is" openers. | | lint_blocklint | Non-inclusive identifiers and code-style language alex sometimes misses (master/slave, blacklist/whitelist). | | readability_stats | Flesch, Flesch-Kincaid, Gunning Fog, SMOG, Coleman-Liau, ARI, Dale-Chall, syllable/lexicon/sentence counts, reading time — via textstat. | | check_ai_tells | Built-in detector for signature LLM phrases ("delve", "leverage", "tapestry", "It's important to note", Moreover/Furthermore/Additionally openers, etc.). | | audit_all | Run all six in one call and return a merged report with a roll-up. |

Every tool accepts either an inline text string or an absolute path to a local file. Outputs are structured JSON with line / column locations.

Install

pip install prose-rich-mcp

The Python deps (textstat, proselint, blocklint, fastmcp) install automatically. The Node-ecosystem linters need a separate install:

npm install -g alex write-good

If alex or write-good aren't on PATH, the corresponding tools return TOOL_NOT_INSTALLED and the rest still work — audit_all reports the gap in its tools_missing list instead of failing.

Run

prose-rich-mcp        # stdio MCP server

Configure in Claude Desktop

{
  "mcpServers": {
    "prose-rich": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/justinritchie/prose-rich-mcp", "prose-rich-mcp"]
    }
  }
}

Security

  • All processing is local. No network calls, no API keys.
  • PROSE_RICH_ALLOWED_ROOTS is opt-in (not on by default). Leave unset and the server reads any path your user account can read. Set to a colon-separated list of dirs only if you want to sandbox.
  • PROSE_RICH_MAX_FILE_BYTES defaults to 10 MB.

What this isn't

  • Not a grammar checker. For that, run LanguageTool self-hosted in Docker (~10 GB with n-grams) or just rely on Claude's native grammar.
  • Not a style-guide enforcer. For your rules (banned words, preferred phrasings), use Vale — pair this with Vale, don't replace it.
  • Not an AI-text humanizer. The check_ai_tells detector flags patterns; it doesn't rewrite. If you want to defeat detectors specifically, see HumanTone et al. (but for most use cases, fixing the flagged patterns by hand or via the LLM produces better results).

License

MIT — see [LICENSE](LICENSE).

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.