What went live
The marketing lead at Acme asks what went on the blog this month. Memtro lists the post documents newest-changed first, with titles and dates, and reads the latest one in full so its plain text can be checked against the launch brief.
Ask what was published in Sanity recently, and read any document as plain text.
Connect Sanity with an API token, project ID and dataset, and Memtro reads documents of a type, such as posts, pages, products or authors, most recently changed first with the total of that type, and one document in full with rich text as plain text. It reads published content only, on demand, and there is no hourly sync. When you ask, with an Editor token, and once an administrator has granted the action by name, it can create and edit drafts, publish a draft so everyone sees it, unpublish a live document, discard a draft, and permanently delete a document.
Ask in plain English from chat, your editor, a scheduled job or your own agent. The model picks the right Sanity tool, reads what it needs, and answers with the source cited.
These tools change something in Sanity. The model is told to use them only when you ask for exactly that, and an administrator grants each one by name to the teams that may use it; a personal connection acts only after its owner allows it.
Turn events on in the connection's Events tab on the Connections page, choose the kinds you want, and Memtro registers its address with Sanity for you. Each event can start a job, with the event as its input. Sanity signs every delivery, and one whose signature does not check out is refused before it is read.
Events and webhooksOnce Sanity is connected, these are the kinds of things people ask. Plain questions, no syntax. If the answer lives partly in another system you have connected, Memtro looks there too.
What blog posts were published most recently?
How many product documents do we have in Sanity?
Show me the full text of the pricing page
Create a draft post titled Year in review with this introduction
Publish the draft of the spring pricing page
The marketing lead at Acme asks what went on the blog this month. Memtro lists the post documents newest-changed first, with titles and dates, and reads the latest one in full so its plain text can be checked against the launch brief.
Dan Fletcher asks Memtro to start a case study about Brightwave Ltd from his meeting notes. Memtro creates a draft, editor Maya Collins revises it in the Studio, and when she asks, Memtro publishes the draft and it appears on the site for every reader.
The teams that lean on Sanity most, a question each of them asks, and what they connect beside it.
A record in Sanity is rarely the whole story. Connect the systems that hold the rest and Memtro checks them together, then remembers what it learned so the next question starts further along.
Using something else for the same job, or both? Each connector has its own tools; connect as many as you like.
In sanity.io/manage → your project → API → Tokens choose Add API token, name it Memtro, and pick Viewer to read only, or Editor to let Memtro create and edit drafts, publish, unpublish and delete documents. Copy it, Sanity shows it once
Note the project ID under your project's name and the dataset name under Datasets
In Memtro open Connections → Sanity, paste the API token, Project ID and Dataset, leave API version blank, and connect
Ask what was published on the blog this month
Chat in the dashboard, the OpenAI-compatible API, scheduled jobs, and any MCP client: Claude Code, OpenCode, Cursor, Claude Desktop. The Sanity tools are the same everywhere.
Only when you ask, and only what it has been granted: create a new draft document of a given type, unpublished until an editor publishes it; set or clear top-level fields on a document's draft; publish a document's draft so it goes live; unpublish a live document, keeping its content as a draft; discard a document's unpublished draft; delete a document, and its draft if asked (permanent). Every other tool reads, searches or lists. The Connections page labels the tools that act, an administrator grants each one by name to the teams that may use it, and a personal connection acts only after its owner allows it.
A personal connection serves only your own requests. A shared connection serves the organisation: everyone, or only the teams an admin chooses. Admins can always add shared connections; other members need the permission.
Credentials are encrypted at rest. Tool results are cached briefly so agent loops do not repeat identical calls, and the facts the model extracts are saved to your organisation's memory with provenance (system, record and link) so they can be checked and superseded.
API token, Project ID and Dataset. In sanity.io/manage → your project → API → Tokens choose Add API token, name it Memtro, and pick Viewer to read only, or Editor to let Memtro create and edit drafts, publish, unpublish and delete documents. Copy it, Sanity shows it once.
Yes. Turn events on in the connection's Events tab on the Connections page, choose the kinds you want, and Memtro registers its address with Sanity for you. A job set to start "When an event arrives" then runs once for each matching event, with the event as its input. The run treats the event as outside data, never as instructions, and anything the run remembers is kept as unverified.
Seven-day free trial, then one monthly price per organisation. Connectors, jobs and memory are never metered.
Sign in, add a provider key, create an API key and point your tools at Memtro. It takes about five minutes.
7-day free trial · card on file, nothing charged until it ends · cancel any time