共有:

Artifacts × MCP

Every Claude report is now
today's number again.

Anthropic has flipped Artifacts from "a snapshot you share" into "a page that re-pulls live data from your internal DBs and SaaS every time it's opened." The plumbing is Model Context Protocol (MCP), wired directly into the Artifacts runtime. About 20 months after MCP shipped in November 2025, it finally reaches the visualization layer over raw internal data — which changes what Claude actually is inside a company from today onward.

AI Navigate Editorial2026.07.216 min read

BEFORE Revenue (at save time) Frozen on open · manual rebuild AFTER Revenue (live on every open) Re-fetches SaaS / DB through MCP
01

What Changed

Leaving the "numbers at save time" era

Artifacts used to be a place to share a one-shot picture of whatever Claude produced. From today, that same picture re-queries the underlying system every time it is opened.

According to Anthropic's announcement, the updated Artifacts runtime can talk to any internal system registered as an MCP server — Postgres, Snowflake, Salesforce, Notion, Jira — using the viewer's own session at open time. Previously, Claude baked the JSON returned during report authoring into the page, so opening the same URL a day later showed the same numbers. From today, "orders this month," "instances running," or "yesterday's error rate" inside a shared Artifact resolve to whatever the viewer's queries return at open time.

Two properties matter. First, code generation and execution are split. Claude only writes the MCP-calling code; the raw data it returns never leaks back into the chat transcript, only into the sandbox that renders the Artifact. Second, permissions resolve on the viewer's side. Rows the author can see but the viewer cannot are simply dropped. The same Artifact rendered for a VP and for an analyst can — and will — show different numbers.


Stop shipping documents.
Wire your documents to the source.


02

How It Works

MCP is the common jack for "outside of Claude"

An open spec Anthropic released in November 2025 finally reaches the visualization layer, 20 months later.

Viewer's browser Opens the Artifact SSO session Artifacts sandbox Runs only Claude-written code Postgres · Snowflake Salesforce · Jira Notion · GitHub Registered as MCP servers
FIG. Viewer's SSO session reaches MCP servers through Artifacts' re-fetch code and gets only the rows they are permitted to see.
01

Stand up an MCP server

Whether it's Postgres or an internal microservice, wrap it as a read-only MCP server following the MCP developer reference. Anthropic maintains a growing set of connectors at modelcontextprotocol/servers on GitHub.

02

Claude splits "read" from "write"

Claude authors the fetch code inside the Artifact but does not receive the runtime results back into the conversation. What is audited is which server was called when, not the row contents.

03

Executes with the viewer's rights

When a coworker opens the shared URL, their SSO session is used, so row-level security (RLS) and role scoping in the source system filter the result down to what they are actually allowed to see.

03

Why It Matters

The "one PDF, many meetings" layer collapses inward

The gap between a BI dashboard and a Google Slide is absorbed straight into Claude.

20 mo
MCP release → Artifacts integration
6+
official connectors on day one
viewer rights
RLS carries through by default

Internal reporting culture has always had two layers: a BI layer (Tableau, Looker, Redash) that shows "always fresh graphs," and a narrated layer on top of it — the "this week's story" slide deck a human keeps producing. The Artifacts update tries to fold that second layer entirely into Claude. Narrated context and live graphs travel down the same URL. Whoever opens it reads the latest numbers and Claude's commentary side by side.

Where this shift bites hardest is on short-lived questions BI never got around to. Quarterly bookings deserve a real Tableau board; "48-hour churn after Tuesday's campaign" gets stale before anyone touches Tableau. Historically those questions ended in a Slack screenshot. Now they end in an Artifact wired to MCP that recomputes on every open.

04

Who Feels It

Who this actually helps — and how

The change lands differently on each of the personas Anthropic named.

Engineers

You stop hand-writing the visualization front-end (Next.js, Recharts) for every ad-hoc question. What remains is standing up read-only MCP servers. React glue code gets ghost-written by Claude. The new review muscle to build: catching permission bugs where a query silently runs as the author, not the viewer.

PMs and leads

Your weekly update and your decision docs can now carry "the number as of when this opened." The pre-meeting rebuild becomes "point Claude at MCP." Interpretation is still your job — because Claude's commentary can regenerate on future opens, fix your reading of the numbers in prose the model will not overwrite.

Designers

UX research dashboards become a place to "cut things down with Claude in the loop." A/B CTRs for a UI candidate can be queried inside the Artifact and the chart swapped mid-conversation. Type and color, though, remain a mostly manual craft.


05

Caveats

Three thorns you will hit if you deploy this on optimism alone

"Fresh on every open" is another way of saying "every open re-runs the query."

1) Cost. A single read against your OLTP DB becomes one read per viewer. What a BI materialized view used to absorb now hits online systems per person. Either cache inside the MCP connector or set a TTL at the Artifacts side — you don't want an executive share amounting to a small DDoS on Snowflake.

2) Permission slippage. "Query written under the author's rights, executed under the viewer's rights" is subtly dangerous: column names or filter shapes can hint at rows the viewer cannot see. Anthropic's engineering write-up spells out that RLS has to be enforced inside the MCP server, not just at the SQL you wrote.

3) "Wobbly numbers." An Artifact you discussed in a Monday review shows different values on Friday — that is the design, not a bug. For decision records where you want to freeze what was seen, a separate "snapshot at 3pm" copy is worth keeping alongside the live one.