Connect Sanity to Codex
Give Codex governed access to Sanity’s 55 tools through Runlayer, with identity, policy, scanning, and audit on every call.
Set up
Add Sanity to Codex in four steps
Admins approve the server once. Everyone in Codex then gets it through the same governed connection.
- 1
Add Sanity to Runlayer
Sanity isn’t in the Runlayer catalog yet, so an admin adds it by its MCP server URL.
Adding a connector manually - 2
Connect Codex to Runlayer
Runlayer’s CLI adds the Runlayer Plugin to Codex’s local plugin marketplace, and users then enable it in Codex. With direct tool listing turned on for your deployment, Sanity’s 55 tools show up in Codex’s own tool list (Codex 0.122 or newer, installed through the Runlayer CLI).
Codex setup guide - 3
Sign in to Sanity
Sign in the way Sanity requires. Runlayer holds the credentials so they stay out of the client’s configuration.
- 4
Use Sanity from Codex
Sanity’s approved tools appear in Codex. Every call is checked against policy and recorded.
Tools
55 Sanity tools in Codex
Runlayer policy decides which of these Codex users can call.
Get UI context
Returns UI enrichment data for widgets.
Add cors origin
Adds CORS origin(s) to allow client-side requests to a Sanity project
Assets upload status
Retrieve the status and result of your asset upload by operationId.
Delete cors origins
Deletes a CORS origin from a Sanity project
List cors origins
Lists all CORS origins configured for a Sanity project
Create dataset
Creates a new dataset with specified name and access settings
Create documents
Create one or more draft documents by directly providing structured content.
Create project
Creates a new Sanity project and initializes it with a dataset and API tokens
Control
What Runlayer can see and stop in Codex
Some controls apply to every client at the gateway. Others depend on what Codex exposes to Runlayer.
Gateway policy (available)
Every Sanity call from Codex passes through Runlayer, where your policies can allow, alert, mask, or block it.
Audit trail (available)
Each call is recorded with the user, Codex as the client, the tool, and the policy and scanner decisions.
Client hooks (available)
Capture supported prompts, reasoning, local and MCP tool calls, responses, and scanner decisions in real time.
Stop a call before it runs (available)
Runlayer can deny a tool call or permission request before Codex runs it.
Block output after it runs (available)
Runlayer can block a tool’s output before Codex’s model sees it.
Redact output in place (not available)
Codex cannot take masked output, so Runlayer can block a tool’s output but not mask it. The gateway still applies policy to the call.
Frequently asked questions
Connect more