@brutalist/mcp 0.1.3 â 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +206 -49
- package/dist/brutalist-server.d.ts +3 -3
- package/dist/brutalist-server.d.ts.map +1 -1
- package/dist/brutalist-server.js +376 -207
- package/dist/brutalist-server.js.map +1 -1
- package/dist/cli-agents.d.ts +57 -0
- package/dist/cli-agents.d.ts.map +1 -0
- package/dist/cli-agents.js +497 -0
- package/dist/cli-agents.js.map +1 -0
- package/dist/constants.d.ts +3 -9
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +4 -13
- package/dist/constants.js.map +1 -1
- package/dist/logger.js +2 -2
- package/dist/logger.js.map +1 -1
- package/dist/types/brutalist.d.ts +35 -15
- package/dist/types/brutalist.d.ts.map +1 -1
- package/dist/utils.d.ts +11 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +25 -0
- package/dist/utils.js.map +1 -0
- package/package.json +15 -8
- package/dist/model-fetcher.d.ts +0 -14
- package/dist/model-fetcher.d.ts.map +0 -1
- package/dist/model-fetcher.js +0 -71
- package/dist/model-fetcher.js.map +0 -1
- package/dist/openrouter.d.ts +0 -14
- package/dist/openrouter.d.ts.map +0 -1
- package/dist/openrouter.js +0 -123
- package/dist/openrouter.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,83 +1,240 @@
|
|
|
1
|
-
# Brutalist MCP
|
|
1
|
+
# Brutalist MCP ð
|
|
2
2
|
|
|
3
|
-
Your
|
|
3
|
+
Your startup will fail. Your architecture will collapse. Your code is a security nightmare.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
But this time, you'll know *why* before users do.
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## Deploy AI Critics That Don't Lie
|
|
8
|
+
|
|
9
|
+
Every AI tells you what you want to hear. This one tells you what you need to know.
|
|
10
|
+
|
|
11
|
+
Three brutal CLI agents. Zero sugar-coating. Maximum carnage.
|
|
12
|
+
|
|
13
|
+
Three brutal CLI agents that can analyze anything. Each agent brings different perspectives to demolish your work from every angle.
|
|
14
|
+
|
|
15
|
+
Real file-system analysis. Actual brutal prompts. No participation trophies.
|
|
16
|
+
|
|
17
|
+
## Brutalist Workflows
|
|
18
|
+
|
|
19
|
+
### ð **Codebase Destruction**
|
|
20
|
+
|
|
21
|
+
> Analyze actual files in your repository for security holes, performance disasters, and architectural nightmares.
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Demolish your entire codebase
|
|
25
|
+
roast_codebase "/path/to/your/project"
|
|
26
|
+
|
|
27
|
+
# Target specific modules for focused brutality
|
|
28
|
+
roast_codebase "/src/auth" # Authentication vulnerabilities
|
|
29
|
+
roast_codebase "/src/api/handlers" # API endpoint disasters
|
|
30
|
+
roast_codebase "/components" # React component chaos
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
### ðĄ **Idea Obliteration**
|
|
36
|
+
|
|
37
|
+
> Reality-check your startup dreams, product concepts, and technical decisions.
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Startup idea destruction
|
|
41
|
+
roast_idea "A social network for developers to share code snippets"
|
|
42
|
+
|
|
43
|
+
# Technical decision analysis
|
|
44
|
+
roast_idea "Migrating our monolith to microservices with Kubernetes"
|
|
45
|
+
|
|
46
|
+
# Product feature validation
|
|
47
|
+
roast_idea "Adding AI-powered code suggestions to our IDE"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
### ðïļ **Architecture Annihilation**
|
|
53
|
+
|
|
54
|
+
> Find every scaling bottleneck, cost explosion, and operational nightmare in your system design.
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# System architecture review
|
|
58
|
+
roast_architecture "Microservices with event sourcing and CQRS"
|
|
59
|
+
|
|
60
|
+
# Infrastructure design analysis
|
|
61
|
+
roast_architecture """
|
|
62
|
+
API Gateway â Load Balancer â 3 Node.js services â PostgreSQL
|
|
63
|
+
Redis for caching, Docker containers on AWS ECS
|
|
64
|
+
"""
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### ð **Security Demolition**
|
|
70
|
+
|
|
71
|
+
> Expose authentication bypasses, injection vulnerabilities, and data leak opportunities.
|
|
8
72
|
|
|
9
73
|
```bash
|
|
10
|
-
#
|
|
11
|
-
|
|
74
|
+
# Authentication system analysis
|
|
75
|
+
roast_security "JWT tokens with user roles in localStorage"
|
|
76
|
+
|
|
77
|
+
# API security review
|
|
78
|
+
roast_security "GraphQL API with dynamic queries and no rate limiting"
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
12
82
|
|
|
13
|
-
|
|
14
|
-
roast_code(code="authentication.py", models=["google/gemini-2.5-pro", "anthropic/claude-3.5-sonnet"])
|
|
83
|
+
### ðĪš **Multi-Agent Warfare**
|
|
15
84
|
|
|
16
|
-
|
|
17
|
-
roast_idea "We're building a marketplace for..."
|
|
85
|
+
> Deploy multiple CLI agents in adversarial combat for maximum destruction.
|
|
18
86
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
87
|
+
```bash
|
|
88
|
+
# Technical decision debate
|
|
89
|
+
roast_cli_debate "Should we use TypeScript or Go for this API?"
|
|
22
90
|
|
|
23
|
-
#
|
|
24
|
-
|
|
91
|
+
# Architecture comparison battle
|
|
92
|
+
roast_cli_debate "Microservices vs Monolith for our e-commerce platform"
|
|
25
93
|
```
|
|
26
94
|
|
|
27
|
-
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
### ð ïļ **Meta Commands**
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Check which CLI agents are available
|
|
101
|
+
cli_agent_roster()
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## How It Works
|
|
105
|
+
|
|
106
|
+
This MCP server orchestrates brutal feedback from locally installed CLI agents:
|
|
107
|
+
- **Claude Code CLI** - Anthropic's code assistant with brutal system prompts
|
|
108
|
+
- **Codex CLI** - OpenAI's code-focused model for technical criticism
|
|
109
|
+
- **Gemini CLI** - Google's model for architectural and system analysis
|
|
110
|
+
|
|
111
|
+
Each agent runs locally on your machine with custom brutal prompts to find real problems before production fails.
|
|
112
|
+
|
|
113
|
+
**âąïļ Analysis Timeout:** 25 minutes default - thorough analysis takes time to find real issues. Complex codebases and architectural reviews need deep analysis to catch subtle problems that quick scans miss.
|
|
114
|
+
|
|
115
|
+
## Setup
|
|
116
|
+
|
|
117
|
+
### Prerequisites
|
|
118
|
+
|
|
119
|
+
Install at least one CLI agent:
|
|
120
|
+
- **Claude Code**: `npm install -g claude` (or via Claude desktop app)
|
|
121
|
+
- **Codex**: Install from [OpenAI Codex](https://github.com/openai/codex-cli)
|
|
122
|
+
- **Gemini**: `npm install -g @google/gemini-cli` or authenticate via `gemini auth`
|
|
123
|
+
|
|
124
|
+
<details>
|
|
125
|
+
<summary><strong>Claude Code</strong> â One-liner</summary>
|
|
28
126
|
|
|
29
127
|
```bash
|
|
30
|
-
|
|
31
|
-
|
|
128
|
+
claude mcp add brutalist --scope user -- npx -y @brutalist/mcp
|
|
129
|
+
```
|
|
130
|
+
</details>
|
|
131
|
+
|
|
132
|
+
<details>
|
|
133
|
+
<summary><strong>VS Code / Cline</strong> â Manual config</summary>
|
|
32
134
|
|
|
33
|
-
|
|
34
|
-
|
|
135
|
+
```bash
|
|
136
|
+
code --add-mcp '{"name":"brutalist","command":"npx","args":["-y","@brutalist/mcp"]}'
|
|
137
|
+
```
|
|
138
|
+
</details>
|
|
35
139
|
|
|
36
|
-
|
|
37
|
-
|
|
140
|
+
<details>
|
|
141
|
+
<summary><strong>Gemini CLI</strong> â One-liner</summary>
|
|
38
142
|
|
|
39
|
-
|
|
40
|
-
|
|
143
|
+
```bash
|
|
144
|
+
gemini mcp add brutalist -- npx -y @brutalist/mcp
|
|
41
145
|
```
|
|
146
|
+
</details>
|
|
147
|
+
|
|
148
|
+
<details>
|
|
149
|
+
<summary><strong>Cursor</strong> â Manual config</summary>
|
|
42
150
|
|
|
43
|
-
**
|
|
44
|
-
**Models**: 325+ models dynamically fetched from OpenRouter. Always current.
|
|
151
|
+
Add to `~/.cursor/mcp.json` or use **Settings â MCP & Integrations**
|
|
45
152
|
|
|
46
|
-
|
|
153
|
+
```json
|
|
154
|
+
{
|
|
155
|
+
"brutalist": {
|
|
156
|
+
"command": "npx",
|
|
157
|
+
"args": ["-y", "@brutalist/mcp"]
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
```
|
|
161
|
+
</details>
|
|
47
162
|
|
|
48
|
-
|
|
163
|
+
<details>
|
|
164
|
+
<summary><strong>Windsurf</strong> â Manual config</summary>
|
|
49
165
|
|
|
50
|
-
|
|
166
|
+
Add to `~/.codeium/windsurf/mcp_config.json` or use **Plugin Store**
|
|
167
|
+
|
|
168
|
+
```json
|
|
169
|
+
{
|
|
170
|
+
"brutalist": {
|
|
171
|
+
"command": "npx",
|
|
172
|
+
"args": ["-y", "@brutalist/mcp"]
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
```
|
|
176
|
+
</details>
|
|
177
|
+
|
|
178
|
+
## Tools
|
|
179
|
+
|
|
180
|
+
### Code & Architecture Analysis
|
|
181
|
+
| Tool | What gets destroyed | CLI Agents Used |
|
|
182
|
+
|------|-------------------|-----------------|
|
|
183
|
+
| `roast_codebase` | Security holes, performance disasters, maintainability nightmares in actual files | All available |
|
|
184
|
+
| `roast_file_structure` | Directory chaos, naming disasters, structural nightmares | All available |
|
|
185
|
+
| `roast_dependencies` | Version conflicts, security vulns, dependency hell | All available |
|
|
186
|
+
| `roast_git_history` | Commit disasters, branching chaos, collaboration failures | All available |
|
|
187
|
+
| `roast_test_coverage` | Testing gaps, quality blind spots, coverage lies | All available |
|
|
188
|
+
|
|
189
|
+
### Conceptual Analysis
|
|
190
|
+
| Tool | What gets destroyed | CLI Agents Used |
|
|
191
|
+
|------|-------------------|-----------------|
|
|
192
|
+
| `roast_idea` | Why imagination fails to become reality | All available |
|
|
193
|
+
| `roast_architecture` | Scaling failures, cost explosions, operational complexity | All available |
|
|
194
|
+
| `roast_research` | Methodological flaws, irreproducible results, statistical crimes | All available |
|
|
195
|
+
| `roast_security` | Attack vectors, authentication bypasses, data leaks | All available |
|
|
196
|
+
| `roast_product` | UX disasters, adoption barriers, user abandonment | All available |
|
|
197
|
+
| `roast_infrastructure` | Single points of failure, hidden costs, 3AM outages | All available |
|
|
198
|
+
|
|
199
|
+
### Meta Tools
|
|
200
|
+
| Tool | What it does |
|
|
201
|
+
|------|--------------|
|
|
202
|
+
| `roast_cli_debate` | Multiple CLI agents argue until truth emerges |
|
|
203
|
+
| `cli_agent_roster` | Shows which CLI agents are available on your system |
|
|
204
|
+
|
|
205
|
+
## CLI Agent Selection
|
|
206
|
+
|
|
207
|
+
The system automatically detects and uses available CLI agents:
|
|
51
208
|
|
|
52
209
|
```bash
|
|
53
|
-
#
|
|
54
|
-
|
|
210
|
+
# Use specific CLI agent
|
|
211
|
+
roast_codebase(targetPath="/src", preferredCLI="claude")
|
|
212
|
+
|
|
213
|
+
# Let system choose based on analysis type
|
|
214
|
+
roast_security "/auth/module" # Prefers Codex for security
|
|
55
215
|
|
|
56
|
-
#
|
|
57
|
-
roast_idea "..." #
|
|
216
|
+
# Force multi-agent analysis (default)
|
|
217
|
+
roast_idea "..." # All available agents analyze in parallel
|
|
58
218
|
```
|
|
59
219
|
|
|
60
|
-
|
|
220
|
+
### Smart Selection Rules
|
|
61
221
|
|
|
62
|
-
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
- **`roast_security`** â Attack vectors, authentication bypasses, data leaks
|
|
68
|
-
- **`roast_product`** â UX disasters, adoption barriers, user abandonment
|
|
69
|
-
- **`roast_infrastructure`** â Single points of failure, hidden costs, 3AM outages
|
|
70
|
-
- **`roast_debate`** â Multiple models argue until truth emerges
|
|
71
|
-
- **`model_roster`** â Browse and search 325+ available critics
|
|
222
|
+
Different CLI agents excel at different analysis types:
|
|
223
|
+
- **Code review**: Claude > Codex > Gemini
|
|
224
|
+
- **Architecture**: Gemini > Claude > Codex
|
|
225
|
+
- **Security**: Codex > Claude > Gemini
|
|
226
|
+
- **Research**: Claude > Gemini > Codex
|
|
72
227
|
|
|
73
|
-
##
|
|
228
|
+
## Why This Works
|
|
74
229
|
|
|
75
230
|
**Problem:** AI optimizes for engagement, not truth.
|
|
76
|
-
**Solution:** Deploy multiple
|
|
77
|
-
**Result:** Brutal honesty before expensive failures.
|
|
231
|
+
**Solution:** Deploy multiple local CLI agents with adversarial perspectives.
|
|
232
|
+
**Result:** Brutal honesty through systematic destruction before expensive failures.
|
|
233
|
+
|
|
234
|
+
Your code will fail. Your startup will struggle. Better to learn this from brutal CLI agents than from production outages at 3AM.
|
|
78
235
|
|
|
79
|
-
|
|
236
|
+
The only AI that prevents disasters instead of causing them.
|
|
80
237
|
|
|
81
238
|
---
|
|
82
239
|
|
|
83
|
-
|
|
240
|
+
Local CLI agents â Brutal system prompts â Parallel execution â Adversarial synthesis â Production survival
|
|
@@ -3,13 +3,13 @@ import { BrutalistServerConfig } from './types/brutalist.js';
|
|
|
3
3
|
export declare class BrutalistServer {
|
|
4
4
|
server: McpServer;
|
|
5
5
|
config: BrutalistServerConfig;
|
|
6
|
-
private
|
|
6
|
+
private cliOrchestrator;
|
|
7
7
|
constructor(config?: BrutalistServerConfig);
|
|
8
8
|
start(): Promise<void>;
|
|
9
9
|
private registerTools;
|
|
10
|
-
private
|
|
11
|
-
private executeDebate;
|
|
10
|
+
private executeCLIDebate;
|
|
12
11
|
private synthesizeDebate;
|
|
12
|
+
private executeBrutalistAnalysis;
|
|
13
13
|
private formatToolResponse;
|
|
14
14
|
private formatErrorResponse;
|
|
15
15
|
private handleToolExecution;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brutalist-server.d.ts","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE,OAAO,EACL,qBAAqB,EAItB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"brutalist-server.d.ts","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE,OAAO,EACL,qBAAqB,EAItB,MAAM,sBAAsB,CAAC;AAI9B,qBAAa,eAAe;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,qBAAqB,CAAC;IACrC,OAAO,CAAC,eAAe,CAAuB;gBAElC,MAAM,GAAE,qBAA0B;IAsBxC,KAAK;IAWX,OAAO,CAAC,aAAa;YA6cP,gBAAgB;IAsE9B,OAAO,CAAC,gBAAgB;YA4CV,wBAAwB;IAyEtC,OAAO,CAAC,kBAAkB;IAgD1B,OAAO,CAAC,mBAAmB;YA8Bb,mBAAmB;CAUlC"}
|