slop-detector
v1.2.0
Published
AI-generated text detection tool using the EQBench SLOP score algorithm
Maintainers
Readme
SLOP Detector

“The SLOP Meter doesn’t measure truth or beauty. It measures how loudly your sentences clap for themselves. When the needle bursts through the dial and a small goblin emerges to applaud, you are probably no longer writing—you are performing.”
Detect AI-like writing patterns in creative prose. Returns a 0-100 score where higher = more AI-like.
SLOP Detector is inspired by the original slop-score project and is designed for creative writing analysis, not as a general-purpose AI detection system. It currently supports English text only.
Quick Start
npx -y slop-detectorThis starts an MCP server. Add it to your AI assistant:
Claude Code:
claude mcp add slop-detector -- npx -y slop-detectorCodex:
codex mcp add slop-detector -- npx -y slop-detectorClaude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"slop-detector": {
"command": "npx",
"args": ["-y", "slop-detector"]
}
}
}What It Detects
| Component | Weight | What it finds | |-----------|--------|---------------| | Slop Words | 60% | Overused words like delve, tapestry, paradigm, leverage | | Contrast Patterns | 25% | "Not X but Y" structures that LLMs love | | Trigrams | 15% | Common 3-word phrases like "it is important" |
Score Interpretation
| Score | Meaning | |-------|---------| | 0-20 | Human-like writing | | 20-40 | Mostly human, some AI patterns | | 40-60 | Mixed, unclear origin | | 60-80 | Likely AI-generated | | 80-100 | Strong AI signature |
Rule of thumb: Scores above 30 are suspicious.
Usage
As an MCP Tool
The score_text tool accepts text and returns:
slopScore: 0-100 scorewordCount,charCount: Text statisticsmetrics: Detailed breakdown (words/trigrams/patterns per 1k)
Command Line
# Install and build
npm install && npm run build
# Score a file
node dist/cli.js article.txt
# Score from stdin
echo "Let's delve into this tapestry of ideas" | node dist/cli.js -
pbpaste | node dist/cli.js - # macOS clipboardAs a Library
import { slopScoreService } from 'slop-detector';
const result = await slopScoreService.computeScoreFromText(text, 'en');
console.log(result.slopScore); // 42.5Example Output
=== SLOP Score Analysis ===
Final Score: 67.3/100
Word Count: 342
Top Slop Words:
"delve": 3×
"tapestry": 2×
Contrast Patterns Found:
"not just a product but a comprehensive solution"
Interpretation: Likely AI-generated with some editingHow It Works
See docs/IMPLEMENTATION.md for:
- Detailed algorithm explanation
- Project structure
- How to add custom patterns
Development
npm install # Install dependencies
npm run build # Compile TypeScript
npm test # Run tests
npm run mcp # Start MCP server locallyRequirements
- Node.js 18+
License
MIT
Credits
Based on slop-score by Samuel J. Paech and the EQBench methodology.
