Writing Style Checker
Überblick
Beschreibung vom Entwickler (englisches Original)
Prose linter + AI-slop detector: weasel words, passive voice, hedging, and research-cited AI tells
Die drei Säulen von PopNx MCP
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
- Stimmen der NutzeriNoch keine BewertungenBewertungen starten in einem späteren Schritt zusammen mit Benutzerkonten
- Unsere Basischecksi1 von 1 bestandenAnhand öffentlicher Informationen geprüft; Code noch nicht gescannt
- NutzungiGanz neu↓ 75/Wo. · ★ –
Was du damit machen kannst
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
- Verbindung: Computer oder Cloud
- Transport: stdio, Streamable HTTP
- Kategorie: Suche & KI-Gedächtnis
Installation
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Bevor du installierst
- Basischecks: 1 von 1 bestanden
- Läuft auf dem Server des Entwicklers: Was du fragst, läuft über dessen Server.
- Die Registry nennt keinen Schlüssel zum Eintragen.
Du brauchst
- Läuft in der CloudNichts zu installieren; die Verbindung läuft übers Internet
- npmNode.js installiert (für den Befehl npx)
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:
- Öffne Settings → Connectors
- Tippe auf Add custom connector
- Füge die Adresse unten ein und tippe auf Add
- Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
https://wsc.theserverless.dev/mcpOder führ ihn auf deinem Computer aus
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"wsc": {
"command": "npx",
"args": [
"-y",
"wsc-mcp"
]
}
}
}Führe das in deinem Terminal aus
claude mcp add --transport http wsc https://wsc.theserverless.dev/mcpOder führ ihn auf deinem Computer aus
claude mcp add wsc -- npx -y wsc-mcpOder kopier die Einstellungen selbst
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"wsc": {
"url": "https://wsc.theserverless.dev/mcp"
}
}
}Oder führ ihn auf deinem Computer aus
Oder kopier die Einstellungen selbst
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"wsc": {
"command": "npx",
"args": [
"-y",
"wsc-mcp"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Oder kopier die Einstellungen selbst
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"wsc": {
"type": "http",
"url": "https://wsc.theserverless.dev/mcp"
}
}
}Oder führ ihn auf deinem Computer aus
Oder kopier die Einstellungen selbst
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"wsc": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"wsc-mcp"
]
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
ChatGPT verbindet sich nur mit Servern im Internet:
- Öffne ChatGPT im Web → Settings → Connectors (Apps)
- Tippe auf Create oder Add (bei manchen Tarifen musst du zuerst Developer mode unter Advanced einschalten)
- Füge die Adresse unten ein, gib ihr einen Namen und speichere
- Wenn eine Anmeldung verlangt wird, melde dich beim Dienst des Entwicklers an
https://wsc.theserverless.dev/mcpMenünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Was er kann
Die Tool-Liste dieses Servers haben wir noch nicht gelesen; wir prüfen die Endpunkte reihum.
Basischecksi
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 9. Nov. 2026
- ✓ Bestanden
Entwickler passt zum Repo
Der Registry-Name wurde mit dem GitHub-Konto theserverlessdev bestätigt, dem das Repo gehört
- … Noch nicht geprüft
Wird noch gepflegt
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Hat eine Lizenz
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Endpunkt antwortet
Noch nicht geprüft; wir prüfen die Endpunkte reihum
- … Noch nicht geprüft
Anmeldung mit OAuth
Noch nicht geprüft; wir prüfen die Endpunkte reihum
- … Noch nicht geprüft
Keine versteckten Anweisungen in Tool-Beschreibungen
Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen
Im Vergleich mit anderen in Suche & KI-Gedächtnisi
- Mehr Sterne als 0 % der anderen 5745 Server in dieser Kategorie
- Neuer in der Registry veröffentlicht als 22 % der anderen 5745 Server in dieser Kategorie
- Basischecks gleich gut wie oder besser als bei 100 % der anderen 5745 Server in dieser Kategorie
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Häufige Fragen
Ist Writing Style Checker sicher?
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Welche Schlüssel oder Codes braucht er?
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Läuft er auf meinem Computer oder in der Cloud?
Beides geht: Installiere ihn auf deinem Computer oder verbinde dich mit der Cloud-Version.
Wird er noch gepflegt?
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2.2.2) kam vor 4 Monaten in die Registry.
Welche Apps können ihn nutzen?
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
Was kann ich stattdessen nutzen?
In derselben Kategorie: Context7, Codebase Memory, Exa
Alternativen
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Codebase Memory
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Exa
Connect AI agents to Exa for web search, content fetching, and multi-step research.
README vom Entwickler
README öffnen
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
Writing Style Checker
A prose linter and AI-slop detector. WSC finds AI tells — words, phrases, and sentence structures overrepresented in AI-generated text, each flag backed by a published corpus study. It also catches classic writing issues: weasel words, passive voice, duplicate words, long sentences, nominalizations, hedging, and filler adverbs. Available as a web editor, HTTP API, MCP server, CLI, and GitHub Action.
[Live: wsc.theserverless.dev](https://wsc.theserverless.dev)
Features
- Web Editor - Real-time highlighting with inline fix buttons for all 8 detectors
- HTTP API - POST text with optional config, retrieve structured JSON responses
- MCP Server (Remote) - Connect AI assistants via Streamable HTTP transport
- MCP Server (Local) - Stdio-based server via
wsc-mcpon npm - CLI - Check files from the command line via
wsc-lint - GitHub Action - Run checks in CI with
::warningannotations - Configurable - Customize detectors with
.wscrc.jsonfiles
What WSC is (and isn't)
WSC flags patterns that research on AI-generated text finds overrepresented, and cites a source for every flag. It does not, and cannot, prove authorship. Classifier-based detectors carry a documented false-accusation risk: a Stanford study found that seven of them misflagged 61% of essays written by non-native English speakers. WSC avoids that trap by design — every flag is a specific, explainable edit that improves the text no matter who, or what, wrote it.
Detection Rules
| Detector | Items | Description |
|---|---|---|
| Weasel Words | 95 words/phrases | Vague terms like "very", "basically", "arguably", "numerous" |
| Passive Voice | 260 irregular verbs | Auxiliary verbs + past participles (regular -ed + irregular) |
| Duplicate Words | — | Adjacent repeated words across whitespace, case-insensitive |
| Long Sentences | threshold: 30 words | Sentences exceeding a configurable word count |
| Nominalizations | 245 word pairs | Nouns replaceable with verbs ("utilization" → "use") |
| Hedging | 100 phrases | Phrases that weaken assertions ("I think", "it seems") |
| Filler Adverbs | 139 words | Adverbs adding emphasis without substance ("totally", "utterly") |
| AI Tells | 98 words (+111 inflected forms) + 83 phrases + 12 structural patterns | Words, phrases, and sentence constructions overrepresented in AI-generated text (delve, rich tapestry, It's not just X — it's Y) |
Word lists sourced from Matt Might's shell scripts and expanded with additional entries. AI tells draw on published corpus studies: Kobak et al. 2025 (Science Advances), Juzek & Ward 2025 (COLING), Liang et al. 2024 (Stanford), and Reinhart et al. 2025 (PNAS). Wikipedia's editor-maintained Signs of AI writing catalogue and AI-detection vendor reports round out the sources.
Configuration
Create a .wscrc.json to customize detectors. All tools (API, MCP, CLI) support it.
{
"$schema": "https://wsc.theserverless.dev/schema.json", "ignore": ["CHANGELOG.md", "docs/vendor/**"], "detectors": { "weaselWords": { "enabled": true, "add": ["synergy", "leverage"], "remove": ["very"] }, "longSentences": { "maxWords": 25 }, "adverbs": { "enabled": false } } }
Every field is optional. Missing fields use defaults. JSON Schema provides autocompletion in VS Code.
ignore is an array of glob patterns relative to the working directory. The GitHub Action uses the repository root. The CLI adds these patterns to its built-in **/node_modules/** and **/.git/** skips, together with the Action exclude input and the CLI --ignore flag.
API Usage
POST /api/check
Analyze text for writing style issues. Accepts optional config object.
curl -X POST https://wsc.theserverless.dev/api/check \
-H "Content-Type: application/json" \ -d '{"text":"The code was written very quickly."}'
Response:
{
"summary": { "total": 2, "weaselWords": 1, "passiveVoice": 1, "duplicateWords": 0, "longSentences": 0, "nominalizations": 0, "hedging": 0, "adverbs": 0 }, "issues": { "weaselWords": [{ "word": "very", "index": 21, "line": 1, "column": 22, "context": "..." }], "passiveVoice": [{ "phrase": "was written", "index": 9, "line": 1, "column": 10, "context": "..." }], "duplicateWords": [], "longSentences": [], "nominalizations": [], "hedging": [], "adverbs": [] }, "meta": { "characterCount": 34, "wordCount": 6, "sentenceCount": 1, "processingTimeMs": 2 } }
With config:
curl -X POST https://wsc.theserverless.dev/api/check \
-H "Content-Type: application/json" \ -d '{"text":"The code was written very quickly.", "config":{"detectors":{"weaselWords":{"enabled":false}}}}'
GET /api/check
Returns API documentation as JSON.
GET /api/detectors
Returns the list of all 8 detectors with descriptions, configurability, and word counts.
GET /health
Runs a smoke test with known text and returns {"status":"healthy"} or 503.
Limits: Max 100,000 characters per request. CORS enabled for all origins.
MCP Server
The Writing Style Checker is available as an MCP server, letting AI assistants check your writing directly.
Tools
| Tool | Description |
|---|---|
check_text | Analyze text for all 8 writing style issues. Accepts optional config. |
fix_duplicates | Remove duplicate adjacent words and return cleaned text |
list_word_lists | Return info about all detector word lists |
check_file | *(Local only)* Read a file from disk and analyze it. Auto-discovers .wscrc.json. |
Remote MCP Server
Connect any MCP client to the hosted server - no installation required.
{
"mcpServers": { "writing-style-checker": { "type": "url", "url": "https://wsc.theserverless.dev/mcp" } } }
Local MCP Server (stdio)
Install via npm for local usage. Includes check_file for analyzing files on disk with auto-discovery of .wscrc.json.
npx wsc-mcp
Claude Desktop / Claude Code config:
{
"mcpServers": { "writing-style-checker": { "command": "npx", "args": ["wsc-mcp"] } } }
See the wsc-mcp npm page for full documentation.
CLI
Check files from the command line.
# Check all markdown files
npx wsc-lint check "**/*.md"
Read from stdin
echo "The code was written very quickly." | npx wsc-lint check --stdin
JSON output for scripting
npx wsc-lint check "**/*.md" --format json
GitHub Actions annotations
npx wsc-lint check "**/*.md" --format github
Create a config file
npx wsc-lint init
See the wsc-lint README for full documentation.
GitHub Action
- uses: theserverlessdev/wsc@v1
with: files: '**/*.md' max-warnings: 20 exclude: | CHANGELOG.md vendor/**
| Input | Default | Description |
|---|---|---|
files | **/*.md | Glob pattern for files to check |
config | — | Path to .wscrc.json config file |
max-warnings | unlimited | Max warnings before failing |
only-changed | false | On a pull request, check changed files that match files. If none match, skip the check. Other events check files. |
exclude | — | Glob patterns to skip. Separate with a comma or a new line. Adds to config ignore. |
Privacy
The web editor runs in your browser - we never send text to any server. The API and MCP endpoints only process text you explicitly send to them.
Project Structure
.
├── src/ │ ├── core/ # Shared detection engine │ │ ├── detector.ts # 8 detection algorithms │ │ ├── words.ts # Word/phrase lists (800+ entries) │ │ ├── config.ts # Config types, merging, validation │ │ ├── config-node.ts # Node-only: file loading, discovery │ │ ├── analyzer.ts # Unified analyzeText() entry point │ │ └── index.ts # Public API exports │ ├── docs/ # Documentation content (Markdown files) │ ├── mcp/ │ │ └── handler.ts # MCP JSON-RPC 2.0 handler │ ├── lib/ │ │ ├── App.svelte # Main editor page component │ │ ├── stores/theme.ts # Theme store (light/dark/system) │ │ └── components/ # UI components (StatsBar, ConfigPanel, etc.) │ ├── routes/ │ │ ├── +layout.svelte # Shared layout (header, nav, footer) │ │ ├── api/check/+server.ts # HTTP API endpoint │ │ ├── mcp/+server.ts # MCP endpoint │ │ ├── health/+server.ts # Health check endpoint │ │ ├── docs/+page.svelte # Documentation page │ │ └── words/+page.svelte # Word library browser │ └── styles/ │ └── main.scss # Global styles (light + dark themes) ├── mcp-server/ # Standalone stdio MCP server (npm: wsc-mcp) ├── cli/ # CLI tool (npm: wsc-lint) ├── action/ # GitHub Action (composite) ├── tests/ # 341 tests across 18 files ├── static/ │ ├── schema.json # JSON Schema for .wscrc.json │ ├── llms.txt # AI/LLM discovery file │ └── llms-full.txt # Detailed LLM context ├── wrangler.toml # Cloudflare Workers config └── svelte.config.js # SvelteKit configuration
Local Development
git clone https://github.com/theserverlessdev/wsc.git
cd wsc npm install npm run dev
Visit http://localhost:5173. The API is at /api/check, MCP at /mcp, health at /health.
Commands
| Command | Description |
|---|---|
npm run dev | Start dev server |
npm run build | Build for production |
npm run check | Type check with svelte-check |
npm test | Run all 341 tests |
npm run test:coverage | Coverage report |
Deployment
Deployed as a Cloudflare Worker at wsc.theserverless.dev.
npm run build
npx wrangler deploy
Contributing
See CONTRIBUTING.md for development setup, testing, and pull request guidelines.
For substantial changes, please open an issue first.
Acknowledgements
- Matt Might for the original shell scripts
- Built with SvelteKit and Svelte 5, deployed on Cloudflare Workers
- Logo made with DiffusionBee
License
MIT