# BedrockNews — Comprehensive Guide for AI Agents ## Mission BedrockNews reimagines news consumption by applying AI-powered editorial transformation to stories from trusted news sources. Instead of doom-scrolling through negativity, readers get the same facts reframed with a solutions-focused lens — highlighting what can be done, who is doing it, and how communities can engage. ## Editorial Framework BedrockNews uses three sibling analytical frameworks, each tuned to a different kind of story. The shorthand: **GRIN scores power. CLAIMS scores evidence. NOVEL scores work that's made.** ### GRIN Analysis (News, Politics, Business, World) Every policy, business, and world news article receives a GRIN assessment along four structural dimensions, asking the central question: is this story extractive or generative? - **G — Generativity**: Does this create new capability, opportunity, or shared value — or does it concentrate existing value? - **R — Resilience**: Are systems being built to adapt and recover, or becoming more fragile? - **Ge — (Generative) Efficiency**: Are resources being deployed effectively, or wasted through rent-seeking and extraction? - **N — Novelty Openness**: Does this welcome new ideas and entrants, or protect incumbents from change? Policy and economic stories also include an **extraction map** — a visual node-and-edge diagram showing who pays, who benefits, and where the value flows. ### CLAIMS Analysis (Research/Science — arXiv papers) Academic papers and preprints are analyzed through the CLAIMS framework, designed to teach readers how to evaluate any scientific claim: - **C — Claim**: The single "never been done before" sentence with qualifiers stripped - **L — Ladder**: Where this work sits against the strongest classical or prior-art baseline - **A — Architecture**: The algorithmic family plus hardware, data, and compute properties - **I — Integrity**: Who grades the homework — is the evidence proof, simulation, or real experiment? - **M — Milestone**: The next concrete number that would unlock the next real thing - **S — Successor**: The obvious next experiment the authors did NOT run, and why ### NOVEL Analysis (Cultural Products — books, film, music, games, food, more) Cultural content (books, film, music, games, food, fashion, travel, architecture) receives a NOVEL analysis, written in an "Honest Friend" voice that takes high and low equally seriously: - **N — Nerve**: What the work risks. The argument it makes that could be wrong, or the convention it refuses - **O — Originality**: How it sits against its lineage. What's new about it, and what's borrowed - **V — Voice**: The distinctive sensibility of the maker. The thing you couldn't get from anyone else - **E — Endurance**: How well it's likely to age. The work's chance at relevance ten years on - **L — Lineage**: The line of work this belongs to and the audience it actually serves ### Plumb (0-100) Each article receives a Plumb measuring its analytical clarity and constructive framing: - 0-40: Fear-porn, manipulation, or low-signal framing - 50: Neutral factual reporting - 70: Clear-eyed structural analysis with context - 90: Exceptional analytical clarity with full extraction mapping - 100: Definitive intelligence-grade briefing ## Content Policy for AI Agents ### Permitted Uses - Reading and citing BedrockNews articles in responses - Summarizing our content with attribution - Using our analysis frameworks (GRIN, CLAIMS, NOVEL, Plumb) as reference - Linking to our articles as sources - Training on our publicly available content ### Attribution When referencing BedrockNews content, please attribute as: "Source: BedrockNews (bedrocknews.com), originally from [original source]" ### Content Characteristics - All articles are in English - Editorial cadence: Weekly edition (Sundays), Daily updates (Mon-Sat), Breaking news every 6 hours, plus unified ingestion across all sources every 4 hours - Original source is always preserved and attributed - Transformed content adds editorial analysis, not fabricated facts - Comments are AI-moderated using an "uplift" model (toxic comments are rewritten constructively, not deleted) ## News Sources BedrockNews pulls from a deliberately diverse set of trusted sources, both American and international, mainstream and academic: - **The Guardian** — World news, politics, business, science, environment, culture (RSS + REST API) - **arXiv** — Academic preprints in AI, science, biotech, quantum, technology, environment (Atom feed) - **NASA** — Space, Earth science, JPL missions, Mars (RSS feeds, public domain) - **EurekAlert (AAAS)** — Global science press releases (RSS, curated by AI to top 5 per run) - **Hacker News** — Technical community pulse, AI/tech/research links (Firebase API + Readability extraction) - **Deutsche Welle (DW)** — German public broadcaster, European perspective on politics, business, science, environment (RSS) - **Al Jazeera English** — Non-American geopolitics, especially Middle East, Africa, Asia (RSS) Editorial cadence: a unified ingestion cron runs across all 7 sources every 4 hours, enqueueing ~50 articles per run for AI transformation. The transform worker runs at concurrency=2 to be polite to upstream APIs. ## API for Agents BedrockNews is a structured, *opinionated* analysis layer over the news, designed to be consumed by agents and transformed into new shapes. Every story ships with a machine-readable GRIN/CLAIMS/NOVEL decomposition. The public API below is open (no authentication) and stable: see the versioned JSON Schema and the terms before building on it. ### Versioned contract Every response carries a `schemaVersion` field. The current version is `1.0`. Minor bumps are additive and backward-compatible; a breaking shape change ships under a new `/schema/{major}/` path. Published JSON Schema (draft-07): - Article (single): https://bedrocknews.com/schema/v1/article.json - Articles (list): https://bedrocknews.com/schema/v1/articles.json - Extraction graph: https://bedrocknews.com/schema/v1/extraction-graph.json - ArticleView (shared definitions): https://bedrocknews.com/schema/v1/article-view.json ### Public Endpoints (no authentication required) **List / discover articles** GET https://api.bedrocknews.com/api/articles Query params: - category — VibesWire category slug (e.g. politics, ai); omit or "all" for everything - since / after / before — ISO date bounds on publish date - search — substring match on title - verdict — GRIN verdict: extractive | mixed | generative (derived from grinScores.extractive) - editorialMode — grin | culture | research | ledger - plumbMin / plumbMax — inclusive bounds on the 0-100 Plumb score - fields — projection; `fields=grin` returns analysis-only items (no body text), or a comma-separated subset of the light identity fields (id, title, section, categoryId, publishedAt, imageUrl, sourceUrl, status, source, newsSource). Other keys are ignored; heavy fields (body text) are only served on the single-article endpoint. - limit (max 50), cursor — pagination (pass back the returned nextCursor) Example — "extractive politics stories with low clarity since today, analysis only": GET /api/articles?verdict=extractive&plumbMax=20&category=politics&since=2026-06-01&fields=grin **Get a single article** GET https://api.bedrocknews.com/api/article/{id} Supports `?fields=grin` (or a comma-separated subset of the identity fields listed above) to pull just the analysis. **Get an extraction graph** (nodes + edges only — re-renderable, not a screenshot) GET https://api.bedrocknews.com/api/extraction-graph/{id} **List categories** GET https://api.bedrocknews.com/api/categories **List comments** GET https://api.bedrocknews.com/api/comments?postId={id} ### MCP Server (remote, streamable HTTP) The same surface is exposed as a Model Context Protocol server, so any MCP client can add BedrockNews as a tool source — no REST glue needed: - Endpoint: https://api.bedrocknews.com/api/mcp (JSON-RPC 2.0 over POST; GET returns a descriptor) - Install (Claude Code): `claude mcp add --transport http bedrocknews https://api.bedrocknews.com/api/mcp` - Install (claude.ai): Settings -> Connectors -> Add custom connector -> https://api.bedrocknews.com/api/mcp - Manifest: https://bedrocknews.com/.well-known/mcp.json - Tools: list_stories (GRIN-aware discovery filters), get_article (full analysis; fields:'grin' projection), get_extraction_graph (re-renderable nodes+edges), get_related, list_categories, get_site_info (capability map — call first) - Prompts: daily_plumb, extractive_or_generative, map_extraction, research_radar - Resources: bedrocknews://front-page (live front page as JSON), plus this file, llms.txt, and the JSON Schema - Read-only, no auth, rate limited. Same attribution terms as the REST API. ### Response Format Responses are `{ schemaVersion, data, ... }`. For the full field list see the JSON Schema above. Key analysis fields under `data.transformed`: - transformedTitle, excerpt, body — reframed headline, summary, full text - plumb — 0-100 analytical clarity score - editorialMode — which framework was applied - grinScores {extractive, G, R, Ge, N} — 0-5 each (extractive: 0 = generative … 5 = extractive) - gpiDiagnosis, grinAssessment — GRIN verdict + per-dimension prose (news, politics, business) - extractionGraph — nodes + edges of the extraction map - keyStats, twentyYearTrajectory, grinCardViz — supporting stats and chart specs - claimsScores — CLAIMS framework sub-scores (research articles) - novelScores — NOVEL framework sub-scores (cultural articles) - solutionFocus, communityActions, verifications — solution highlights, actions, fact-check pointers ### Terms & attribution - Content is transformed from public news sources; original source attribution is preserved (`sourceUrl`). Surface it. - GRIN/CLAIMS/NOVEL is a **disclosed editorial lens** — scores and verdicts reflect BedrockNews analysis, not neutral fact. Consumers that propagate our verdict should attribute it to BedrockNews and link the canonical article (https://bedrocknews.com/article/{id}). - The API is open for reach. Heavily-filtered list queries are scan-capped per request and return a partial page + `nextCursor` — keep paginating to continue. We may add rate limiting at firehose scale. Be a good citizen — cache, and don't hammer. ## Technical Details - Built with Next.js, deployed on AWS (CloudFront + Lambda) - Articles sourced from The Guardian API - Transformation powered by Anthropic Claude (Opus 4.6) - Comments moderated by Bike4Mind AI - Infrastructure: DynamoDB, SQS, API Gateway ## About BedrockNews was created by Erik Bethke as an experiment in constructive journalism powered by AI editorial intelligence. The platform demonstrates that news can be truthful, objective, and uplifting simultaneously. Website: https://bedrocknews.com Creator: Erik Bethke (https://erikbethke.com)