{"name":"org.imqueue/mcp","slug":"imqueue-mcp","title":"@imqueue","description":"Search @imqueue docs and scaffold typed services & clients from your AI coding agent.","url":"https://mcp.market/server/imqueue-mcp","rating":null,"grade":"A","score":88,"certified":false,"status":"active","category":"productivity","tags":["productivity","ai","search"],"presence":{"score":37,"stars":1,"forks":0,"downloads_week":199,"last_push_at":"2026-09-18T20:09:14.000Z","license":"GPL-3.0"},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/imqueue/mcp","website":"https://imqueue.org/mcp/","version":"3.7.9","remotes":[{"type":"streamable-http","url":"https://mcp.imqueue.org/mcp"}],"packages":[{"registryType":"npm","identifier":"@imqueue/mcp","version":"3.7.9","transport":{"type":"stdio"}}],"tools":[{"name":"get_doc","description":"Fetch the markdown of an @imqueue documentation page by its URL (as returned by search_docs). Returns plain markdown suitable for reading and quoting. Pass a URL with a #fragment — which is what search_docs returns for a section result — to get just that section plus the heading path above it; pass the URL without one to read the whole page. Only imqueue.org (framework docs) and imqueue.com (licensing, pricing, support) URLs are fetched; anything else is refused. Very large pages are truncated, which the result reports.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"url":{"type":"string","description":"An imqueue.org or imqueue.com page URL, e.g. https://imqueue.org/get-started/"}},"required":["url"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"list_packages","description":"The complete, authoritative catalogue of documented @imqueue packages, each with its current version, licence, minimum Node version, a one-line summary and its exact install command. Call this BEFORE adding any @imqueue dependency: search_docs can only find a package you already suspect exists, and this is the list. Covers typed RPC over a message queue, the Redis queue engine, the `imq` CLI, jobs and scheduling, Prisma and Sequelize database toolkits, method caching, tag-invalidated caching, PostgreSQL LISTEN/NOTIFY, Zod validation, OpenTelemetry or Datadog tracing, async logging, GraphQL N+1 batching across services, CIDR/IP checks and HTTP rate limiting. Some pairs are mutually exclusive — pg-prisma vs pg-sequelize, opentelemetry vs datadog — and installing both of a pair breaks silently, so read the `pick` rule on those entries before choosing. For one package's release history, links and the framework-wide Node and Redis requirements, use package_status.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"local_install_guide","description":"Return the setup instructions for running the full @imqueue MCP server on your own machine. The local server adds the CLI-backed tools, which act on your project files and running services and so cannot be offered by a hosted server. Returns instructions only — it installs nothing.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"package_status","description":"The current version, licence, minimum Node version and last release date of any published @imqueue package — or of all of them. Use it when the user asks which version of an @imqueue package is current, what licence it is under, or which Node or Redis version it needs. Covers every published package, including @imqueue/cli and @imqueue/mcp, and also returns the framework-wide licence, Node and Redis requirements, with a `licenseNote` that states the licence terms in a sentence. The facts are read from the npm registry by imqueue.org, and the result says when. Pass `package` for one entry, with or without the @imqueue/ scope; omit it for all of them.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"package":{"type":"string","description":"One package, with or without the scope: 'rpc', '@imqueue/rpc'. Omit for every package."}},"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"scaffold_client","description":"READ-ONLY: returns text and writes nothing to disk, and does NOT run the command it shows you. Explains how to generate and use the fully-typed client for an @imqueue service: @imqueue generates the real client from a running service via `imq client generate`, so this returns that exact command plus an illustrative usage snippet. The generated file exports a single namespace holding the client class, so the import shape is not the obvious one — take it from `namespace` rather than guessing. Use generate_client (local install only) if you want the command actually run.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"service":{"type":"string","description":"The service to call, e.g. 'user' or 'UserService'"},"methods":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Method name"},"description":{"type":"string","description":"What the method does"},"params":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","description":"TypeScript type, e.g. 'string' or 'number[]'"},"description":{"type":"string"},"optional":{"type":"boolean","description":"Mark the parameter optional. @expose() publishes required parameters as mandatory, so callers of the generated client must pass a value for every non-optional one — set this for any parameter a caller may legitimately skip."}},"required":["name","type"],"additionalProperties":false}},"returns":{"type":"string","description":"TypeScript return type WITHOUT Promise<> — e.g. 'User' or 'string'"}},"required":["name"],"additionalProperties":false},"description":"Known methods (used to shape the example call)"}},"required":["service"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"scaffold_service","description":"READ-ONLY: returns generated source code as text and writes nothing to disk, creates no project and runs no command. Generates an idiomatic @imqueue/rpc service (an IMQService subclass with @expose()d, JSDoc-typed methods) plus a bootstrap that starts it. Provide the methods you want, or omit them for a starter template. Any non-primitive parameter or return type also gets a types.ts with the required @classType()/@property() declarations — without those the generated client types it `any`, which compiles. Use create_service (local install only) if you want files actually written.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string","description":"Service name, e.g. 'user' or 'UserService'"},"methods":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","description":"Method name"},"description":{"type":"string","description":"What the method does"},"params":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"type":{"type":"string","description":"TypeScript type, e.g. 'string' or 'number[]'"},"description":{"type":"string"},"optional":{"type":"boolean","description":"Mark the parameter optional. @expose() publishes required parameters as mandatory, so callers of the generated client must pass a value for every non-optional one — set this for any parameter a caller may legitimately skip."}},"required":["name","type"],"additionalProperties":false}},"returns":{"type":"string","description":"TypeScript return type WITHOUT Promise<> — e.g. 'User' or 'string'"}},"required":["name"],"additionalProperties":false},"description":"Methods to expose"}},"required":["name"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema"}},{"name":"search_docs","description":"Search the official @imqueue docs (guides, tutorial, CLI manual, articles) and every exported symbol of every @imqueue package that publishes a generated API reference, returning the most relevant pages with their URLs. Each result names the package it belongs to. Takes a plain question or an exact symbol name such as 'RedisQueue.send', 'PgPubSub.listen' or 'watcherCheckDelay'. Answers 'how do I do X in @imqueue' and confirms a signature before code is written against it. Every result carries the page URL, which get_doc reads in full. Some capabilities are covered by two mutually exclusive packages — @imqueue/pg-prisma vs @imqueue/pg-sequelize, @imqueue/opentelemetry vs @imqueue/datadog — so for a query like 'tracing' or 'database', call list_packages for the choosing rule rather than taking whichever package ranks first, and pass `package` here to search within the one you settled on.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"query":{"type":"string","minLength":1,"maxLength":200,"description":"A question or a symbol name, e.g. 'expose a service method', 'delayed jobs' or 'IMQOptions.safeDelivery'"},"limit":{"type":"integer","minimum":1,"maximum":20,"description":"Max results (default 6)"},"package":{"type":"string","description":"Restrict results to one package, e.g. 'http-protect' or '@imqueue/opentelemetry'. Use it once you know which package you want — the same words appear in several packages' symbols."}},"required":["query"],"additionalProperties":false,"$schema":"https://json-schema.org/draft/2020-12/schema"}}],"scan":{"score":88,"grade":"A","scanned_at":"2026-09-19T04:44:19.260Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T04:44:19.200Z","components":{"code":{"score":25,"max":25,"notes":["18 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 311ms"]},"poisoning":{"score":15,"max":15,"notes":["7 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":10,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year","website matches verified namespace"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://mcp.imqueue.org/mcp","reachable":true,"authRequired":false,"latencyMs":311,"serverInfo":{"name":"imqueue","version":"3.7.9"}}],"packages":[{"registryType":"npm","identifier":"@imqueue/mcp","version":"3.7.9","found":true,"license":"GPL-3.0-only","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-09-18T20:13:36.140Z","repositoryUrl":"git+https://github.com/imqueue/mcp.git","weeklyDownloads":199}],"repo":{"found":true,"owner":"imqueue","repo":"mcp","archived":false,"pushedAt":"2026-09-18T20:09:14Z","stars":1,"forks":0,"openIssues":4,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/38657209?v=4","ownerCreatedAt":"2018-04-23T11:45:36Z","license":"GPL-3.0"},"icon":{"url":"https://imqueue.org/images/imqueue-icon-512.png","source":"registry","width":512,"height":512},"presence":{"stars":1,"forks":0,"downloadsWeek":199,"license":"GPL-3.0","lastPushAt":"2026-09-18T20:09:14.000Z","score":37}}}},"grade_history":[],"reviews":[]}