Recommendations keep sources, rejections, and unknowns visible
NorthCinder sits between an MCP-capable AI app and selected store connections. It accepts a shopping brief, compares eligible offers, and usually returns no more than three useful choices: the strongest fit, a lower-risk option, and a cheaper or materially different option when available. Results retain the other finalists, rejected offers, reasons, and facts that could not be verified.
The ranking is deliberately constrained. Seller payments cannot improve position, sponsored offers stay labeled below organic results, and missing store coverage remains visible. NorthCinder reruns ranking locally and writes recommendations to a local audit log. These controls cover only the offers supplied to the engine. They cannot prove that a store catalog was complete, a listing was truthful, or another merchant did not have a better product.
Local mode adds 409 packages and no hosted account
Our clean container installed commit d134309 in 16 seconds. Pnpm added 409 packages and used 257 MB on disk. The checkout held 427 files, roughly 51,241 lines of source, and occupied 5 MB. NorthCinder is modest by agent-platform standards, though it is still a monorepo with a protocol package, adapters, checkout code, command-line client, and private site workspace.
The quickest path is npx northcinder init with Node.js 20 or later and an MCP host. Local mode launches client and engine in one process on a temporary loopback port, with no service key. A separate engine needs API keys, a matching client bearer credential, and HTTPS outside loopback. The repository owner explicitly says it provides no account or cloud service, so backups and uptime remain the user's job.
What happened when we ran it
Our build started after the 16-second install and failed in 9 seconds. The site workspace invoked Astro under Node 20.20.2, which Astro rejected with a requirement for Node 22.12.0 or later. Pnpm stopped the recursive build with exit code 1. The README now distinguishes product packages that need Node 20 from the private site workspace that needs Node 22.12.
Tests ran for 14 seconds and also exited with code 1. The protocol package reported 17 passing test files and 183 passing tests with 0 failures. The site package's node --test test/*.test.mjs command then failed, causing the recursive workspace run to stop. The supplied tail shows its duration and exit status but no failed assertion, so we cannot say what inside the site test command went wrong.
Our scan found 0 CI workflow files, no Dockerfile, no top-level tests directory, and pnpm workspaces. Tests clearly exist within packages despite the absence of a root tests folder. The passing 183-test protocol result is encouraging for the core rules. The overall red exit still matters for anyone trying to reproduce a release from the complete checkout.
Research remains provisional under every host and model
Before researching a product or seller, the MCP host is expected to read a specific guide, call create_research_plan, and follow the returned checklist with its own tools. Conflicting sources, uncertain identity, and missing facts keep the result provisional. Research can determine whether an offer is ready for comparison, but it cannot add ranking points by itself.
The README makes an unusually blunt qualification statement: no host and model combination is currently approved for routine research use. Version 0.2.1 also retracted an earlier unsupported routine-use claim. That honesty is a strength, but buyers must act on it. Check exact model identity, merchant, variant, delivery, total cost, source conflicts, and unknowns before accepting a recommendation.
Checkout requires one fresh approval for one unit
NorthCinder separates a recommendation from permission to buy. A signed approval covers one merchant, exact variant, price, known total, spending cap, one offer, and one unit. It is single-use. Raw card details are rejected. Supported automated checkout uses an opaque payment token, while other flows hand the buyer a cart link to complete in a browser.
This design blocks a vague standing request to keep buying when the price falls from becoming standing purchase authority. Price watches and reminders can notify without purchasing. Order outcomes attach only to the purchase they belong to and do not silently rewrite the buyer profile. Those boundaries should remain covered by local acceptance tests around retries, duplicate events, price changes, and expired approvals.
Five store adapters do not equal full-market search
Built-in adapters cover Shopify, WooCommerce, eBay, Etsy, and read-only Amazon comparison. Availability and configuration vary, and the engine reports missing coverage instead of pretending it searched the whole market. A native connection must confirm the exact offer before checkout or an unattended watch. Host browser tools can supply facts when no adapter exists, but NorthCinder refuses cookies, raw pages, passwords, and page instructions as inputs.
GitHub showed 1,214 stars, 5 combined issues and pull requests, and a last push on August 22, 2026. Release v0.2.1 arrived the same day. The API's recent issue listing returned no issues, so there is little public support discussion to judge alongside the fresh release activity. That makes the detailed specifications more important, but documents cannot substitute for outside deployment evidence.
NorthCinder is worth studying because its neutrality and approval rules address real agent-shopping risks in code. It is ready for supervised experiments, not routine delegation. Pin Node 22.12 or later for the complete workspace, reproduce the site failure, keep research provisional, and require a human to inspect every approval receipt.

