@viberaven/mcp 1.0.2 → 1.0.5
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 +60 -59
- package/bin/server.js +33 -1
- package/package.json +44 -44
package/README.md
CHANGED
|
@@ -1,59 +1,60 @@
|
|
|
1
|
-
# @viberaven/mcp
|
|
2
|
-
|
|
3
|
-
Thin MCP wrapper for VibeRaven.
|
|
4
|
-
|
|
5
|
-
This package exposes VibeRaven CLI actions as MCP tools for Codex, Claude Code, Cursor, and other agent runtimes. It does not contain VibeRaven backend logic and does not bypass VibeRaven login or scan quotas.
|
|
6
|
-
|
|
7
|
-
The MCP server wraps the stable CLI package: `npx -y viberaven`.
|
|
8
|
-
|
|
9
|
-
## Run
|
|
10
|
-
|
|
11
|
-
```bash
|
|
12
|
-
npx -y @viberaven/mcp
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
You can also start the MCP server from the main CLI package:
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
npx -y viberaven mcp
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
## Tools
|
|
22
|
-
|
|
23
|
-
- `viberaven_check_readiness` -> `npx -y viberaven --agent-mode`
|
|
24
|
-
- `viberaven_verify` -> `npx -y viberaven --verify`
|
|
25
|
-
- `viberaven_audit` -> `npx -y viberaven audit --vercel-supabase`
|
|
26
|
-
- `viberaven_init_rules` -> `npx -y viberaven init`
|
|
27
|
-
- `viberaven_clean_plan` -> `npx -y viberaven clean --plan`
|
|
28
|
-
- `viberaven_strict_gate` -> `npx -y viberaven --agent-mode --strict --json`
|
|
29
|
-
- `viberaven_gate_result` -> `npx -y viberaven --agent-mode --json`
|
|
30
|
-
- `viberaven_context_map` -> `npx -y viberaven --condense`
|
|
31
|
-
- `viberaven_heal_plan` -> `npx -y viberaven --heal --plan`
|
|
32
|
-
- `viberaven_heal_prompt` -> `npx -y viberaven --heal --prompt`
|
|
33
|
-
- `viberaven_heal_apply` -> `npx -y viberaven --heal --apply`
|
|
34
|
-
|
|
35
|
-
`viberaven_check_readiness` is the canonical entrypoint. It runs VibeRaven as the Agent Context + Production Gate and writes `.viberaven/agent-tasklist.md`, `.viberaven/gate-result.json`, and `.viberaven/context-map.json`.
|
|
36
|
-
|
|
37
|
-
After one fix, call `viberaven_verify`. Before deploy or CI pass, call `viberaven_strict_gate` or run:
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
npx -y viberaven --strict
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
## Machine Artifact Contract
|
|
44
|
-
|
|
45
|
-
```text
|
|
46
|
-
docs/contracts/artifacts.md
|
|
47
|
-
https://viberaven.dev/schemas/gate-result.schema.json
|
|
48
|
-
https://viberaven.dev/schemas/context-map.schema.json
|
|
49
|
-
https://viberaven.dev/schemas/gap.schema.json
|
|
50
|
-
https://viberaven.dev/schemas/heal-result.schema.json
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Login
|
|
54
|
-
|
|
55
|
-
If VibeRaven prints `LOGIN_URL_READY`, open that exact URL for the user, keep the MCP call alive, and do not ask for passwords, tokens, cookies, or other secrets.
|
|
56
|
-
|
|
57
|
-
## Security
|
|
58
|
-
|
|
59
|
-
The MCP package is public integration glue only. It returns CLI stdout/stderr and structured JSON content when available. It does not mutate provider dashboards and does not bypass VibeRaven login, managed API checks, or quota enforcement. Do not claim provider dashboard checks are fixed by repo-code edits.
|
|
1
|
+
# @viberaven/mcp
|
|
2
|
+
|
|
3
|
+
Thin MCP wrapper for VibeRaven.
|
|
4
|
+
|
|
5
|
+
This package exposes VibeRaven CLI actions as MCP tools for Codex, Claude Code, Cursor, and other agent runtimes. It does not contain VibeRaven backend logic and does not bypass VibeRaven login or scan quotas.
|
|
6
|
+
|
|
7
|
+
The MCP server wraps the stable CLI package: `npx -y viberaven`.
|
|
8
|
+
|
|
9
|
+
## Run
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx -y @viberaven/mcp
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
You can also start the MCP server from the main CLI package:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx -y viberaven mcp
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Tools
|
|
22
|
+
|
|
23
|
+
- `viberaven_check_readiness` -> `npx -y viberaven --agent-mode`
|
|
24
|
+
- `viberaven_verify` -> `npx -y viberaven --verify`
|
|
25
|
+
- `viberaven_audit` -> `npx -y viberaven audit --vercel-supabase`
|
|
26
|
+
- `viberaven_init_rules` -> `npx -y viberaven init`
|
|
27
|
+
- `viberaven_clean_plan` -> `npx -y viberaven clean --plan`
|
|
28
|
+
- `viberaven_strict_gate` -> `npx -y viberaven --agent-mode --strict --json`
|
|
29
|
+
- `viberaven_gate_result` -> `npx -y viberaven --agent-mode --json`
|
|
30
|
+
- `viberaven_context_map` -> `npx -y viberaven --condense`
|
|
31
|
+
- `viberaven_heal_plan` -> `npx -y viberaven --heal --plan`
|
|
32
|
+
- `viberaven_heal_prompt` -> `npx -y viberaven --heal --prompt`
|
|
33
|
+
- `viberaven_heal_apply` -> `npx -y viberaven --heal --apply`
|
|
34
|
+
|
|
35
|
+
`viberaven_check_readiness` is the canonical entrypoint. It runs VibeRaven as the Agent Context + Production Gate and writes `.viberaven/agent-tasklist.md`, `.viberaven/gate-result.json`, and `.viberaven/context-map.json`.
|
|
36
|
+
|
|
37
|
+
After one fix, call `viberaven_verify`. Before deploy or CI pass, call `viberaven_strict_gate` or run:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
npx -y viberaven --strict
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Machine Artifact Contract
|
|
44
|
+
|
|
45
|
+
```text
|
|
46
|
+
docs/contracts/artifacts.md
|
|
47
|
+
https://viberaven.dev/schemas/gate-result.schema.json
|
|
48
|
+
https://viberaven.dev/schemas/context-map.schema.json
|
|
49
|
+
https://viberaven.dev/schemas/gap.schema.json
|
|
50
|
+
https://viberaven.dev/schemas/heal-result.schema.json
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Login
|
|
54
|
+
|
|
55
|
+
If VibeRaven prints `LOGIN_URL_READY`, open that exact URL for the user, keep the MCP call alive, and do not ask for passwords, tokens, cookies, or other secrets.
|
|
56
|
+
|
|
57
|
+
## Security
|
|
58
|
+
|
|
59
|
+
The MCP package is public integration glue only. It returns CLI stdout/stderr and structured JSON content when available. It does not mutate provider dashboards and does not bypass VibeRaven login, managed API checks, or quota enforcement. Do not claim provider dashboard checks are fixed by repo-code edits.
|
|
60
|
+
|
package/bin/server.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
const { spawn } = require('node:child_process');
|
|
3
3
|
let spawnChild = spawn;
|
|
4
4
|
|
|
5
|
-
const SERVER_INFO = { name: 'viberaven-mcp', version: '1.0.
|
|
5
|
+
const SERVER_INFO = { name: 'viberaven-mcp', version: '1.0.4' };
|
|
6
6
|
const CLI_PACKAGE = '@viberaven/cli';
|
|
7
7
|
|
|
8
8
|
const cwdSchema = {
|
|
@@ -94,6 +94,23 @@ const TOOLS = [
|
|
|
94
94
|
name: 'viberaven_heal_apply',
|
|
95
95
|
description: 'Apply a guarded VibeRaven repo-code heal recipe when supported.',
|
|
96
96
|
inputSchema: healSchema
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'viberaven_validate_npm_package',
|
|
100
|
+
description:
|
|
101
|
+
'Check whether an npm package name exists and looks safe before install. Always run viberaven --agent-mode after adding dependencies.',
|
|
102
|
+
inputSchema: {
|
|
103
|
+
type: 'object',
|
|
104
|
+
properties: {
|
|
105
|
+
packageName: { type: 'string', description: 'Single npm package name to validate.' },
|
|
106
|
+
packageNames: {
|
|
107
|
+
type: 'array',
|
|
108
|
+
items: { type: 'string' },
|
|
109
|
+
description: 'Multiple npm package names to validate in one call.'
|
|
110
|
+
}
|
|
111
|
+
},
|
|
112
|
+
additionalProperties: false
|
|
113
|
+
}
|
|
97
114
|
}
|
|
98
115
|
];
|
|
99
116
|
|
|
@@ -231,6 +248,21 @@ function buildToolArgs(name, args) {
|
|
|
231
248
|
if (args.yes === true) cliArgs.push('--yes');
|
|
232
249
|
return cliArgs;
|
|
233
250
|
}
|
|
251
|
+
if (name === 'viberaven_validate_npm_package') {
|
|
252
|
+
const names = [];
|
|
253
|
+
if (args.packageName) {
|
|
254
|
+
names.push(safeStringArg(args.packageName, 'packageName'));
|
|
255
|
+
}
|
|
256
|
+
if (Array.isArray(args.packageNames)) {
|
|
257
|
+
for (const entry of args.packageNames) {
|
|
258
|
+
names.push(safeStringArg(entry, 'packageName'));
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
if (names.length === 0) {
|
|
262
|
+
throw new Error('packageName or packageNames is required');
|
|
263
|
+
}
|
|
264
|
+
return ['validate-npm-package', '--json', ...names];
|
|
265
|
+
}
|
|
234
266
|
throw new Error(`Unknown VibeRaven tool: ${name}`);
|
|
235
267
|
}
|
|
236
268
|
|
package/package.json
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@viberaven/mcp",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Thin MCP wrapper around the VibeRaven CLI for agent launch-readiness workflows.",
|
|
5
|
-
"license": "UNLICENSED",
|
|
6
|
-
"author": "VibeRaven",
|
|
7
|
-
"mcpName": "io.github.ohad6k/viberaven",
|
|
8
|
-
"homepage": "https://viberaven.dev/mcp.md",
|
|
9
|
-
"repository": {
|
|
10
|
-
"type": "git",
|
|
11
|
-
"url": "git+https://github.com/ohad6k/VibeRaven.git",
|
|
12
|
-
"directory": "packages/mcp"
|
|
13
|
-
},
|
|
14
|
-
"bugs": {
|
|
15
|
-
"url": "https://github.com/ohad6k/VibeRaven/issues"
|
|
16
|
-
},
|
|
17
|
-
"keywords": [
|
|
18
|
-
"viberaven",
|
|
19
|
-
"mcp",
|
|
20
|
-
"claude-code",
|
|
21
|
-
"codex",
|
|
22
|
-
"cursor",
|
|
23
|
-
"launch-readiness",
|
|
24
|
-
"production"
|
|
25
|
-
],
|
|
26
|
-
"publishConfig": {
|
|
27
|
-
"access": "public",
|
|
28
|
-
"tag": "latest"
|
|
29
|
-
},
|
|
30
|
-
"bin": {
|
|
31
|
-
"viberaven-mcp": "bin/server.js"
|
|
32
|
-
},
|
|
33
|
-
"files": [
|
|
34
|
-
"bin",
|
|
35
|
-
"README.md"
|
|
36
|
-
],
|
|
37
|
-
"engines": {
|
|
38
|
-
"node": ">=20"
|
|
39
|
-
},
|
|
40
|
-
"scripts": {
|
|
41
|
-
"smoke": "node scripts/smoke.mjs",
|
|
42
|
-
"test": "vitest run"
|
|
43
|
-
}
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@viberaven/mcp",
|
|
3
|
+
"version": "1.0.5",
|
|
4
|
+
"description": "Thin MCP wrapper around the VibeRaven CLI for agent launch-readiness workflows.",
|
|
5
|
+
"license": "UNLICENSED",
|
|
6
|
+
"author": "VibeRaven",
|
|
7
|
+
"mcpName": "io.github.ohad6k/viberaven",
|
|
8
|
+
"homepage": "https://viberaven.dev/mcp.md",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/ohad6k/VibeRaven.git",
|
|
12
|
+
"directory": "packages/mcp"
|
|
13
|
+
},
|
|
14
|
+
"bugs": {
|
|
15
|
+
"url": "https://github.com/ohad6k/VibeRaven/issues"
|
|
16
|
+
},
|
|
17
|
+
"keywords": [
|
|
18
|
+
"viberaven",
|
|
19
|
+
"mcp",
|
|
20
|
+
"claude-code",
|
|
21
|
+
"codex",
|
|
22
|
+
"cursor",
|
|
23
|
+
"launch-readiness",
|
|
24
|
+
"production"
|
|
25
|
+
],
|
|
26
|
+
"publishConfig": {
|
|
27
|
+
"access": "public",
|
|
28
|
+
"tag": "latest"
|
|
29
|
+
},
|
|
30
|
+
"bin": {
|
|
31
|
+
"viberaven-mcp": "bin/server.js"
|
|
32
|
+
},
|
|
33
|
+
"files": [
|
|
34
|
+
"bin",
|
|
35
|
+
"README.md"
|
|
36
|
+
],
|
|
37
|
+
"engines": {
|
|
38
|
+
"node": ">=20"
|
|
39
|
+
},
|
|
40
|
+
"scripts": {
|
|
41
|
+
"smoke": "node scripts/smoke.mjs",
|
|
42
|
+
"test": "vitest run"
|
|
43
|
+
}
|
|
44
|
+
}
|