MCP App Store

Overview

Create, query, and manage your structured content in Sanity directly from Claude. Run content audits, update documents, coordinate releases, and find anything across your projects. Or set up entirely new projects – schemas, content, and configuration – just by chatting with Claude.

Tools

_get_ui_context

ChatGPT
Returns UI enrichment data for widgets. When documentId is provided, returns schema fields, deployed Studio URL, and resolved reference previews. When documentId is omitted, returns project-level context only (Studio URL).

add_cors_origin

ChatGPT
Adds CORS origin(s) to allow client-side requests to a Sanity project

create_dataset

ChatGPT
Creates a new dataset with specified name and access settings

create_documents

ChatGPT
Create one or more draft documents by directly providing structured content. Creates drafts (drafts.* prefix) unless releaseId is specified for version creation.

create_project

ChatGPT
Creates a new Sanity project and initializes it with a dataset and API tokens

create_release

ChatGPT
Create a new release for grouping content changes. Releases are containers that hold versioned documents for coordinated publishing.

create_version

ChatGPT
Create a version document (versions.{releaseId}.* prefix) for a specific release. Versions are separate from drafts and published documents, and are used for scheduled release workflows.

deploy_schema

ChatGPT
Deploy an MCP-managed schema for a workspace. Writes to MCP-managed workspaces and adopts legacy system.schema workspaces into MCP management on first call. Refuses Studio-deployed workspaces. Can add new types or overwrite existing types iteratively. When called on a legacy workspace, the existing types become the baseline; pass an empty schemaDeclaration to adopt the legacy types as-is, or pass new types to add them on top. IMPORTANT: Do not use this tool if a local Sanity Studio project exists. When local Studio files exist, modify them and deploy with npx sanity@latest schema deploy instead — using this tool would cause the deployed schema to diverge from your source. If a Studio-deployed schema already exists at the target workspaceName, this tool refuses. Either update the Studio source and deploy via CLI, or choose a different workspaceName for a new MCP-managed schema.

deploy_studio

ChatGPT
Deploy a managed Sanity Studio bound to an MCP-managed schema. Creates a hosted Studio whose URL follows the current environment — sanity.studio on production, studio.sanity.work on staging — and returns the concrete studioUrl in the response. Requires an existing MCP-managed schema at the same (projectId, dataset, workspaceName) address — call deploy_schema first if none exists. Re-run after subsequent deploy_schema calls so the deployed Studio picks up the latest schema.

discard_drafts

ChatGPT
Discard one or more draft documents. If a document is published and has a draft, this removes the draft while leaving the published version intact. Use unpublish_documents before this tool if you want to remove a published document entirely.

get_document

ChatGPT
Fetch a single document by its exact ID. This is a direct ID lookup only - it does not search, filter, or query. Use when you have a specific document ID and need its full content.

get_project_studios

ChatGPT
Retrieves all studio applications linked to a specific Sanity project

get_sanity_rules

ChatGPT
Load Sanity development rules. ALWAYS call list_sanity_rules first to see available rules, then load all rules relevant to your task in a single call.

get_schema

ChatGPT
Fetch the deployed schema for a workspace. Resolves the best available source automatically — MCP-managed first, then Studio-deployed, then a legacy system.schema document.

give_sanity_feedback

ChatGPT
Submit feedback about Sanity when you encounter issues while working with a Sanity codebase or project. Use this when: - A Sanity MCP tool returned an unexpected error or confusing result - You needed a Sanity capability that doesn't exist or is hard to use - Sanity docs, MCP tool descriptions, or examples were unclear or incorrect - Common Sanity surfaces such as @sanity/client, the HTTP API, schemas, Studio, or deployment were confusing or blocked progress - You had to use a workaround for something in Sanity that should be simpler Provide a specific, detailed message about what you were trying to do, what happened, and what you expected instead.

list_datasets

ChatGPT
Lists all datasets in your Sanity project

list_embeddings_indices

ChatGPT
List all available embeddings indices for a dataset

list_organizations

ChatGPT
Lists all organizations the user has access to in Sanity

list_projects

ChatGPT
Lists all Sanity projects associated with your account

list_releases

ChatGPT
List releases in a dataset. By default returns active and scheduled releases. Use the state filter to find published or archived releases.

list_sanity_rules

ChatGPT
IMPORTANT: Call this FIRST before any Sanity development work. Returns available best practice rules for schemas, queries, frameworks, and visual editing. You MUST load relevant rules before writing Sanity code.

list_workspace_schemas

ChatGPT
List the deployed schemas for a project and dataset.

patch_documents

ChatGPT
Update or edit one or more existing documents by applying precise modifications using @sanity/client patch() operations. Patches for each document are applied as a single transaction (all succeed or all fail). Edits are saved to the draft or release version; published content is never modified directly.

publish_documents

ChatGPT
Publish one or more draft documents to make them live

query_documents

ChatGPT
Query documents from Sanity using GROQ query language

read_docs

ChatGPT
Read a specific Sanity documentation article

search_docs

ChatGPT
Search Sanity docs

unpublish_documents

ChatGPT
Unpublish one or more published documents (moves them back to drafts), or provide releaseId to mark them for unpublishing when that release runs. Cannot immediately unpublish documents that are referenced by other documents.

update_dataset

ChatGPT
Modifies a dataset's name or access control settings

version_discard

ChatGPT
Discard one or more document versions from a release

whoami

ChatGPT
Returns information about the currently authenticated Sanity user. Useful for verifying authentication and troubleshooting access issues.

add_cors_origin

Claude

create_dataset

Claude

create_documents_from_json

Claude

create_documents_from_markdown

Claude

create_project

Claude

create_version

Claude

deploy_schema

Claude

discard_drafts

Claude

get_document

Claude

get_project_studios

Claude

get_sanity_rules

Claude

get_schema

Claude

list_datasets

Claude

list_embeddings_indices

Claude

list_organizations

Claude

list_projects

Claude

list_sanity_rules

Claude

list_workspace_schemas

Claude

migration_guide

Claude

patch_document_from_json

Claude

patch_document_from_markdown

Claude

publish_documents

Claude

query_documents

Claude

read_docs

Claude

search_docs

Claude

unpublish_documents

Claude

update_dataset

Claude

version_discard

Claude

version_replace_document

Claude

version_unpublish_document

Claude

App Stats

63

Tools

6

Prompts

ChatGPT, Claude

Platforms

Category

Memory Notes

Works with

ChatGPT
Claude

Data refreshed daily