deslop-mcp
An MCP (Model Context Protocol) server that detects and removes AI-generated code slop patterns.
Works with Cursor, Claude Desktop, Claude Code, and any MCP-compatible client.
What is "Slop"?
AI-generated code often includes patterns that hurt maintainability:
- Comment slop: Comments that restate what code does ("This function gets the user")
- Verbose logging: Entry/exit logs, debug statements left in production
- Unnecessary error handling: Try-catch that only logs and re-throws
- Defensive overkill: Redundant null checks in TypeScript
- Async misuse:
asyncfunctions with noawait - Unused imports: Dead code from refactoring
Installation
Option 1: Clone from GitHub
git clone https://github.com/YOUR_USERNAME/deslop-mcp.git
cd deslop-mcp
npm install
npm run build
Option 2: npm (if published)
npm install -g deslop-mcp
Configuration
For Cursor
Add to your Cursor MCP settings (~/.cursor/mcp.json or via Settings > MCP):
{
"mcpServers": {
"deslop": {
"command": "node",
"args": ["/path/to/deslop-mcp/dist/index.js"]
}
}
}
For Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"deslop": {
"command": "node",
"args": ["/path/to/deslop-mcp/dist/index.js"]
}
}
}
For Claude Code
Add to your Claude Code MCP settings:
{
"mcpServers": {
"deslop": {
"command": "node",
"args": ["/path/to/deslop-mcp/dist/index.js"]
}
}
}
Tools
deslop_analyze
Analyze code files for slop patterns.
deslop_analyze({ path: "./src" })
deslop_analyze({ path: "./src/utils/api.ts" })
Returns a detailed report with:
- Issues grouped by category
- Priority levels (high/medium/low)
- Line numbers for each issue
- Auto-fixable indicators
deslop_fix
Automatically fix auto-fixable issues.
deslop_fix({ path: "./src" })
deslop_fix({ path: "./src", dryRun: true }) // Preview without changes
deslop_diff
Analyze only changed files from git.
deslop_diff({}) // Unstaged changes
deslop_diff({ staged: true }) // Staged changes only
Example Output
# Deslop Analysis Report
## Summary
- 🔴 High Priority: 12 issues
- 🟡 Medium Priority: 5 issues
- 🔵 Low Priority: 2 issues
- 🔧 Auto-fixable: 10 issues
## src/services/userService.ts
### 🔴 Comment Slop (3)
- **Line 45**: Comment restates what code does instead of why
`// This function gets the user from the database`
*(auto-fixable)*
- **Line 78**: Commented-out code should be removed
`// const oldUser = await getOldUser(id);`
*(auto-fixable)*
### 🔴 Verbose Logging (2)
- **Line 23**: Debug/trace logging should be removed in production
`console.log("Entering getUserById");`
*(auto-fixable)*
Supported Languages
- TypeScript (.ts, .tsx)
- JavaScript (.js, .jsx)
- Python (.py)
- Java (.java)
- Go (.go)
- Rust (.rs)
Safety
The tool will never remove:
- Error logging that captures actual errors
- Comments explaining business logic or "why"
- License headers or copyright notices
- TODO comments with ticket references
License
MIT
