Bring the evidence
to your assistant.

Browse models and research Atlas events from an MCP-compatible assistant. Every result carries its sources.

Connect with MCP

Add a remote MCP server in a client that supports Streamable HTTP. Use this URL; no Atlas account or API key is required.

https://deepnoodle.ai/atlas/mcp

Read-only access to public Atlas records. The tools do not access your files, publish changes, or search the live web. Clients vary in how they configure remote servers.

Try a research question

  • “Show the newest models in Atlas, then compare their context limits and token prices with sources.”
  • “Find the events behind MCP's introduction and foundation donation, with sources.”
  • “What evidence supports productivity claims about coding agents? Include limitations.”
  • “Show Anthropic’s major events in 2025, then find the original sources.”
  • “Which Atlas records have been updated since September 1, 2026?”

What the tools return

Clients can open atlas://guide for usage guidance and atlas://models/catalog for model filter values and price units.

list_models
Browse model facts with search, provider, serving surface, access, availability, release date, capability, context and price filters. Defaults to current models sorted by newest documented release; unknown dates sort last. Returns compact models and nextOffset for pagination.
get_model
Read a catalog ID or exact API identifier. Details return selected facts and source references; fields selects fact groups.
compare_models
Compare two to four catalog IDs or unambiguous API identifiers. Defaults to compact release, lifecycle, specs and token prices; fields selects facts.
search_atlas
Search events, briefs, and organizations by relevance. Default match=any; use match=all to require every term. For what happened recently, use since/until. Organization text matches appear only with q; organizationFacets describes participants in filtered events.
list_stories
Discover all published briefs, their review dates and evidence cutoffs.
get_story
Read a sourced narrative, portable Markdown, and separately labeled newer research leads.
get_event
One event, sources, date granularity, revisions, and incoming/outgoing contextual links. Request include=["explanation"] for its full narrative.
get_events
Read up to 20 events and their contextual links together. Results preserve requested order, duplicate IDs are combined, and missingIds identifies unknown or unpublished records. Explanations remain opt-in.
get_organization
An organization’s sourced profile, ownership and succession relationships, and a paginated chronology. Request include=["explanation"] for its full narrative.
get_changes
Additions and revisions across published events, organizations, and briefs since a date. Use changeKind=added or revised to narrow the feed. For events that happened in a date range, use search_atlas with since/until instead. Publication backfills can make the change feed large; this is not a historical diff or deletion log.

Browse and compare models

Start with list_models. Its default sort: "newest" uses documented first availability. Creation timestamps are not recorded, and dates are never inferred from an API identifier. Other sorts are oldest, name, provider, context, max-output, input-price, and output-price. Limits sort largest first; prices sort cheapest first. Unknown values always sort last.

{
  "name": "list_models",
  "arguments": {
    "sort": "newest",
    "limit": 10
  }
}

Current models include available and preview records, excluding legacy aliases. Use availability: "all" to include historical and unverified records, or select an exact lifecycle state such as retired. Release filters since and until accept an inclusive year, month, or day. Pass catalog IDs or exact API identifiers to get_model or compare_models.

Responses contain compact facts. Read atlas://models/sources to resolve source references. Use fields: ["pricing"] for just the conditional rate card. Ambiguous identifiers return candidate IDs; surface disambiguates serving APIs in get_model. Catalog IDs are opaque: their prefixes do not identify the model author.

matchedUnknown counts models that meet the other filters but have unverified requested capabilities. Set includeUnknown: true to include them. Known contradictions still fail the filters. undatedMatches counts undated matches; browse them with releaseDateKnown: false. Undated does not mean older.

Every model result identifies the dated, partial snapshot shared with the website. These are documented facts, not a live provider inventory or a quality ranking. Unknown prices do not mean free; standard token prices have conditions in the detailed rate cards. Event search and the changes feed do not include the model catalog.

Choose how much to read

Event and organization tools return compact facts by default. Check hasExplanation and explanationScope, then request include: ["explanation"] to read the full narrative. The explanation field is omitted unless requested; a requested but unavailable explanation is null.

{
  "name": "get_organization",
  "arguments": {
    "slug": "deepseek",
    "limit": 1,
    "include": [
      "explanation"
    ]
  }
}

Contextual links come from explanation prose. An empty link list can mean the context has not been written; incoming links can exist even when the event has no explanation of its own. In get_event, explanationCoverage reports explained and total published events across the corpus, with a ratio from 0 to 1 (null for an empty corpus). It measures written coverage, not how connected the events are.

{
  "name": "search_atlas",
  "arguments": {
    "q": "Claude Sonnet",
    "match": "all",
    "org": "anthropic",
    "category": "model"
  }
}

Explore connected events

Event records include linkCount. Its incoming and outgoing values count citation spans; distinctIncoming and distinctOutgoing count neighboring events. Counts cover published connections across the corpus, even when your search filters return only a subset. They measure citations in Atlas, which depend on editorial coverage, rather than importance or causality.

Use sort: "most-linked" in search_atlas to order matching events by distinct incoming neighbors before pagination. Follow links in either direction, then pass their IDs to get_events to read the next group together.

{
  "name": "get_events",
  "arguments": {
    "ids": [
      "2024-06-20-claude-3-5-sonnet",
      "2025-09-29-claude-sonnet-4-5"
    ],
    "contextLimit": 20
  }
}

Bulk results contain an event-detail object for each found ID, with global coverage reported once. contextLimit defaults to 20 and accepts 1–100; contextOffset applies separately to each event’s incoming and outgoing links. Each direction reports its total and next offset. Request include: ["explanation"] when you need the full narratives.

If your client shows old tools

Clients can retain cached tool definitions even after a refresh. Refresh the tool catalog or reconnect the server, then verify support with a read-only call. Request include: ["explanation"] on an event or organization with hasExplanation: true and check that the response contains the document. For strict search, send match: "all" and check that the response echoes query.match: "all". A schema refresh alone does not verify which parameters the server accepts.

The server rejects unknown tool arguments and names the unrecognized keys. Search responses echo the effective query.sort: relevance when a query is supplied, newest without one, or the sort you explicitly requested.

Research a release

Search “DeepSeek V4”, open the preview event, and follow its contextual links to later releases. Use org=deepseek to get the participation-based chronology, and follow nextOffset for the rest.

Download without a connector

The live event dataset is available as JSON and an Atom feed. A dated, citable snapshot is available separately.

Query the event API

https://deepnoodle.ai/atlas/timeline.json?org=anthropic&tier=2&since=2025&until=2025

Search with q; filter with org, category, year, since, and until. A year or month includes its entire period. Partial event dates match overlapping periods.

tier=1 returns turning points, tier=2 also includes major events, and tier=3 includes all importance levels. Search results default to relevance; without a query, newest first. Use sort=oldest to reverse it, or sort=updated for the most recently revised records. Use sort=most-linked for the most distinct incoming neighbors. Use match=all to require every search term.

Use limit (1–500) and offset to page through results; continue with nextOffset until it is null. updatedSince filters by record modification, not event date. Invalid filters return HTTP 400 with an explanation.