@uluops/registry-mcp 0.2.18 → 0.3.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/CHANGELOG.md CHANGED
@@ -1,5 +1,49 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.3] - 2026-07-12
4
+
5
+ ### Changed
6
+
7
+ - Bump `@uluops/registry-sdk` to `0.44.0` — `list_definitions`/`search_definitions`
8
+ now pass through the list-grain risk scalars (`riskLevel`/`scanStatus`/`deepStatus`)
9
+ the registry API emits since the risk-verdict list projection (2026-07-12). No
10
+ handler or ToolSpec change (verbatim passthrough; three scalars are well within
11
+ egress limits). Consuming agents can rank/warn during discovery without a
12
+ per-definition `get` — gate `riskLevel` on the SDK's `isListVerdictTrustworthy`
13
+ (absent/null triple = pending, never clean; `none` + `scanStatus:'failed'` is a
14
+ sentinel).
15
+
16
+ ## [0.3.2] - 2026-07-07
17
+
18
+ ### Changed
19
+
20
+ - Bump `@uluops/registry-sdk` to `0.41.0` — `effectiveness.passRate` is nullable (D11:
21
+ agents report `null`, quality for agents is participation-based and score-only; a
22
+ run-level gate result cannot be attributed to one constituent). `get_effectiveness`
23
+ description explains the agent semantics so models render the null honestly.
24
+
25
+ ## [0.3.1] - 2026-07-07
26
+
27
+ ### Changed
28
+
29
+ - Bump `@uluops/registry-sdk` to `0.40.1` — `QualitySegment.actorCount` (the voting
30
+ population a segment's numbers rest on) passes through the schemas; "based on N users"
31
+ copy must use it, never `voterCount` (which is honestly 0 under a blend-mode score).
32
+
33
+ ## [0.3.0] - 2026-07-07
34
+
35
+ ### Changed
36
+
37
+ - Bump `@uluops/registry-sdk` to `0.40.0` — the SDK's zod schemas now pass the additive
38
+ `provenance` block through (older SDKs' default `.strip()` silently dropped it), so
39
+ `get_effectiveness` responses carry `metrics.provenance` with the independent vs
40
+ selfReported quality split, and the per-version analytics tools carry the name-scoped
41
+ provenance block.
42
+ - `get_effectiveness` / `get_health` tool descriptions now explain the voter-weighted
43
+ quality semantics: one actor one vote, `provenance.independent` as the headline figure,
44
+ the provisional-until-3-actors confidence label, and health's actor-diversity gate.
45
+
46
+
3
47
  All notable changes to this project will be documented in this file.
4
48
 
5
49
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
package/README.md CHANGED
@@ -167,8 +167,8 @@ compare_effectiveness({ type: "agent", name: "code-validator", versions: ["1.0.0
167
167
  ### Analytics (P3)
168
168
  | Tool | Description |
169
169
  |------|-------------|
170
- | `get_effectiveness` | Effectiveness metrics for a definition: pass rate, scores, taxonomy, health score |
171
- | `get_health` | Health grade and issue profile for a definition |
170
+ | `get_effectiveness` | Effectiveness metrics: voter-weighted quality (one actor, one vote) with the `provenance` block — `independent` vs `selfReported` split, confidence label. Agents are score-only (`passRate: null`) |
171
+ | `get_health` | Health grade and issue profile for a definition; the pass-rate factor requires 3+ qualifying actors |
172
172
  | `get_ecosystem_overview` | Ecosystem-wide analytics overview |
173
173
  | `get_lineage` | Lineage graph for a definition (versions + forks as a tree) |
174
174
  | `get_evolution` | Version-over-version metrics with trend detection |
@@ -12,6 +12,6 @@ export const GetEffectivenessInputSchema = z.object({
12
12
  version: z.string().min(1).optional(),
13
13
  });
14
14
  export function registerGetEffectivenessTool(server, registryClient) {
15
- server.tool('get_effectiveness', 'Get effectiveness metrics for a definition: pass rate, scores, taxonomy distribution, health score, and composition lift. Version defaults to latest.', GetEffectivenessInputSchema.shape, createToolHandler(GetEffectivenessInputSchema, (n) => registryClient.analytics.getEffectiveness(n.type, n.name, n.version)));
15
+ server.tool('get_effectiveness', 'Get effectiveness metrics for a definition: pass rate, scores, taxonomy distribution, health score, and composition lift. Version defaults to latest. Quality numbers (passRate/runAvgScore) are VOTER-WEIGHTED: one actor, one vote — a single account cannot dominate them with run volume. metrics.provenance reports who stands behind them: actorCount/voterCount (windowed), confidence (provisional until 3+ qualifying actors), and the independent vs selfReported split — provenance.independent is the headline figure to quote; selfReported is the author rating their own definition. uniqueUsers is the all-time distinct-actor count. For AGENTS, quality is participation-based (snapshot scores across every run the agent appears in, constituent or standalone) and passRate is null by design — a run-level gate result cannot be attributed to one constituent.', GetEffectivenessInputSchema.shape, createToolHandler(GetEffectivenessInputSchema, (n) => registryClient.analytics.getEffectiveness(n.type, n.name, n.version)));
16
16
  }
17
17
  //# sourceMappingURL=get-effectiveness.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-effectiveness.js","sourceRoot":"","sources":["../../src/tools/get-effectiveness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAkC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,4BAA4B,CAC1C,MAAiC,EACjC,cAA8B;IAE9B,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,uJAAuJ,EACvJ,2BAA2B,CAAC,KAAK,EACjC,iBAAiB,CAAC,2BAA2B,EAAE,CAAC,CAAC,EAAE,EAAE,CACnD,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CACrE,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-effectiveness.js","sourceRoot":"","sources":["../../src/tools/get-effectiveness.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAkC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,4BAA4B,CAC1C,MAAiC,EACjC,cAA8B;IAE9B,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,u1BAAu1B,EACv1B,2BAA2B,CAAC,KAAK,EACjC,iBAAiB,CAAC,2BAA2B,EAAE,CAAC,CAAC,EAAE,EAAE,CACnD,cAAc,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CACrE,CACF,CAAC;AACJ,CAAC"}
@@ -12,6 +12,6 @@ export const GetHealthInputSchema = z.object({
12
12
  version: z.string().min(1).optional(),
13
13
  });
14
14
  export function registerGetHealthTool(server, registryClient) {
15
- server.tool('get_health', 'Get health grade (A-F), issue profile, and contributing factors for a definition. Health scores are provisional. Version defaults to latest.', GetHealthInputSchema.shape, createToolHandler(GetHealthInputSchema, (n) => registryClient.analytics.getHealth(n.type, n.name, n.version)));
15
+ server.tool('get_health', 'Get health grade (A-F), issue profile, and contributing factors for a definition. Health scores are provisional (weight tables pending calibration). The pass-rate factor only feeds health when 3+ qualifying actors stand behind it (voter-weighted, actor-diversity gated) — thin-actor definitions read as insufficient-data rather than confidently scored. Version defaults to latest.', GetHealthInputSchema.shape, createToolHandler(GetHealthInputSchema, (n) => registryClient.analytics.getHealth(n.type, n.name, n.version)));
16
16
  }
17
17
  //# sourceMappingURL=get-health.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-health.js","sourceRoot":"","sources":["../../src/tools/get-health.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAkC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CACnC,MAAiC,EACjC,cAA8B;IAE9B,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,8IAA8I,EAC9I,oBAAoB,CAAC,KAAK,EAC1B,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5C,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAC9D,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-health.js","sourceRoot":"","sources":["../../src/tools/get-health.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,oBAAoB,EAAkC,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,oBAAoB;IAC1B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CACnC,MAAiC,EACjC,cAA8B;IAE9B,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,8XAA8X,EAC9X,oBAAoB,CAAC,KAAK,EAC1B,iBAAiB,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE,CAC5C,cAAc,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAC9D,CACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uluops/registry-mcp",
3
- "version": "0.2.18",
3
+ "version": "0.3.3",
4
4
  "description": "MCP server for the UluOps Registry API — definition management, versioning, and analytics",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -62,7 +62,7 @@
62
62
  },
63
63
  "dependencies": {
64
64
  "@modelcontextprotocol/sdk": "1.29.0",
65
- "@uluops/registry-sdk": "0.39.0",
65
+ "@uluops/registry-sdk": "0.44.0",
66
66
  "@uluops/sdk-core": "0.15.0",
67
67
  "mcp-secure-server": "0.0.17-security",
68
68
  "zod": "3.25.76"