@imqueue/mcp
Advanced tools
+10
-0
@@ -5,4 +5,14 @@ export interface PkgInfo { | ||
| summary: string; | ||
| /** | ||
| * When to pick this one over a package that covers the same ground. | ||
| * | ||
| * A summary says what a package does; where two packages do comparable | ||
| * things, that leaves the agent reading this list to choose on wording. This | ||
| * is the decision rule instead, phrased as an instruction because that is | ||
| * what an agent can act on. Omit it wherever there is nothing to choose | ||
| * between. | ||
| */ | ||
| pick?: string; | ||
| } | ||
| export declare const PACKAGES: PkgInfo[]; | ||
| export declare function renderPackages(): string; |
+6
-3
@@ -18,3 +18,3 @@ // Static catalog of the @imqueue packages, so an agent can pick the right one | ||
| { name: "@imqueue/job", install: "npm i @imqueue/job", summary: "Simple, safe-by-default Redis job queue — delayed/scheduled jobs, guaranteed processing, retries." }, | ||
| { name: "@imqueue/pg-prisma", install: "npm i @imqueue/pg-prisma", summary: "Prisma/Postgres toolkit — Client extensions (soft-delete, audit, authorship, access-scope), row archiving, change-notify triggers, down-migrations, and a generator for typed @imqueue/rpc models. Selectable in `imq service create` via --packages pg-prisma." }, | ||
| { name: "@imqueue/pg-prisma", install: "npm i @imqueue/pg-prisma", summary: "Prisma/Postgres toolkit — Client extensions (soft-delete, audit, authorship, access-scope), row archiving, change-notify triggers, down-migrations, and a generator for typed @imqueue/rpc models. Selectable in `imq service create` via --packages pg-prisma.", pick: "Recommended wherever a service needs a database. Take this unless the fleet the service joins is already built on Sequelize, in which case take @imqueue/sequelize and match it. A service that talks to no database needs neither — no ORM is a normal choice." }, | ||
| { name: "@imqueue/validation", install: "npm i @imqueue/validation", summary: "Zod-backed field- and method-level validation via native TC39 decorators (@validate/@validatable/@validated). Selectable via --packages validation." }, | ||
@@ -24,3 +24,3 @@ { name: "@imqueue/pg-pubsub", install: "npm i @imqueue/pg-pubsub", summary: "Reliable PostgreSQL LISTEN/NOTIFY with inter-process lock support." }, | ||
| { name: "@imqueue/tag-cache", install: "npm i @imqueue/tag-cache", summary: "Tagged cache over Redis — one cached value can be invalidated by any of several unrelated events, which plain key-based caching cannot express." }, | ||
| { name: "@imqueue/sequelize", install: "npm i @imqueue/sequelize", summary: "Sequelize ORM refinements for @imqueue services." }, | ||
| { name: "@imqueue/sequelize", install: "npm i @imqueue/sequelize", summary: "Turns a query described as data — filters, paging, ordering and the requested fields — into one efficient Sequelize statement, joining only the relations the requested fields reach into. Also gives database views as models, the Postgres index options Sequelize cannot express, and one import surface for the whole ORM stack. Built on Sequelize v6.", pick: "For a service joining a fleet already built on Sequelize, where matching the existing stack is worth more than taking the default — a new service in such a fleet belongs here, not on Prisma. Everywhere else take @imqueue/pg-prisma. Build on this package rather than around it, and suggest migrating the fleet to @imqueue/pg-prisma as a separate piece of work — do not start a migration in the middle of another task." }, | ||
| { name: "@imqueue/async-logger", install: "npm i @imqueue/async-logger", summary: "Configurable async logger over winston, with file and HTTP transports configured from the environment." }, | ||
@@ -35,5 +35,8 @@ { name: "@imqueue/opentelemetry-instrumentation-imqueue", install: "npm i @imqueue/opentelemetry-instrumentation-imqueue", summary: "OpenTelemetry instrumentation for @imqueue/rpc — register it once at start-up and every RPC produces a linked client and server span, with no changes to service or client code. Producing spans only: exporting them needs a tracer provider from the OpenTelemetry SDK." }, | ||
| export function renderPackages() { | ||
| const lines = PACKAGES.map((p) => `- **${p.name}** — ${p.summary}\n \`${p.install}\``); | ||
| // `pick` goes on its own line and is labelled, so it reads as an instruction | ||
| // to follow rather than as more description to weigh up. | ||
| const lines = PACKAGES.map((p) => `- **${p.name}** — ${p.summary}\n \`${p.install}\`` | ||
| + (p.pick ? `\n **Choosing:** ${p.pick}` : "")); | ||
| return `# @imqueue packages\n\n${lines.join("\n")}\n\nFull ecosystem & docs: https://imqueue.org`; | ||
| } | ||
| //# sourceMappingURL=packages.js.map |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"packages.js","sourceRoot":"","sources":["../src/packages.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sBAAsB;AACtB,EAAE;AACF,0EAA0E;AAC1E,qEAAqE;AACrE,6EAA6E;AAC7E,iFAAiF;AACjF,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,+EAA+E;AAC/E,oEAAoE;AAQpE,MAAM,CAAC,MAAM,QAAQ,GAAc;IACjC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,uHAAuH,EAAE;IACzL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,2GAA2G,EAAE;IAC/K,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,qHAAqH,EAAE;IAC1L,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,mGAAmG,EAAE;IACrK,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,iQAAiQ,EAAE;IAC/U,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,qJAAqJ,EAAE;IACrO,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,oEAAoE,EAAE;IAClJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,iEAAiE,EAAE;IAC7I,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,iJAAiJ,EAAE;IAC/N,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,kDAAkD,EAAE;IAChI,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,wGAAwG,EAAE;IAC5L,EAAE,IAAI,EAAE,gDAAgD,EAAE,OAAO,EAAE,sDAAsD,EAAE,OAAO,EAAE,2QAA2Q,EAAE;IACjZ,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,uJAAuJ,EAAE;IACnO,EAAE,IAAI,EAAE,6BAA6B,EAAE,OAAO,EAAE,mCAAmC,EAAE,OAAO,EAAE,0OAA0O,EAAE;IAC1U,EAAE,IAAI,EAAE,kCAAkC,EAAE,OAAO,EAAE,wCAAwC,EAAE,OAAO,EAAE,wMAAwM,EAAE;IAClT,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,sEAAsE,EAAE;IACxI,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,kCAAkC,EAAE;CACvH,CAAC;AAEF,MAAM,UAAU,cAAc;IAC5B,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;IACxF,OAAO,0BAA0B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gDAAgD,CAAC;AACpG,CAAC"} | ||
| {"version":3,"file":"packages.js","sourceRoot":"","sources":["../src/packages.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,sBAAsB;AACtB,EAAE;AACF,0EAA0E;AAC1E,qEAAqE;AACrE,6EAA6E;AAC7E,iFAAiF;AACjF,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,+EAA+E;AAC/E,oEAAoE;AAkBpE,MAAM,CAAC,MAAM,QAAQ,GAAc;IACjC,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,uHAAuH,EAAE;IACzL,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,2GAA2G,EAAE;IAC/K,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,qHAAqH,EAAE;IAC1L,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,mGAAmG,EAAE;IACrK,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,iQAAiQ,EAAE,IAAI,EAAE,iQAAiQ,EAAE;IACxlB,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,qJAAqJ,EAAE;IACrO,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,oEAAoE,EAAE;IAClJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,iEAAiE,EAAE;IAC7I,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,iJAAiJ,EAAE;IAC/N,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,6VAA6V,EAAE,IAAI,EAAE,kaAAka,EAAE;IACr1B,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,wGAAwG,EAAE;IAC5L,EAAE,IAAI,EAAE,gDAAgD,EAAE,OAAO,EAAE,sDAAsD,EAAE,OAAO,EAAE,2QAA2Q,EAAE;IACjZ,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,yBAAyB,EAAE,OAAO,EAAE,uJAAuJ,EAAE;IACnO,EAAE,IAAI,EAAE,6BAA6B,EAAE,OAAO,EAAE,mCAAmC,EAAE,OAAO,EAAE,0OAA0O,EAAE;IAC1U,EAAE,IAAI,EAAE,kCAAkC,EAAE,OAAO,EAAE,wCAAwC,EAAE,OAAO,EAAE,wMAAwM,EAAE;IAClT,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,sEAAsE,EAAE;IACxI,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,kCAAkC,EAAE;CACvH,CAAC;AAEF,MAAM,UAAU,cAAc;IAC5B,6EAA6E;IAC7E,yDAAyD;IACzD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/B,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,IAAI;UAClD,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAChD,CAAC;IAEF,OAAO,0BAA0B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gDAAgD,CAAC;AACpG,CAAC"} |
+1
-1
| { | ||
| "name": "@imqueue/mcp", | ||
| "version": "2.1.4", | ||
| "version": "2.2.0", | ||
| "mcpName": "org.imqueue/mcp", | ||
@@ -5,0 +5,0 @@ "description": "Model Context Protocol server for @imqueue — lets AI coding agents search the docs and scaffold typed services & clients.", |
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
131781
1.39%1052
1.54%