@jigyasudham/veto 2.7.1 → 2.7.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 +32 -0
- package/dist/cli/claude-repair.d.ts +7 -0
- package/dist/cli/claude-repair.d.ts.map +1 -0
- package/dist/cli/claude-repair.js +38 -0
- package/dist/cli/claude-repair.js.map +1 -0
- package/dist/cli/statusline.d.ts.map +1 -1
- package/dist/cli/statusline.js +18 -1
- package/dist/cli/statusline.js.map +1 -1
- package/dist/cli.js +37 -18
- package/dist/cli.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/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.
|