@mushi-mushi/mcp 0.29.0 → 0.29.1
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 +1 -1
- package/dist/catalog.js +1 -1
- package/dist/{chunk-MOW6PVHK.js → chunk-6SHKBN6R.js} +1 -1
- package/dist/clients.d.ts +1 -1
- package/dist/clients.js +1 -1
- package/dist/index.js +25 -5
- package/dist/server.js +25 -5
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ Restart the editor and ask *"what's broken in prod?"*. For Cursor and Claude, `s
|
|
|
29
29
|
"mcpServers": {
|
|
30
30
|
"mushi-mushi": {
|
|
31
31
|
"command": "npx",
|
|
32
|
-
"args": ["-y", "@mushi-mushi/mcp@0.29.
|
|
32
|
+
"args": ["-y", "@mushi-mushi/mcp@0.29.1"],
|
|
33
33
|
"env": {
|
|
34
34
|
"MUSHI_API_KEY": "mushi_xxxxxxxxxxxxxxxxxxxx",
|
|
35
35
|
"MUSHI_PROJECT_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
|
package/dist/catalog.js
CHANGED
|
@@ -120,7 +120,7 @@ var TOOL_CATALOG = [
|
|
|
120
120
|
{
|
|
121
121
|
name: "list_gate_findings",
|
|
122
122
|
title: "Gate findings",
|
|
123
|
-
description: "List recent inventory gate runs and their findings for a project, newest first. Returns { runs: [{ id, gate, status, findings_count, \u2026 }], findings: [{ severity, rule_id, message, file_path, node_id, \u2026 }] }. Filter by gate (dead_handler | mock_leak | api_contract | crawl | status_claim | spec_drift | orphan_endpoint | unknown_call | schema_drift | code_health | design_drift | ci_drift | deploy_drift | env_drift | radar | portfolio_radar | portfolio_radar_ci | store_review) or finding severity (info | warn | error). The *_drift gates are the App Recipe checks: design_drift is code that drifts off the design tokens, ci_drift / deploy_drift / env_drift are CI, deploy and env vars that drift from the recipe; radar is the Mushi setup checks (a rejected provider key, no spend cap or AI budget, a webhook that never delivered, a stale code index), each with a suggested_fix (a spend-cap fix is applied in the console by a signed-in project admin, not through an API key); portfolio_radar / portfolio_radar_ci / store_review are the app hole checks (prefer get_radar). Available on every plan. Read-only. Use to see which CI gates failed on the last crawl; use diff_inventory to compare two commits, or get_inventory for the full snapshot.",
|
|
123
|
+
description: "List recent inventory gate runs and their findings for a project, newest first. Returns { runs: [{ id, gate, status, findings_count, \u2026 }], findings: [{ severity, rule_id, message, file_path, node_id, \u2026 }] }. Filter by gate (dead_handler | mock_leak | api_contract | crawl | status_claim | spec_drift | orphan_endpoint | unknown_call | schema_drift | code_health | design_drift | ci_drift | deploy_drift | env_drift | radar | portfolio_radar | portfolio_radar_ci | portfolio_radar_vulns | store_review) or finding severity (info | warn | error). The *_drift gates are the App Recipe checks: design_drift is code that drifts off the design tokens, ci_drift / deploy_drift / env_drift are CI, deploy and env vars that drift from the recipe; radar is the Mushi setup checks (a rejected provider key, no spend cap or AI budget, a webhook that never delivered, a stale code index), each with a suggested_fix (a spend-cap fix is applied in the console by a signed-in project admin, not through an API key); portfolio_radar / portfolio_radar_ci / portfolio_radar_vulns / store_review are the app hole checks (prefer get_radar). Available on every plan. Read-only. Use to see which CI gates failed on the last crawl; use diff_inventory to compare two commits, or get_inventory for the full snapshot.",
|
|
124
124
|
scope: "mcp:read",
|
|
125
125
|
hints: { readOnly: true, idempotent: true, openWorld: true },
|
|
126
126
|
useCase: "Show me what CI gates failed on the last run."
|
package/dist/clients.d.ts
CHANGED
|
@@ -49,7 +49,7 @@ import { FeatureGroup } from './feature-groups.js';
|
|
|
49
49
|
* editor launch. Synced to package.json by `scripts/sync-mcp-pin.mjs` — never
|
|
50
50
|
* hand-edit the version.
|
|
51
51
|
*/
|
|
52
|
-
declare const MCP_PIN_SPEC = "@mushi-mushi/mcp@0.29.
|
|
52
|
+
declare const MCP_PIN_SPEC = "@mushi-mushi/mcp@0.29.1";
|
|
53
53
|
interface StdioConfig {
|
|
54
54
|
command: string;
|
|
55
55
|
args: string[];
|
package/dist/clients.js
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
} from "./chunk-7RWHDJPZ.js";
|
|
9
9
|
|
|
10
10
|
// src/clients.ts
|
|
11
|
-
var MCP_PIN_SPEC = "@mushi-mushi/mcp@0.29.
|
|
11
|
+
var MCP_PIN_SPEC = "@mushi-mushi/mcp@0.29.1";
|
|
12
12
|
var PIN_SPEC_RE = /^@mushi-mushi\/mcp@\d+\.\d+\.\d+$/;
|
|
13
13
|
function pinOf(pinSpec) {
|
|
14
14
|
return pinSpec && PIN_SPEC_RE.test(pinSpec) ? pinSpec : MCP_PIN_SPEC;
|
package/dist/index.js
CHANGED
|
@@ -196,7 +196,7 @@ var TOOL_CATALOG = [
|
|
|
196
196
|
{
|
|
197
197
|
name: "list_gate_findings",
|
|
198
198
|
title: "Gate findings",
|
|
199
|
-
description: "List recent inventory gate runs and their findings for a project, newest first. Returns { runs: [{ id, gate, status, findings_count, \u2026 }], findings: [{ severity, rule_id, message, file_path, node_id, \u2026 }] }. Filter by gate (dead_handler | mock_leak | api_contract | crawl | status_claim | spec_drift | orphan_endpoint | unknown_call | schema_drift | code_health | design_drift | ci_drift | deploy_drift | env_drift | radar | portfolio_radar | portfolio_radar_ci | store_review) or finding severity (info | warn | error). The *_drift gates are the App Recipe checks: design_drift is code that drifts off the design tokens, ci_drift / deploy_drift / env_drift are CI, deploy and env vars that drift from the recipe; radar is the Mushi setup checks (a rejected provider key, no spend cap or AI budget, a webhook that never delivered, a stale code index), each with a suggested_fix (a spend-cap fix is applied in the console by a signed-in project admin, not through an API key); portfolio_radar / portfolio_radar_ci / store_review are the app hole checks (prefer get_radar). Available on every plan. Read-only. Use to see which CI gates failed on the last crawl; use diff_inventory to compare two commits, or get_inventory for the full snapshot.",
|
|
199
|
+
description: "List recent inventory gate runs and their findings for a project, newest first. Returns { runs: [{ id, gate, status, findings_count, \u2026 }], findings: [{ severity, rule_id, message, file_path, node_id, \u2026 }] }. Filter by gate (dead_handler | mock_leak | api_contract | crawl | status_claim | spec_drift | orphan_endpoint | unknown_call | schema_drift | code_health | design_drift | ci_drift | deploy_drift | env_drift | radar | portfolio_radar | portfolio_radar_ci | portfolio_radar_vulns | store_review) or finding severity (info | warn | error). The *_drift gates are the App Recipe checks: design_drift is code that drifts off the design tokens, ci_drift / deploy_drift / env_drift are CI, deploy and env vars that drift from the recipe; radar is the Mushi setup checks (a rejected provider key, no spend cap or AI budget, a webhook that never delivered, a stale code index), each with a suggested_fix (a spend-cap fix is applied in the console by a signed-in project admin, not through an API key); portfolio_radar / portfolio_radar_ci / portfolio_radar_vulns / store_review are the app hole checks (prefer get_radar). Available on every plan. Read-only. Use to see which CI gates failed on the last crawl; use diff_inventory to compare two commits, or get_inventory for the full snapshot.",
|
|
200
200
|
scope: "mcp:read",
|
|
201
201
|
hints: { readOnly: true, idempotent: true, openWorld: true },
|
|
202
202
|
useCase: "Show me what CI gates failed on the last run."
|
|
@@ -1489,7 +1489,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
1489
1489
|
route: "/",
|
|
1490
1490
|
markdown: "index.md",
|
|
1491
1491
|
keywords: ["know", "ai-built", "app", "broke", "fix", "ready"],
|
|
1492
|
-
headings: ["
|
|
1492
|
+
headings: ["The problem it solves", "A real example from our own sites", "What this is (and is not)", "Where it stands today", "This is what a diagnosis looks like", "See it in action", "Get started", "Install it in your app"],
|
|
1493
1493
|
excerpt: "Your AI shipped it. Mushi tells you why it broke: a plain-English diagnosis and a ready fix in your editor. Open source, Sentry optional."
|
|
1494
1494
|
},
|
|
1495
1495
|
{
|
|
@@ -1618,6 +1618,15 @@ var MUSHI_DOCS_INDEX = [
|
|
|
1618
1618
|
headings: ["What's tracked", "Charts", "Controlling costs", "Export", "Related pages"],
|
|
1619
1619
|
excerpt: "The Cost page shows LLM token use and estimated spend per model and pipeline for a Mushi project, so you can see what each diagnosis costs."
|
|
1620
1620
|
},
|
|
1621
|
+
{
|
|
1622
|
+
title: "Spend credits",
|
|
1623
|
+
url: docUrl("/admin/credits"),
|
|
1624
|
+
route: "/admin/credits",
|
|
1625
|
+
markdown: "admin/credits.md",
|
|
1626
|
+
keywords: ["admin", "credits", "spend"],
|
|
1627
|
+
headings: ["Cursor: fix bugs", "Cursor: improve your apps with skills", "Firecrawl: find bugs on your live sites", "Site audit", "Search rank", "Where the fixes go"],
|
|
1628
|
+
excerpt: "Spend credits lists expiring Cursor and Firecrawl credits and every way Mushi can spend them fixing bugs, improving apps with skills and checking sites."
|
|
1629
|
+
},
|
|
1621
1630
|
{
|
|
1622
1631
|
title: "Dashboard",
|
|
1623
1632
|
url: docUrl("/admin/dashboard"),
|
|
@@ -2065,7 +2074,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
2065
2074
|
route: "/admin/ux-runs",
|
|
2066
2075
|
markdown: "admin/ux-runs.md",
|
|
2067
2076
|
keywords: ["admin", "ux-runs", "runs", "ux"],
|
|
2068
|
-
headings: ["Run in the cloud", "What you see", "File as bug", "Where the changes are"],
|
|
2077
|
+
headings: ["Run in the cloud", "What you see", "File as bug", "Audit signed-in screens", "Where the changes are"],
|
|
2069
2078
|
excerpt: "Each screen your coding agent worked on in a mushi ux run, with its plan, every attempt, before and after screenshots, and what was kept."
|
|
2070
2079
|
},
|
|
2071
2080
|
{
|
|
@@ -2338,6 +2347,15 @@ var MUSHI_DOCS_INDEX = [
|
|
|
2338
2347
|
headings: ["Storage", "Why both pgvector and AGE?", "Indexing", "Bug Ontology"],
|
|
2339
2348
|
excerpt: "How Mushi links reports, components, fixes and developers in a per-project knowledge graph, with pgvector for similarity and Apache AGE for traversal."
|
|
2340
2349
|
},
|
|
2350
|
+
{
|
|
2351
|
+
title: "Known holes in dependencies",
|
|
2352
|
+
url: docUrl("/concepts/known-holes"),
|
|
2353
|
+
route: "/concepts/known-holes",
|
|
2354
|
+
markdown: "concepts/known-holes.md",
|
|
2355
|
+
keywords: ["concepts", "known-holes", "known", "holes", "dependencies"],
|
|
2356
|
+
headings: ["What Mushi checks", "What becomes a report", "How bad is it", "The fix", "What leaves Mushi", "Where to see it", "Data sources"],
|
|
2357
|
+
excerpt: "Mushi checks the exact versions in your lockfiles and runtime pins against published advisories, and files each fixable hole as a bug with the upgrade."
|
|
2358
|
+
},
|
|
2341
2359
|
{
|
|
2342
2360
|
title: "Multi-repo coordinated fixes",
|
|
2343
2361
|
url: docUrl("/concepts/multi-repo-fixes"),
|
|
@@ -2812,7 +2830,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
2812
2830
|
route: "/quickstart",
|
|
2813
2831
|
markdown: "quickstart/index.md",
|
|
2814
2832
|
keywords: ["quickstart", "fix", "first", "bug", "60", "seconds", "choose", "stack"],
|
|
2815
|
-
headings: ["Start here (
|
|
2833
|
+
headings: ["What you need", "The fastest way: one command", "Start here (editor first)", "Pick your stack", "How do I install the SDK?", "Troubleshooting"],
|
|
2816
2834
|
excerpt: "Install Mushi with npx mushi-mushi, connect Cursor or Claude Code over MCP, and turn user bug reports into plain-English diagnoses with ready fixes."
|
|
2817
2835
|
},
|
|
2818
2836
|
{
|
|
@@ -3889,6 +3907,7 @@ var GATE_IDS = [
|
|
|
3889
3907
|
"radar",
|
|
3890
3908
|
"portfolio_radar",
|
|
3891
3909
|
"portfolio_radar_ci",
|
|
3910
|
+
"portfolio_radar_vulns",
|
|
3892
3911
|
"store_review"
|
|
3893
3912
|
];
|
|
3894
3913
|
var GATE_FINDING_SEVERITIES = ["info", "warn", "error"];
|
|
@@ -6365,7 +6384,8 @@ function createMushiServer(config) {
|
|
|
6365
6384
|
method: "PATCH",
|
|
6366
6385
|
body: JSON.stringify({
|
|
6367
6386
|
status: args.status,
|
|
6368
|
-
|
|
6387
|
+
// Kept as a team note on the report (the console's Triage note).
|
|
6388
|
+
note: args.reason,
|
|
6369
6389
|
closed_reason: args.closedReason,
|
|
6370
6390
|
reporter_message: args.reporterMessage
|
|
6371
6391
|
})
|
package/dist/server.js
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
TDD_TOOL_CATALOG,
|
|
5
5
|
TOOL_CATALOG,
|
|
6
6
|
routeUseMushiIntent
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-6SHKBN6R.js";
|
|
8
8
|
import {
|
|
9
9
|
MUSHI_SERVER_METADATA
|
|
10
10
|
} from "./chunk-FJRPC4VR.js";
|
|
@@ -32,7 +32,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
32
32
|
route: "/",
|
|
33
33
|
markdown: "index.md",
|
|
34
34
|
keywords: ["know", "ai-built", "app", "broke", "fix", "ready"],
|
|
35
|
-
headings: ["
|
|
35
|
+
headings: ["The problem it solves", "A real example from our own sites", "What this is (and is not)", "Where it stands today", "This is what a diagnosis looks like", "See it in action", "Get started", "Install it in your app"],
|
|
36
36
|
excerpt: "Your AI shipped it. Mushi tells you why it broke: a plain-English diagnosis and a ready fix in your editor. Open source, Sentry optional."
|
|
37
37
|
},
|
|
38
38
|
{
|
|
@@ -161,6 +161,15 @@ var MUSHI_DOCS_INDEX = [
|
|
|
161
161
|
headings: ["What's tracked", "Charts", "Controlling costs", "Export", "Related pages"],
|
|
162
162
|
excerpt: "The Cost page shows LLM token use and estimated spend per model and pipeline for a Mushi project, so you can see what each diagnosis costs."
|
|
163
163
|
},
|
|
164
|
+
{
|
|
165
|
+
title: "Spend credits",
|
|
166
|
+
url: docUrl("/admin/credits"),
|
|
167
|
+
route: "/admin/credits",
|
|
168
|
+
markdown: "admin/credits.md",
|
|
169
|
+
keywords: ["admin", "credits", "spend"],
|
|
170
|
+
headings: ["Cursor: fix bugs", "Cursor: improve your apps with skills", "Firecrawl: find bugs on your live sites", "Site audit", "Search rank", "Where the fixes go"],
|
|
171
|
+
excerpt: "Spend credits lists expiring Cursor and Firecrawl credits and every way Mushi can spend them fixing bugs, improving apps with skills and checking sites."
|
|
172
|
+
},
|
|
164
173
|
{
|
|
165
174
|
title: "Dashboard",
|
|
166
175
|
url: docUrl("/admin/dashboard"),
|
|
@@ -608,7 +617,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
608
617
|
route: "/admin/ux-runs",
|
|
609
618
|
markdown: "admin/ux-runs.md",
|
|
610
619
|
keywords: ["admin", "ux-runs", "runs", "ux"],
|
|
611
|
-
headings: ["Run in the cloud", "What you see", "File as bug", "Where the changes are"],
|
|
620
|
+
headings: ["Run in the cloud", "What you see", "File as bug", "Audit signed-in screens", "Where the changes are"],
|
|
612
621
|
excerpt: "Each screen your coding agent worked on in a mushi ux run, with its plan, every attempt, before and after screenshots, and what was kept."
|
|
613
622
|
},
|
|
614
623
|
{
|
|
@@ -881,6 +890,15 @@ var MUSHI_DOCS_INDEX = [
|
|
|
881
890
|
headings: ["Storage", "Why both pgvector and AGE?", "Indexing", "Bug Ontology"],
|
|
882
891
|
excerpt: "How Mushi links reports, components, fixes and developers in a per-project knowledge graph, with pgvector for similarity and Apache AGE for traversal."
|
|
883
892
|
},
|
|
893
|
+
{
|
|
894
|
+
title: "Known holes in dependencies",
|
|
895
|
+
url: docUrl("/concepts/known-holes"),
|
|
896
|
+
route: "/concepts/known-holes",
|
|
897
|
+
markdown: "concepts/known-holes.md",
|
|
898
|
+
keywords: ["concepts", "known-holes", "known", "holes", "dependencies"],
|
|
899
|
+
headings: ["What Mushi checks", "What becomes a report", "How bad is it", "The fix", "What leaves Mushi", "Where to see it", "Data sources"],
|
|
900
|
+
excerpt: "Mushi checks the exact versions in your lockfiles and runtime pins against published advisories, and files each fixable hole as a bug with the upgrade."
|
|
901
|
+
},
|
|
884
902
|
{
|
|
885
903
|
title: "Multi-repo coordinated fixes",
|
|
886
904
|
url: docUrl("/concepts/multi-repo-fixes"),
|
|
@@ -1355,7 +1373,7 @@ var MUSHI_DOCS_INDEX = [
|
|
|
1355
1373
|
route: "/quickstart",
|
|
1356
1374
|
markdown: "quickstart/index.md",
|
|
1357
1375
|
keywords: ["quickstart", "fix", "first", "bug", "60", "seconds", "choose", "stack"],
|
|
1358
|
-
headings: ["Start here (
|
|
1376
|
+
headings: ["What you need", "The fastest way: one command", "Start here (editor first)", "Pick your stack", "How do I install the SDK?", "Troubleshooting"],
|
|
1359
1377
|
excerpt: "Install Mushi with npx mushi-mushi, connect Cursor or Claude Code over MCP, and turn user bug reports into plain-English diagnoses with ready fixes."
|
|
1360
1378
|
},
|
|
1361
1379
|
{
|
|
@@ -2498,6 +2516,7 @@ var GATE_IDS = [
|
|
|
2498
2516
|
"radar",
|
|
2499
2517
|
"portfolio_radar",
|
|
2500
2518
|
"portfolio_radar_ci",
|
|
2519
|
+
"portfolio_radar_vulns",
|
|
2501
2520
|
"store_review"
|
|
2502
2521
|
];
|
|
2503
2522
|
var GATE_FINDING_SEVERITIES = ["info", "warn", "error"];
|
|
@@ -4974,7 +4993,8 @@ function createMushiServer(config) {
|
|
|
4974
4993
|
method: "PATCH",
|
|
4975
4994
|
body: JSON.stringify({
|
|
4976
4995
|
status: args.status,
|
|
4977
|
-
|
|
4996
|
+
// Kept as a team note on the report (the console's Triage note).
|
|
4997
|
+
note: args.reason,
|
|
4978
4998
|
closed_reason: args.closedReason,
|
|
4979
4999
|
reporter_message: args.reporterMessage
|
|
4980
5000
|
})
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mushi-mushi/mcp",
|
|
3
3
|
"mcpName": "io.github.kensaurus/mushi-mushi",
|
|
4
|
-
"version": "0.29.
|
|
4
|
+
"version": "0.29.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "MCP server for Cursor, Claude Code and Copilot. The bug mediator for AI-built apps: plain-English diagnosis + a ready fix, in your editor.",
|
|
7
7
|
"type": "module",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@modelcontextprotocol/core": "^2.3.1",
|
|
46
46
|
"@modelcontextprotocol/server": "^2.3.1",
|
|
47
|
-
"zod": "^4.
|
|
47
|
+
"zod": "^4.6.7",
|
|
48
48
|
"@mushi-mushi/core": "^1.33.2"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|