_get_ui_context
ChatGPTReturns 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
ChatGPTAdds CORS origin(s) to allow client-side requests to a Sanity project
create_dataset
ChatGPTCreates a new dataset with specified name and access settings
create_documents
ChatGPTCreate one or more draft documents by directly providing structured content. Creates drafts (drafts.* prefix) unless releaseId is specified for version creation.
create_project
ChatGPTCreates a new Sanity project and initializes it with a dataset and API tokens
create_release
ChatGPTCreate a new release for grouping content changes. Releases are containers that hold versioned documents for coordinated publishing.
create_version
ChatGPTCreate 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
ChatGPTDeploy 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
ChatGPTDeploy 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
ChatGPTDiscard 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
ChatGPTFetch 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
ChatGPTRetrieves all studio applications linked to a specific Sanity project
get_sanity_rules
ChatGPTLoad 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
ChatGPTFetch 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
ChatGPTSubmit 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
ChatGPTLists all datasets in your Sanity project
list_embeddings_indices
ChatGPTList all available embeddings indices for a dataset
list_organizations
ChatGPTLists all organizations the user has access to in Sanity
list_projects
ChatGPTLists all Sanity projects associated with your account
list_releases
ChatGPTList releases in a dataset. By default returns active and scheduled releases. Use the state filter to find published or archived releases.
list_sanity_rules
ChatGPTIMPORTANT: 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
ChatGPTList the deployed schemas for a project and dataset.
patch_documents
ChatGPTUpdate 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
ChatGPTPublish one or more draft documents to make them live
query_documents
ChatGPTQuery documents from Sanity using GROQ query language
read_docs
ChatGPTRead a specific Sanity documentation article
search_docs
ChatGPTSearch Sanity docs
semantic_search
ChatGPTPerform a semantic search on an embeddings index
unpublish_documents
ChatGPTUnpublish 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
ChatGPTModifies a dataset's name or access control settings
version_discard
ChatGPTDiscard one or more document versions from a release
whoami
ChatGPTReturns information about the currently authenticated Sanity user. Useful for verifying authentication and troubleshooting access issues.
add_cors_origin
Claudecreate_dataset
Claudecreate_documents_from_json
Claudecreate_documents_from_markdown
Claudecreate_project
Claudecreate_version
Claudedeploy_schema
Claudediscard_drafts
Claudeget_document
Claudeget_project_studios
Claudeget_sanity_rules
Claudeget_schema
Claudelist_datasets
Claudelist_embeddings_indices
Claudelist_organizations
Claudelist_projects
Claudelist_sanity_rules
Claudelist_workspace_schemas
Claudemigration_guide
Claudepatch_document_from_json
Claudepatch_document_from_markdown
Claudepublish_documents
Claudequery_documents
Clauderead_docs
Claudesearch_docs
Claudesemantic_search
Claudeunpublish_documents
Claudeupdate_dataset
Claudeversion_discard
Claudeversion_replace_document
Claudeversion_unpublish_document
Claude