# Sanity

Connects your agent to a Sanity project: content, datasets, releases and schemas. Useful when CMS edits happen in chat instead of Studio.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed · ★ 194
- Author: sanity-io
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/sanity-io/agent-toolkit
- Updated: 2026-10-23
- HTML: https://affpapa.org/en/nevibecode/mcp/sanity

## What it does

The server lives at `https://mcp.sanity.io` and runs as a remote MCP, so there are no local files to keep in sync. Your agent can read schemas, pull documents from a dataset and inspect releases, which means it works against the live project rather than a stale copy. OAuth handles sign-in; no token to paste.

The short route is `npx sanity@latest mcp configure`, which detects Cursor, Claude and VS Code and writes the config for you. Claude users can also add it directly with `claude mcp add --transport http sanity https://mcp.sanity.io`. Codex takes `codex mcp add sanity --url https://mcp.sanity.io`, while Cursor and GitHub Copilot get a block in `mcp.json`.

Clients without remote MCP support need a proxy such as `mcp-remote` — without one, the connection to `https://mcp.sanity.io` will not come up. If auth breaks after a CLI setup, rerun `npx sanity@latest mcp configure` and restart the client.

## Requirements
- Remote server: `https://mcp.sanity.io`

## Install

### Claude Code (native platform)

**Platform CLI: remote server**
```bash
claude mcp add --transport http mcp https://mcp.sanity.io
```

### Codex

**Platform CLI: remote server**
```bash
codex mcp add sanity --url https://mcp.sanity.io
```

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "sanity": {
            "url": "https://mcp.sanity.io"
        }
    }
}
```

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "sanity": {
            "type": "http",
            "url": "https://mcp.sanity.io"
        }
    }
}
```

### Gemini CLI

**Platform CLI: remote server**
```bash
gemini mcp add -t http sanity https://mcp.sanity.io
```

## When to use it
- read document schemas without leaving the chat
- pull dataset records to rewrite copy
- check what landed in a content release
- verify field types before writing a query
- find a document by project without opening Studio

## Example prompts
- Show me the document schemas in my Sanity project
- Pull the latest records from the production dataset
- What changed in the last content release?

## Similar
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872
- [AIHawk](https://affpapa.org/en/nevibecode/mcp/aihawk.md) — MCP server · ★ 32221

From the same set: [sanity-io/agent-toolkit](https://affpapa.org/en/nevibecode/by/sanity-io/agent-toolkit.md) — 9 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
