@jigyasudham/veto 2.7.2 → 2.7.4
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 +32 -0
- package/dist/cli/statusline.d.ts.map +1 -1
- package/dist/cli/statusline.js +21 -2
- package/dist/cli/statusline.js.map +1 -1
- package/dist/cli.js +24 -15
- package/dist/cli.js.map +1 -1
- package/dist/memory/local.d.ts +1 -0
- package/dist/memory/local.d.ts.map +1 -1
- package/dist/memory/local.js +29 -2
- package/dist/memory/local.js.map +1 -1
- package/dist/server/update-check.d.ts.map +1 -1
- package/dist/server/update-check.js +4 -3
- package/dist/server/update-check.js.map +1 -1
- package/package.json +5 -1
- package/server.json +2 -2
- package/.dockerignore +0 -7
- package/.mcp-tools/LICENSE +0 -216
- package/.mcp-tools/README.md +0 -153
- package/.mcp-tools/mcp-publisher.exe +0 -0
- package/Dockerfile +0 -21
- package/LAUNCH-KIT.md +0 -226
- package/MCP-REGISTRY.md +0 -94
- package/VETO-MCP-DIAGNOSTIC.md +0 -73
package/LAUNCH-KIT.md
DELETED
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
# Veto Launch Kit
|
|
2
|
-
|
|
3
|
-
Ready-to-paste copy for distribution. Facts current as of v2.5.0 (npm latest + official MCP Registry).
|
|
4
|
-
Core hook: **93 agentic tools + a 49-specialist agent council for every major AI CLI, at zero extra
|
|
5
|
-
token cost on subscription plans.**
|
|
6
|
-
|
|
7
|
-
> **New in v2.2–2.5 (lead with these — they're the cleanest expression of the "Veto" name):**
|
|
8
|
-
> a guardrail layer that catches AI mistakes before they ship —
|
|
9
|
-
> `veto_dep_verify` (dependency-hallucination guard: flags packages the AI invented),
|
|
10
|
-
> `veto_decisions` (decision-drift enforcement: stops the AI quietly reversing an agreed choice), and
|
|
11
|
-
> `veto_drift_check` (compounding-error circuit breaker). This is the launch's strongest story.
|
|
12
|
-
|
|
13
|
-
Canonical links:
|
|
14
|
-
- npm: https://www.npmjs.com/package/@jigyasudham/veto
|
|
15
|
-
- GitHub: https://github.com/jigyasudham/veto
|
|
16
|
-
- MCP Registry: `io.github.jigyasudham/veto`
|
|
17
|
-
- Quickstart: `npx @jigyasudham/veto@latest init` (avoid `npm i -g` — a global install shadows npx and pins you to an old version)
|
|
18
|
-
|
|
19
|
-
> Honesty guardrail used throughout: "zero cost" = subscription plans (Claude Max, Gemini Advanced…).
|
|
20
|
-
> On API/pay-per-token billing, MCP Sampling calls count toward usage. Keep that caveat in every post.
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## 1. awesome-mcp-servers PR
|
|
25
|
-
|
|
26
|
-
**Repo:** https://github.com/punkpeye/awesome-mcp-servers
|
|
27
|
-
**Section:** `## 🤖 Coding Agents` (alt: `## 🛠️ Developer Tools`)
|
|
28
|
-
**Legend used:** 📇 TypeScript · 🏠 local service · 🍎 macOS · 🪟 Windows · 🐧 Linux
|
|
29
|
-
|
|
30
|
-
**Entry line (alphabetical by `owner/name` within the section):**
|
|
31
|
-
|
|
32
|
-
```
|
|
33
|
-
- [jigyasudham/veto](https://github.com/jigyasudham/veto) 📇 🏠 🍎 🪟 🐧 - 93 agentic tools and a 49-specialist agent council (Lead Dev, Architect, Security…) for every major AI CLI — Claude Code, Codex, Gemini, Cursor, Windsurf. Self-learning router, cross-platform memory, dependency-hallucination + decision-drift guards, deterministic agents that optionally upgrade to LLM. Zero extra token cost on subscriptions.
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
**Submit steps:**
|
|
37
|
-
```bash
|
|
38
|
-
gh repo fork punkpeye/awesome-mcp-servers --clone
|
|
39
|
-
# add the line under the Coding Agents section, keeping alphabetical order
|
|
40
|
-
git checkout -b add-veto
|
|
41
|
-
git commit -am "Add Veto — 93 MCP tools + 49-agent council for every AI CLI"
|
|
42
|
-
git push -u origin add-veto
|
|
43
|
-
gh pr create --repo punkpeye/awesome-mcp-servers --title "Add Veto" --body "Adds Veto: an MCP server giving every major AI CLI a 49-specialist agent council + 93 tools, using existing subscriptions (no API keys). MIT, on the official MCP registry as io.github.jigyasudham/veto."
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## 2. Show HN
|
|
49
|
-
|
|
50
|
-
**Title (submit the GitHub URL as the link):**
|
|
51
|
-
```
|
|
52
|
-
Show HN: Veto – 93 MCP tools and a 49-agent council for every AI CLI
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
**First comment (post immediately after submitting):**
|
|
56
|
-
```
|
|
57
|
-
Hi HN — I built Veto, a single MCP server that plugs into whatever AI CLI you already
|
|
58
|
-
use (Claude Code, Codex, Gemini, Cursor, Windsurf, Zed, JetBrains) and gives it 93 tools
|
|
59
|
-
and a council of 49 specialist agents — code review, security/secrets scanning, a 7-agent
|
|
60
|
-
"should we build this" debate, CI gates, SDD agents, guards that catch dependency
|
|
61
|
-
hallucinations and decision drift, and persistent memory that follows you across CLIs.
|
|
62
|
-
|
|
63
|
-
The design decision I'd most like feedback on: the 42 worker agents are *deterministic
|
|
64
|
-
expert modules by default* (regex/AST secret detection, OWASP/CWE rules, complexity metrics)
|
|
65
|
-
— they run offline and cost zero tokens. When your client supports MCP Sampling they
|
|
66
|
-
optionally upgrade to real LLM reasoning on your existing subscription. So "49 agents" isn't
|
|
67
|
-
49 LLM calls; it's mostly real code with an LLM layer you opt into. The 7-agent Council is
|
|
68
|
-
the LLM-first part (it debates trade-offs before you build) and falls back to a deterministic
|
|
69
|
-
verdict when Sampling isn't available.
|
|
70
|
-
|
|
71
|
-
Cost: on a subscription (Claude Max, Gemini Advanced) the LLM calls ride your existing plan,
|
|
72
|
-
so there's no extra bill. On API/pay-per-token billing those Sampling calls do count — `veto
|
|
73
|
-
init` detects API keys and warns you.
|
|
74
|
-
|
|
75
|
-
It's MIT, on npm and the official MCP registry. Try it: `npx @jigyasudham/veto init`
|
|
76
|
-
|
|
77
|
-
Repo: https://github.com/jigyasudham/veto
|
|
78
|
-
|
|
79
|
-
Happy to go deep on the router (it re-tunes its tier thresholds every 20 recorded outcomes)
|
|
80
|
-
or the cross-CLI memory/handoff. What would you want a tool like this to NOT do?
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
> HN tips: post Tue–Thu ~8–10am ET. Don't ask for upvotes. Reply fast and non-defensively;
|
|
84
|
-
> the skeptical "isn't 93 tools bloat?" question is your best moment — answer it with the
|
|
85
|
-
> deterministic-vs-LLM architecture above.
|
|
86
|
-
|
|
87
|
-
---
|
|
88
|
-
|
|
89
|
-
## 3. Reddit posts (tailored — do NOT cross-post identical text)
|
|
90
|
-
|
|
91
|
-
### r/ClaudeAI (and r/ClaudeCode)
|
|
92
|
-
**Title:** I gave Claude Code a 49-agent council + persistent memory across CLIs — open source, no API keys
|
|
93
|
-
**Body:**
|
|
94
|
-
```
|
|
95
|
-
Veto is an MCP server I've been building that adds 93 tools + 49 specialist agents to Claude
|
|
96
|
-
Code using your existing Claude subscription (no separate API key, no extra token bill on
|
|
97
|
-
Max/Pro).
|
|
98
|
-
|
|
99
|
-
What it actually does day to day:
|
|
100
|
-
- /code-review and security/secrets scans as MCP tools
|
|
101
|
-
- a 7-agent Council (Lead Dev, Architect, Security, Devil's Advocate, Legal, PM, UX) that
|
|
102
|
-
debates a plan before you build it
|
|
103
|
-
- memory that saves your session and restores it in Gemini CLI or Codex if you switch — the
|
|
104
|
-
handoff carries full context
|
|
105
|
-
- guards that catch the AI's own mistakes: dependency-hallucination detection (flags packages
|
|
106
|
-
it invented), decision-drift enforcement (stops it reversing a choice you already made), and a
|
|
107
|
-
compounding-error circuit breaker
|
|
108
|
-
- a self-learning router that re-tunes which model tier handles which task
|
|
109
|
-
|
|
110
|
-
Most worker agents are deterministic (real OWASP/CWE/secret-detection code), and upgrade to
|
|
111
|
-
LLM reasoning via MCP Sampling only when you ask — so it works offline and costs nothing extra
|
|
112
|
-
on a subscription. (API billing: Sampling calls do count; it warns you.)
|
|
113
|
-
|
|
114
|
-
MIT, on npm + the official MCP registry. `npx @jigyasudham/veto init` sets it up for every CLI
|
|
115
|
-
it detects. Repo + GIF: https://github.com/jigyasudham/veto
|
|
116
|
-
|
|
117
|
-
Would love feedback on what's missing.
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
### r/LocalLLaMA
|
|
121
|
-
**Title:** MCP server with 49 agents that run deterministically offline + optional local LLM — MIT
|
|
122
|
-
**Body:**
|
|
123
|
-
```
|
|
124
|
-
Sharing Veto in case it's useful here: it's an MCP server whose 42 worker agents are
|
|
125
|
-
hand-written deterministic modules (AST/regex secret detection, OWASP/CWE rules, complexity
|
|
126
|
-
metrics) — they run offline at zero token cost. There's a local-LLM tool and MCP Sampling
|
|
127
|
-
support, so you can route the reasoning layer to a local model instead of a hosted one.
|
|
128
|
-
|
|
129
|
-
It also does cross-CLI session memory, a multi-agent council debate, CI gates, and secrets
|
|
130
|
-
scanning, and works with Claude Code / Codex / Gemini / Cursor / Windsurf / Zed / JetBrains.
|
|
131
|
-
|
|
132
|
-
MIT, npm + official MCP registry. `npx @jigyasudham/veto init`.
|
|
133
|
-
Repo: https://github.com/jigyasudham/veto — keen on feedback re: wiring it to local backends.
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### r/ChatGPTCoding
|
|
137
|
-
**Title:** Open-source MCP server: 93 tools + 49-agent council that works across Codex, Claude, Gemini & Cursor
|
|
138
|
-
**Body:**
|
|
139
|
-
```
|
|
140
|
-
Veto is an MCP server that gives whatever AI coding CLI you use (Codex, Claude Code, Gemini,
|
|
141
|
-
Cursor, Windsurf) a shared layer: 93 tools, a 49-specialist agent council, code review +
|
|
142
|
-
security scanning, CI gates, and memory that follows you when you switch tools.
|
|
143
|
-
|
|
144
|
-
The agents are deterministic by default and upgrade to LLM reasoning only when your client
|
|
145
|
-
supports it — so on a subscription there's no extra token cost (API billing does count; it
|
|
146
|
-
warns you). MIT, on npm + the official MCP registry.
|
|
147
|
-
|
|
148
|
-
Setup is one command: `npx @jigyasudham/veto init`
|
|
149
|
-
https://github.com/jigyasudham/veto
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
> Reddit tips: post the GIF natively if the sub allows it (huge engagement boost). Lead with
|
|
153
|
-
> utility, not metrics. Reply to every comment in the first 2 hours. Read each sub's
|
|
154
|
-
> self-promo rules first — some require a flair or a ratio of non-promo participation.
|
|
155
|
-
|
|
156
|
-
---
|
|
157
|
-
|
|
158
|
-
## 4. X/Twitter thread
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
1/ I shipped Veto — one MCP server that gives every major AI CLI a council of 49 specialist
|
|
162
|
-
agents + 93 tools, using your existing subscription. No API keys. No extra token bill.
|
|
163
|
-
|
|
164
|
-
Claude Code, Codex, Gemini, Cursor, Windsurf, Zed, JetBrains — same superpowers everywhere.
|
|
165
|
-
[attach veto.gif]
|
|
166
|
-
|
|
167
|
-
2/ The trick: the 42 worker agents are deterministic expert modules by default — real
|
|
168
|
-
OWASP/CWE rules, AST secret detection, complexity metrics. They run offline at zero cost,
|
|
169
|
-
and *optionally* upgrade to LLM reasoning via MCP Sampling on your existing plan.
|
|
170
|
-
|
|
171
|
-
3/ The other 7 are a Council — Lead Dev, Architect, Security, Devil's Advocate, PM, UX, Legal
|
|
172
|
-
— that debates a plan before you build it and hands you a GREEN/YELLOW/RED verdict with the
|
|
173
|
-
actual trade-offs. It's saved me from a few bad calls already.
|
|
174
|
-
|
|
175
|
-
4/ And it remembers. Save a session in Claude Code, restore it in Gemini CLI mid-task — the
|
|
176
|
-
handoff carries full context. Plus a router that re-tunes itself every 20 outcomes.
|
|
177
|
-
|
|
178
|
-
5/ The newest part lives up to the name: a guardrail layer that vetoes the AI's own mistakes —
|
|
179
|
-
catches packages it hallucinated, blocks it from quietly reversing a decision you already made,
|
|
180
|
-
and trips a circuit breaker on compounding errors.
|
|
181
|
-
|
|
182
|
-
6/ MIT. On npm and the official MCP registry.
|
|
183
|
-
|
|
184
|
-
One command: npx @jigyasudham/veto init
|
|
185
|
-
|
|
186
|
-
⭐ https://github.com/jigyasudham/veto
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
> Tag the GIF on tweet 1 (video/gif tweets get far more reach). Quote-tweet it when you hit
|
|
190
|
-
> milestones. Reply to "best MCP servers" threads with tweet 1.
|
|
191
|
-
|
|
192
|
-
---
|
|
193
|
-
|
|
194
|
-
## 5. Directory submission kit (paste into glama.ai / smithery.ai / mcp.so / pulsemcp / mcpservers.org)
|
|
195
|
-
|
|
196
|
-
**Name:** Veto
|
|
197
|
-
**Package:** `@jigyasudham/veto` · **Registry name:** `io.github.jigyasudham/veto`
|
|
198
|
-
**Repo:** https://github.com/jigyasudham/veto · **License:** MIT · **Transport:** stdio
|
|
199
|
-
**Install:** `npx @jigyasudham/veto init`
|
|
200
|
-
**Categories/tags:** mcp, agents, code-review, security, memory, council, router, ci-cd,
|
|
201
|
-
self-learning, multi-agent, developer-tools
|
|
202
|
-
|
|
203
|
-
**Short description (<=100 chars — matches server.json):**
|
|
204
|
-
```
|
|
205
|
-
93 agentic MCP tools + 49 specialist agents for every major AI CLI. Self-learning, no API keys.
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
**One-liner:**
|
|
209
|
-
```
|
|
210
|
-
A council of 49 specialist agents + 93 tools for every AI CLI, using your existing subscription.
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
**Long description:**
|
|
214
|
-
```
|
|
215
|
-
Veto is a local MCP server that gives every major AI CLI — Claude Code, Codex, Gemini,
|
|
216
|
-
Antigravity, Cursor, Windsurf, Zed, JetBrains — a shared layer of 93 agentic tools and 49
|
|
217
|
-
specialist agents. 42 worker agents (across dev, security, memory, research, quality, and
|
|
218
|
-
workflow domains) run as deterministic expert modules by default and optionally upgrade to LLM
|
|
219
|
-
reasoning via MCP Sampling; a 7-agent Council debates trade-offs before you build. It adds code
|
|
220
|
-
review, security and secrets scanning, CI gates, SDD agents, Playwright automation, a guardrail
|
|
221
|
-
layer that catches the AI's own mistakes (dependency-hallucination detection, decision-drift
|
|
222
|
-
enforcement, and a compounding-error circuit breaker), a self-learning router that re-tunes its
|
|
223
|
-
thresholds every 20 outcomes, and persistent memory that hands off your session across CLIs. On
|
|
224
|
-
a subscription it costs nothing extra; on API billing, Sampling calls count and it warns you.
|
|
225
|
-
MIT licensed.
|
|
226
|
-
```
|
package/MCP-REGISTRY.md
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
# Publishing Veto to the official MCP Registry
|
|
2
|
-
|
|
3
|
-
This document is the runbook for listing Veto on the [official Model Context
|
|
4
|
-
Protocol registry](https://registry.modelcontextprotocol.io) so it appears on
|
|
5
|
-
official sources and in registry-backed directories. The registry entry is
|
|
6
|
-
defined by [`server.json`](../server.json) at the repo root.
|
|
7
|
-
|
|
8
|
-
## How the registry verifies ownership
|
|
9
|
-
|
|
10
|
-
The registry does **not** host the package — it points at the npm package
|
|
11
|
-
`@jigyasudham/veto`. To prove we own that package, the registry fetches
|
|
12
|
-
`https://registry.npmjs.org/@jigyasudham/veto/<version>` and reads the
|
|
13
|
-
top-level **`mcpName`** field from the published `package.json`. It must equal
|
|
14
|
-
the `name` in `server.json`:
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
io.github.jigyasudham/veto
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
The `io.github.jigyasudham/*` namespace is owned by proving control of the
|
|
21
|
-
GitHub account `jigyasudham` (interactive OAuth at publish time).
|
|
22
|
-
|
|
23
|
-
> **Critical ordering:** the npm version referenced in `server.json` must
|
|
24
|
-
> already be published **with** the `mcpName` field. The previously published
|
|
25
|
-
> `2.1.1` did **not** have `mcpName`, which is why this listing ships as
|
|
26
|
-
> `2.1.2` — the first npm release that carries it. Always `npm publish` first,
|
|
27
|
-
> then `mcp-publisher publish`.
|
|
28
|
-
|
|
29
|
-
## Files involved
|
|
30
|
-
|
|
31
|
-
| File | Role |
|
|
32
|
-
|---|---|
|
|
33
|
-
| `server.json` | The registry entry (schema `2025-12-11`). Name, description (≤100 chars), repository, and the npm package + stdio transport. |
|
|
34
|
-
| `package.json` | Carries `"mcpName": "io.github.jigyasudham/veto"` — the ownership proof read off npm. Keep its `version` equal to `server.json` `version` and `packages[0].version`. |
|
|
35
|
-
|
|
36
|
-
Keep all three version fields in lockstep on every release:
|
|
37
|
-
`package.json.version` == `server.json.version` == `server.json.packages[0].version`.
|
|
38
|
-
|
|
39
|
-
## Publish steps
|
|
40
|
-
|
|
41
|
-
Run from the repo root, on a clean `main` at the tagged release commit.
|
|
42
|
-
|
|
43
|
-
1. **Publish the npm release that carries `mcpName`** (the user does this — it
|
|
44
|
-
needs npm credentials):
|
|
45
|
-
|
|
46
|
-
```bash
|
|
47
|
-
npm run build
|
|
48
|
-
npm publish --access public # publishes @jigyasudham/veto@2.1.2
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
Verify the field landed on npm:
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
curl -s https://registry.npmjs.org/@jigyasudham/veto/2.1.2 | grep -o '"mcpName":"[^"]*"'
|
|
55
|
-
# -> "mcpName":"io.github.jigyasudham/veto"
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
2. **Install the registry publisher CLI** (`mcp-publisher`). Either download a
|
|
59
|
-
release binary from
|
|
60
|
-
[`modelcontextprotocol/registry`](https://github.com/modelcontextprotocol/registry/releases)
|
|
61
|
-
or build from source (`make publisher` -> `./bin/mcp-publisher`).
|
|
62
|
-
|
|
63
|
-
3. **Authenticate the namespace** with the GitHub account `jigyasudham`
|
|
64
|
-
(interactive — opens a browser):
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
mcp-publisher login github
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
4. **Validate and publish** the entry (reads `server.json` from the cwd):
|
|
71
|
-
|
|
72
|
-
```bash
|
|
73
|
-
mcp-publisher publish
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
The registry re-runs npm ownership validation server-side; if step 1 was
|
|
77
|
-
skipped it fails with *"NPM package is missing required 'mcpName' field"*.
|
|
78
|
-
|
|
79
|
-
5. **Confirm the listing:**
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
curl -s "https://registry.modelcontextprotocol.io/v0/servers?search=veto" | grep -o '"name":"io.github.jigyasudham/veto"'
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## Updating the listing on future releases
|
|
86
|
-
|
|
87
|
-
For each new release: bump `version` in `package.json` **and** both version
|
|
88
|
-
fields in `server.json`, `npm publish`, then re-run `mcp-publisher publish`.
|
|
89
|
-
The `mcpName` field never changes.
|
|
90
|
-
|
|
91
|
-
## Lifecycle
|
|
92
|
-
|
|
93
|
-
Use `mcp-publisher status` to move the server between `active`, `deprecated`,
|
|
94
|
-
and `deleted` states if needed.
|
package/VETO-MCP-DIAGNOSTIC.md
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
# Veto MCP — connection failure diagnostic
|
|
2
|
-
|
|
3
|
-
Run these in the **failing VS Code window's project terminal** (the project where the
|
|
4
|
-
`veto_*` tools won't load). Paste all output back.
|
|
5
|
-
|
|
6
|
-
Context: Veto's server imports `node:sqlite` at startup, which needs **Node >= 22.5.0**.
|
|
7
|
-
If that window resolves an older Node, the server throws and exits immediately — the exact
|
|
8
|
-
"launches but never runs the stdio loop" symptom. These four checks pin down the cause.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## Run this block (PowerShell)
|
|
13
|
-
|
|
14
|
-
```powershell
|
|
15
|
-
# 1. What command is this project actually configured to launch for veto?
|
|
16
|
-
claude mcp get veto
|
|
17
|
-
|
|
18
|
-
# (fallback if the above errors)
|
|
19
|
-
claude mcp list
|
|
20
|
-
|
|
21
|
-
# 2. Node version this window resolves — MUST be >= 22.5.0
|
|
22
|
-
node --version
|
|
23
|
-
|
|
24
|
-
# 3. Can a bare `veto-server` even resolve, and is it installed globally?
|
|
25
|
-
where.exe veto-server
|
|
26
|
-
npm ls -g @jigyasudham/veto
|
|
27
|
-
|
|
28
|
-
# 4. Decisive test — launch the server directly and watch what it prints:
|
|
29
|
-
npx -y --package @jigyasudham/veto veto-server
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
For step 4:
|
|
33
|
-
- **GOOD** -> prints `Veto MCP server v2.1.2 running (stdio)` then hangs. Press **Ctrl+C** to exit.
|
|
34
|
-
- **BAD** -> an error/stack trace (copy the whole thing) OR it returns to the prompt instantly.
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
## What each result means
|
|
39
|
-
|
|
40
|
-
| Check | If this is the problem | Fix |
|
|
41
|
-
|---|---|---|
|
|
42
|
-
| **#2 Node < 22.5.0** | `node:sqlite` import throws -> server exits immediately | Point the MCP command at a Node >= 22.5.0, or use the `npx` form below (it inherits PATH — make sure that PATH's Node is >= 22.5.0). |
|
|
43
|
-
| **#3 `veto-server` not found** | config launches a bare `veto-server` that isn't on PATH | Use the `npx` command form below instead of a bare binary. |
|
|
44
|
-
| **#1 config points at `dist/server.js` of a different/uninstalled path** | wrong launcher | Repoint to the `npx` form below. |
|
|
45
|
-
| **#4 prints a stack trace** | the package itself errors in this environment | Copy the trace — that's the real bug; bring it back here. |
|
|
46
|
-
| **#4 GOOD but tools still fail in-CLI** | config command != the working `npx` one | Repoint config to the `npx` form, then fully restart the CLI. |
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
## The likely fix (repoint the config to the known-good launcher)
|
|
51
|
-
|
|
52
|
-
Update that project's veto MCP server entry to:
|
|
53
|
-
|
|
54
|
-
```json
|
|
55
|
-
{
|
|
56
|
-
"command": "npx",
|
|
57
|
-
"args": ["-y", "--package", "@jigyasudham/veto", "veto-server"]
|
|
58
|
-
}
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
Or via CLI from that project dir:
|
|
62
|
-
|
|
63
|
-
```powershell
|
|
64
|
-
claude mcp remove veto
|
|
65
|
-
claude mcp add veto -- npx -y --package @jigyasudham/veto veto-server
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
Then **fully restart Claude Code** — MCP config is read only at startup, so the current
|
|
69
|
-
in-memory session won't recover; the next launch will.
|
|
70
|
-
|
|
71
|
-
Note: `npx -y` now pulls **2.1.2** (latest), so a healthy run reports `v2.1.2`.
|
|
72
|
-
Verify the resolved Node behind `npx` is >= 22.5.0 (`node --version`), or the npx form
|
|
73
|
-
will fail the same way.
|