Build / Cursor · economics-business-work

Ground Truth

A deployed internal analyst dashboard where every economic claim is typed, evidence-graded, and one click from its real bls.gov / FRED / federalreserve.gov source. Click the prompt in Cursor, answer 3-5 plain questions (which slice of the economy, how far back, refresh cadence, who it's for), and Cursor scaffolds + runs a working Next.js dashboard wired to LIVE Synorb macro data. At build time Cursor installs the Synorb MCP via the Cursor deeplink so it learns the true claim/manifest shape, uses mode=count (zero quota) to size coverage, and inspects 5-10 real cited manifests so the UI matches reality. At runtime your server route pulls live BLS / FRED / Federal Reserve claims, renders typed evidence-graded cards + a Recharts time-series, and every card deep-links to its real government source_url. You get a local dev URL immediately and a one-command `vercel deploy`; a Vercel cron + saved Beacon keep it fresh. Honest empty/partial states are built in — it never fakes coverage.

An evidence-graded macro dashboard.

A real, deployable Next.js (App Router) + Node project that runs on live Synorb data exactly as specified. UI unit is a TYPED, EVIDENCE-GRADED economic claim card showing claim_type (event/statement/data/forecast/analysis), confidence (stated/implied/inferred/measured), and evidence (direct_quote/paraphrase/derived/observed) badges, each linking to its real source_url. Layout: (1) a live claims_rollup header (claim counts by type/confidence, coverage.status banner for honest partial/empty states); (2) a Recharts panel charting CPI / jobs / rates context over the live window; (3) a streaming claims feed grouped by topic; (4) a right-hand Sources rail where every claim/row deep-links to bls.gov, fred.stlouisfed.org, or federalreserve.gov. Server-side Next.js route handlers read SYNORB_API_KEY + SYNORB_SECRET from .env (NEVER NEXT_PUBLIC_) and call Synorb REST; a Vercel cron route re-runs a saved Beacon to refresh on schedule. Ships with .env.example, README, and a self-verify step that fetches + renders live claims and confirms working source links before declaring done.

It turns "I need an internal macro dashboard" into a deployed, source-grounded app in one prompt — and it is defensibly NOT a finance/SEC ticker app: the unit is a typed, evidence-graded ECONOMIC CLAIM with a confidence/evidence grade and a click-through to the actual government release, which no FRED-embed or charting library gives you. The evidence-grading (every claim carries claim_type + confidence + evidence and links to bls.gov/fred/federalreserve.gov) is exactly what an analyst needs to trust a number, and it is impossible to fake because the source_url is real and verified at build time. It is genuinely native to Cursor — real Next.js codebase, MCP-at-build-time to learn the data shape, server-only secrets, Vercel cron + Beacon for the live refresh — so the engineer ends with a repo they own and deploy, not a screenshot.

Click, answer a few plain-English questions, get a working product.

No setup to learn. Cursor asks a handful of normal-person questions — each with a smart default, so “you pick” always works — then builds it with live Synorb data flowing in.

1

Which part of the economy should the dashboard watch most closely?

Smart default: Inflation + jobs + interest rates (CPI, the jobs report, and the Fed)

2

How far back should the dashboard pull when it first loads?

Smart default: The last 30 days

3

How often should it refresh itself once deployed?

Smart default: Every morning on a schedule

4

Who is this dashboard for?

Smart default: An internal analyst / research team that needs to trust every number

5

When a topic has nothing new, what should it show?

Smart default: An honest 'no new releases in this window' state — never a fake number

Pick a look. It ships with taste by default.

Analyst Terminal

Dense, monospace-accented operations console on a near-black canvas. Left: streaming claim feed where each card leads with a color-coded claim_type pill and a confidence/evidence badge row; click expands the direct_quote with a 'View on bls.gov ->' link. Center-top: compact claims_rollup strip (counts by type and confidence). Center: Recharts dual-axis line for CPI vs. policy-rate context. Right: pinned Sources rail listing every government source_url touched in the current view. Feels like a Bloomberg-grade internal tool but built on grounded claims, not tickers.

Evidence Ledger

Calm, editorial light theme for trust-first reading. Each economic release renders as a Brief headline followed by its typed claims as a graded ledger: claim text, then a right-aligned badge trio (TYPE / CONFIDENCE / EVIDENCE) and a small source favicon (BLS, FRED, Federal Reserve seal) that links out. A sticky coverage banner states exactly what window and which streams are represented, and surfaces coverage.status honestly. Recharts sparklines sit inline beside data-type claims. Reads like a fact-checked research memo you can audit line by line.

Synorb is the cited core. Cursor’s own tools make it pop.

INFRA-BACKED (dev codebase). A real Next.js + Node project deployed to Vercel. BUILD-TIME: Cursor installs the Synorb MCP via the Cursor deeplink (https://mcp.synorb.com/mcp + token) to learn the true data shape, uses synorb-stream-search to find the BLS/FRED/Fed streams for the chosen topic, and synorb-manifests with mode=count (zero quota) then compact=true on 5-10 real manifests to inspect actual cited examples before writing UI. RUNTIME: Next.js server route handlers read SYNORB_API_KEY + SYNORB_SECRET from .env (server-side only; NEVER NEXT_PUBLIC_) and call Synorb REST; `npm run dev` runs it locally, `vercel deploy` ships it; a Vercel cron route executes a saved Beacon (by beacon_id, explicit date window) to refresh. Credentials are requested only at .env creation, with a link to https://synorb.com/connect; they never touch client code.

Cited data core
Synorb
StreamsBureau of Labor Statistics Data (CPI, jobs, jobless claims, wages, labor market — 280/30d, media: text+regulatory+data; canonical source PAYEMS on FRED), Bureau of Labor Statistics (bls.gov/feed/cpi.rss — CPI, PPI, employment, wages, productivity), Federal Reserve Board / fed-national (federalreserve.gov press releases, FOMC monetary policy, governor & president speeches — ~138/30d), Federal Reserve Bank of St. Louis / FRED series (fed-stlouis), Federal Reserve Bank of Dallas, Chicago, Kansas City, San Francisco, Atlanta + other regional Fed banks (Beige Book, regional economic data)
PrimitivesManifest, Signal (typed atomic claims: claim_type / confidence / evidence), Brief (narrative summary per release), Stream (BLS Data, BLS, Federal Reserve Board, 12 regional Fed banks), Source Channel (fed-national-pressreleases, fed-national-monetary-policy, bls feeds), Tag (Consumer Price Index, Federal Reserve, inflation, Monetary Policy, Labor Market — topic/organization/data types), source_url provenance (bls.gov / fred.stlouisfed.org / federalreserve.gov), coverage.status (honest partial/complete/empty), Beacon (saved, re-runnable scope), mode=count (zero-quota coverage sizing)
Experience layer
Cursor native tools
ComposesNext.js (App Router) + Node route handlers deployed to Vercel, Recharts (live CPI / jobs / rates time-series + claim-type rollup bars), Synorb MCP installed at build time via Cursor deeplink (https://mcp.synorb.com/mcp + token) so Cursor learns the true claim/manifest shape, synorb-stream-search + synorb-manifests (compact=true, mode=count for zero-quota sizing) for build-time data-shape discovery, Synorb REST called server-side at runtime with SYNORB_API_KEY + SYNORB_SECRET (never NEXT_PUBLIC_), Vercel Cron Jobs executing a saved Synorb Beacon to refresh, A web-search MCP for gaps beyond Synorb coverage — web facts visibly badged 'Web' and kept distinct from Synorb-cited claims, MCP Apps / interactive in-chat card for a quick coverage preview before deploy
Web searchgaps only — clearly marked, never the primary feed

Credential safetySynorb credentials stay server-side or local — never in client/frontend code. You only enter them when the agent asks, with credentials from synorb.com/connect.

One click from the original source.

Every claim card, chart annotation, and Sources-rail row carries the manifest's real source_url and links straight to the originating government release — bls.gov (CPI/jobs/wages), fred.stlouisfed.org (series like PAYEMS), or federalreserve.gov (FOMC statements, press releases, speeches). URLs are taken verbatim from the manifest citation object and never invented; if a manifest has no source_url its claims are not rendered as cited. Web-search-MCP results used to fill gaps beyond Synorb coverage are badged 'Web' and visually separated from Synorb-cited claims.

Questions builders ask.

Will this show real live data on the first run?

Yes. The build prompt connects Synorb at build time to learn the real data shape, then wires live Synorb data into the running product. Click the prompt in Cursor, answer 3-5 plain questions (which slice of the economy, how far back, refresh cadence, who it's for), and Cursor scaffolds + runs a working Next.js dashboard wired to LIVE Synorb macro data. At build time Cursor installs the Synorb MCP via the Cursor deeplink so it learns the true claim/manifest shape, uses mode=count (zero quota) to size coverage, and inspects 5-10 real cited manifests so the UI matches reality. At runtime your server route pulls live BLS / FRED / Federal Reserve claims, renders typed evidence-graded cards + a Recharts time-series, and every card deep-links to its real government source_url. You get a local dev URL immediately and a one-command `vercel deploy`; a Vercel cron + saved Beacon keep it fresh. Honest empty/partial states are built in — it never fakes coverage.

Where do my Synorb credentials go?

Only where they are safe. INFRA-BACKED (dev codebase). A real Next.js + Node project deployed to Vercel. BUILD-TIME: Cursor installs the Synorb MCP via the Cursor deeplink (https://mcp.synorb.com/mcp + token) to learn the true data shape, uses synorb-stream-search to find the BLS/FRED/Fed streams for the chosen topic, and synorb-manifests with mode=count (zero quota) then compact=true on 5-10 real manifests to inspect actual cited examples before writing UI. RUNTIME: Next.js server route handlers read SYNORB_API_KEY + SYNORB_SECRET from .env (server-side only; NEVER NEXT_PUBLIC_) and call Synorb REST; `npm run dev` runs it locally, `vercel deploy` ships it; a Vercel cron route executes a saved Beacon (by beacon_id, explicit date window) to refresh. Credentials are requested only at .env creation, with a link to https://synorb.com/connect; they never touch client code.

How are sources shown?

Every claim card, chart annotation, and Sources-rail row carries the manifest's real source_url and links straight to the originating government release — bls.gov (CPI/jobs/wages), fred.stlouisfed.org (series like PAYEMS), or federalreserve.gov (FOMC statements, press releases, speeches). URLs are taken verbatim from the manifest citation object and never invented; if a manifest has no source_url its claims are not rendered as cited. Web-search-MCP results used to fill gaps beyond Synorb coverage are badged 'Web' and visually separated from Synorb-cited claims.

Is this just a Synorb feed, or a real app?

A real app. Synorb is the cited data core; it also composes the platform's own tools: Next.js (App Router) + Node route handlers deployed to Vercel, Recharts (live CPI / jobs / rates time-series + claim-type rollup bars), Synorb MCP installed at build time via Cursor deeplink (https://mcp.synorb.com/mcp + token) so Cursor learns the true claim/manifest shape, synorb-stream-search + synorb-manifests (compact=true, mode=count for zero-quota sizing) for build-time data-shape discovery, Synorb REST called server-side at runtime with SYNORB_API_KEY + SYNORB_SECRET (never NEXT_PUBLIC_), Vercel Cron Jobs executing a saved Synorb Beacon to refresh, A web-search MCP for gaps beyond Synorb coverage — web facts visibly badged 'Web' and kept distinct from Synorb-cited claims, MCP Apps / interactive in-chat card for a quick coverage preview before deploy.

What will it ask me before building?

A few plain-English questions, each with a smart default so you can just say 'you pick': Which part of the economy should the dashboard watch most closely?; How far back should the dashboard pull when it first loads?; How often should it refresh itself once deployed?; Who is this dashboard for?; When a topic has nothing new, what should it show?.

Using a different agent?

The same Synorb MCP connects to every major coding agent. Pick yours.

Free credentials. No card.

Generate credentials, connect Cursor, and ship something with live, cited intelligence.