@nyuchi/mzizi-mcp 0.10.1 → 0.11.0
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 +145 -55
- package/dist/generated/registry-pin.d.ts +1 -1
- package/dist/generated/registry-pin.js +1 -1
- package/dist/generated/registry.d.ts +12 -2
- package/dist/generated/registry.d.ts.map +1 -1
- package/dist/generated/registry.js +69 -3
- package/dist/generated/registry.js.map +1 -1
- package/dist/generated/skills.js +1 -1
- package/dist/generated/skills.js.map +1 -1
- package/dist/registry.d.ts +43 -2
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +39 -6
- package/dist/registry.js.map +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +3 -3
- package/dist/server.js.map +1 -1
- package/dist/tools.d.ts +3 -1
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +87 -21
- package/dist/tools.js.map +1 -1
- package/package.json +1 -1
package/dist/tools.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The Mzizi MCP tool surface — 10 tools, defined in code.
|
|
2
|
+
* The Mzizi MCP tool surface — 10 tools, defined in code. Components are Rust
|
|
3
|
+
* first: where a Mzizi Roots (Rust) implementation exists, `get_component` leads
|
|
4
|
+
* with it and gives the React build second.
|
|
3
5
|
*
|
|
4
6
|
* Eight are free. `fundi` and `report_issue` act as a console user and need
|
|
5
7
|
* the WorkOS sign-in; `access.ts` says which is which and how to sign in.
|
|
@@ -72,6 +74,11 @@ const LIST_DEFAULT_LIMIT = 400;
|
|
|
72
74
|
* caller does not control buys nothing.
|
|
73
75
|
*/
|
|
74
76
|
const NUM = z.coerce.number();
|
|
77
|
+
/**
|
|
78
|
+
* A boolean argument that also accepts "true" / "false", for the same reason as NUM.
|
|
79
|
+
* Not `z.coerce.boolean()`, which reads the string "false" as true.
|
|
80
|
+
*/
|
|
81
|
+
const BOOL = z.preprocess((v) => (v === "true" ? true : v === "false" ? false : v), z.boolean());
|
|
75
82
|
const WRITE = {
|
|
76
83
|
readOnlyHint: false,
|
|
77
84
|
destructiveHint: false,
|
|
@@ -138,6 +145,38 @@ export const TOOL_COVERAGE = {
|
|
|
138
145
|
"fundi_cancel_task",
|
|
139
146
|
],
|
|
140
147
|
};
|
|
148
|
+
/**
|
|
149
|
+
* The Rust lead of `get_component`: the crate and how to add it first, then the
|
|
150
|
+
* contract, then the source. `pinned` builds exactly the source shown (the
|
|
151
|
+
* registry commit this bundle was generated from); `cargo` is the crates.io
|
|
152
|
+
* release, which may trail the pin.
|
|
153
|
+
*/
|
|
154
|
+
function rustSection(rs, pinRef) {
|
|
155
|
+
const crate = rs.crate.name;
|
|
156
|
+
return {
|
|
157
|
+
implementation: "Mzizi Roots (Rust)",
|
|
158
|
+
target: rs.target,
|
|
159
|
+
description: rs.description,
|
|
160
|
+
crate: rs.crate,
|
|
161
|
+
install: {
|
|
162
|
+
cargo: `cargo add ${crate}`,
|
|
163
|
+
pinned: `cargo add ${crate} --git ${rs.crate.git} --rev ${pinRef}`,
|
|
164
|
+
},
|
|
165
|
+
module: crate.replace(/-/g, "_"),
|
|
166
|
+
contract: rs.contract,
|
|
167
|
+
files: rs.files,
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
/** The React build, second and labelled: the registry's `/v1/ui/{name}` body, unchanged. */
|
|
171
|
+
function reactSection(body) {
|
|
172
|
+
const name = String(body.name ?? "");
|
|
173
|
+
return {
|
|
174
|
+
build: "react",
|
|
175
|
+
status: "deprioritised",
|
|
176
|
+
install: `npx shadcn@latest add https://api.mzizi.dev/v1/ui/${encodeURIComponent(name)}`,
|
|
177
|
+
...body,
|
|
178
|
+
};
|
|
179
|
+
}
|
|
141
180
|
export function registerMziziTools(server, opts) {
|
|
142
181
|
const reg = opts.registry ?? bundledRegistry;
|
|
143
182
|
const registered = [];
|
|
@@ -150,30 +189,44 @@ export function registerMziziTools(server, opts) {
|
|
|
150
189
|
// 1 ─ search
|
|
151
190
|
server.registerTool(note("search"), {
|
|
152
191
|
title: "Search Mzizi",
|
|
153
|
-
description: "Search the registry by words: components, conventions, AI instruction sets and releases. Start here when you do not know the exact name of what you want. Documentation pages are searched by the docs_* tools.",
|
|
192
|
+
description: "Search the registry by words: components, conventions, AI instruction sets and releases. Start here when you do not know the exact name of what you want. A component hit with `rustCrate` has a Mzizi Roots (Rust) implementation, which is the lead; at an equal score it ranks first. Documentation pages are searched by the docs_* tools.",
|
|
154
193
|
inputSchema: {
|
|
155
194
|
query: z.string().min(1).describe("Free-text search term."),
|
|
156
195
|
},
|
|
157
196
|
annotations: READ,
|
|
158
197
|
}, async ({ query }) => respond((await reg()).search(query), "results"));
|
|
159
|
-
// 2 ─ get_component — one read, everything
|
|
198
|
+
// 2 ─ get_component — one read, everything, Rust first
|
|
160
199
|
server.registerTool(note("get_component"), {
|
|
161
200
|
title: "Get a component",
|
|
162
|
-
description: "Fetch one component in full
|
|
201
|
+
description: "Fetch one component in full, Rust first. When the component has a Mzizi Roots (Rust, Dioxus) implementation, `rust` comes first: its crate, the `cargo add` line, its CONTRACT clause block and the `.rs` source inline. `react` follows: the React build (deprioritised; it keeps working, new work goes to Rust), shadcn-shaped with files[] inline and its `npx shadcn add` line. With no Rust, `rust` is null and `lead` is \"react\". " +
|
|
202
|
+
"Add docs (use cases, variants, a11y: the documented contract) and version history (from the changelog) with `include`. Former nyuchi-* names resolve to their mzizi-* successors.",
|
|
163
203
|
inputSchema: {
|
|
164
204
|
name: z.string().min(1).describe("Component name, e.g. 'button'."),
|
|
165
205
|
include: z
|
|
166
206
|
.array(z.enum(["docs", "versions"]))
|
|
167
207
|
.optional()
|
|
168
|
-
.describe("Extra sections to fetch. Omit for
|
|
208
|
+
.describe("Extra sections to fetch. Omit for the implementations only."),
|
|
169
209
|
},
|
|
170
210
|
annotations: READ,
|
|
171
211
|
}, async ({ name, include }) => {
|
|
172
212
|
const r = await reg();
|
|
173
|
-
const
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
213
|
+
const current = r.resolveName(name);
|
|
214
|
+
const react = r.getComponent(name);
|
|
215
|
+
const rust = r.getRust(name);
|
|
216
|
+
// Unknown name, or no Rust and a React build the registry itself refuses.
|
|
217
|
+
if (!react.ok && !rust.ok)
|
|
218
|
+
return toolError(react.message);
|
|
219
|
+
const out = {
|
|
220
|
+
name: current ?? name,
|
|
221
|
+
...(current && current !== name ? { renamedFrom: name } : {}),
|
|
222
|
+
lead: rust.ok ? "rust" : "react",
|
|
223
|
+
note: rust.ok
|
|
224
|
+
? `Rust first: "${current}" has a Mzizi Roots implementation in the ${rust.data.crate.name} crate — use it. ` +
|
|
225
|
+
"The React build below is deprioritised: it keeps working, but new work goes to Rust."
|
|
226
|
+
: `No Mzizi Roots (Rust) implementation yet. ${rust.message}`,
|
|
227
|
+
rust: rust.ok ? rustSection(rust.data, r.pin.ref) : null,
|
|
228
|
+
react: react.ok ? reactSection(react.data) : { build: "react", error: react.message },
|
|
229
|
+
};
|
|
177
230
|
// A failure in an extra section must not discard the component the caller
|
|
178
231
|
// actually asked for -- it is reported alongside it.
|
|
179
232
|
for (const section of include ?? []) {
|
|
@@ -187,8 +240,9 @@ export function registerMziziTools(server, opts) {
|
|
|
187
240
|
// 3 ─ list_components
|
|
188
241
|
server.registerTool(note("list_components"), {
|
|
189
242
|
title: "List components",
|
|
190
|
-
description: "The registry index, optionally filtered by node, owner, collection or
|
|
191
|
-
"Returns a lean row per component (name, type, node, owner, collection
|
|
243
|
+
description: "The registry index, optionally filtered by node, owner, collection, type or rust. " +
|
|
244
|
+
"Returns a lean row per component (name, type, node, owner, collection, and rustCrate " +
|
|
245
|
+
"when it has a Mzizi Roots (Rust) implementation, which is the lead) — use " +
|
|
192
246
|
"get_component for one component in full, or search when you only have words. " +
|
|
193
247
|
`Paged: up to ${LIST_DEFAULT_LIMIT} rows per call, with total and hasMore reported.`,
|
|
194
248
|
inputSchema: {
|
|
@@ -210,6 +264,7 @@ export function registerMziziTools(server, opts) {
|
|
|
210
264
|
.string()
|
|
211
265
|
.optional()
|
|
212
266
|
.describe("Filter by registry type, e.g. registry:ui | registry:lib | registry:block."),
|
|
267
|
+
rust: BOOL.optional().describe("true: only components with a Mzizi Roots (Rust) implementation; false: only those without."),
|
|
213
268
|
limit: NUM.int()
|
|
214
269
|
.positive()
|
|
215
270
|
.optional()
|
|
@@ -220,14 +275,16 @@ export function registerMziziTools(server, opts) {
|
|
|
220
275
|
.describe("Rows to skip, for paging."),
|
|
221
276
|
},
|
|
222
277
|
annotations: READ,
|
|
223
|
-
}, async ({ node, owner, collection, type, limit, offset }) => {
|
|
278
|
+
}, async ({ node, owner, collection, type, rust, limit, offset }) => {
|
|
279
|
+
const r = await reg();
|
|
224
280
|
const take = limit ?? LIST_DEFAULT_LIMIT;
|
|
225
281
|
const skip = offset ?? 0;
|
|
226
|
-
const res =
|
|
282
|
+
const res = r.listComponents({
|
|
227
283
|
node,
|
|
228
284
|
owner,
|
|
229
285
|
collection,
|
|
230
286
|
type,
|
|
287
|
+
rust,
|
|
231
288
|
limit: take,
|
|
232
289
|
offset: skip,
|
|
233
290
|
});
|
|
@@ -239,14 +296,20 @@ export function registerMziziTools(server, opts) {
|
|
|
239
296
|
// the full index is ~135 KB and overflows an MCP client's budget in one call, which
|
|
240
297
|
// is the other half of why this tool was unusable. Reach for search when you need to
|
|
241
298
|
// match on words, get_component when you need one component's detail.
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
299
|
+
// `rustCrate` is only on the rows that have Rust, so the
|
|
300
|
+
// index stays lean and a present field means one thing.
|
|
301
|
+
const items = rows.map((i) => {
|
|
302
|
+
const crate = r.rustCrate(String(i.name));
|
|
303
|
+
return {
|
|
304
|
+
name: i.name,
|
|
305
|
+
type: i.type,
|
|
306
|
+
node: i.node,
|
|
307
|
+
nodeLabel: i.nodeLabel,
|
|
308
|
+
owner: i.owner,
|
|
309
|
+
collection: i.collection,
|
|
310
|
+
...(crate ? { rustCrate: crate } : {}),
|
|
311
|
+
};
|
|
312
|
+
});
|
|
250
313
|
const returned = skip + items.length;
|
|
251
314
|
return jsonContent({
|
|
252
315
|
count: items.length,
|
|
@@ -263,6 +326,9 @@ export function registerMziziTools(server, opts) {
|
|
|
263
326
|
// registry is empty" — the two look identical in an empty items array, and the
|
|
264
327
|
// first is a query to rewrite while the second is an outage.
|
|
265
328
|
...(registryTotal !== undefined ? { registryTotal } : {}),
|
|
329
|
+
// How many of the `total` matched rows have a Mzizi Roots (Rust)
|
|
330
|
+
// implementation. Filter with rust=true to list only those.
|
|
331
|
+
withRust: payload.meta?.withRust ?? 0,
|
|
266
332
|
items,
|
|
267
333
|
});
|
|
268
334
|
});
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|