Head to head · Cms content · October 2026 research run

Directus vs Sanity

Sanity scores 73.7 (BB) on agent readiness against Directus's 67.1 (B), and leads in 4 of 7 scored categories. Directus leads on reliability and payments & pricing. Both do cms content.

Which one, for what

Directus B

Good for Teams that already keep content in an SQL database and want an agent to edit items, files and the data model under a named user's permissions.

Ahead on

  • Reliability, 82 against 77
  • Payments & pricing, 55 against 40

Watch for

Version 12 (10 June 2026) added licence enforcement. The free Core tier allows 3 Studio seats, 25 collections and 5 flows, and an instance over its limits is locked after a grace period

Sanity BB

Good for Teams that model content as structured documents and want an agent to draft, patch and stage changes in releases for a person to publish.

Ahead on

  • Schema & documentation, 87 against 81
  • Transparency & trust, 87 against 61

Also in its favour

  • Agent-ready, a grade of BB or better
  • A hosted endpoint, with nothing to install
  • No incidents deducted, where Directus loses 6 points for them

Watch for

Schema validation rules run only in Sanity Studio. The HTTP mutation API accepts a document without checking them

Score by category

CategoryWeight this runDirectusSanityEdge
Reliability16%208277Directus +5
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28187Sanity +6
Agent ergonomics13%16.27374Sanity +1
Security & auth14%17.56867Directus +1
Payments & pricing10%12.55540Directus +15
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88689Sanity +3
Transparency & trust7%8.86187Sanity +26
Negative events≤15-60
Total67.1 · B73.7 · BB

Facts side by side

FactDirectusSanity
KindHTTP APIHTTP API
VendorMonospace Inc. (Directus)Sanity US Inc. and Sanity AS
Hosted endpointno (local only)https://api.sanity.io
TransportsHTTP, Streamable HTTPHTTP, Streamable HTTP
AuthOAuth or keyOAuth or key
PricingFreemiumFreemium
x402nono
LicenceMSCL-1.0-GPL (Monospace Sustainable Core Licence 1.0), source-available with a licence key for paid tiers, each version converting to GPL-3.0 after four years. @directus/sdk is MITProprietary hosted service under Sanity's terms of service. Sanity Studio, the CLI, @sanity/client and the agent toolkit on GitHub are MIT
Tools exposed1253
Read-only variant documentednono
llms.txtyesyes
MCP registrynot listedio.sanity.www/mcp
Last release2026-10-072026-10-02
Terms last updatedno date givenno date given
Privacy policy last updated2026-06-09no date given
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textnot found in the text
Terms restrict benchmarkingyesyes
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waivernot found in the textnot found in the text
Popularity38k stars, 23k npm/wk6.4k stars, 4.1M npm/wk

Verdicts

Directus

The built-in MCP server works under the connecting user's permissions, supports OAuth limited to the MCP endpoint and blocks deletes unless an administrator allows them. Since version 12 a licence check caps the free Core tier at 3 Studio seats, 25 collections and 5 flows, and the default tool list carries about 79 KB of instructions.

Sanity

Sanity publishes 26 OpenAPI specs covering 225 operations, and its hosted MCP server saves edits to drafts or release versions, with publishing as a separate call. The Content Lake does not run schema validation on API writes, and custom roles that limit a token to one dataset or document type are sold only on Enterprise plans.

Before you call either

Directus

  1. Connect with OAuth or an Authorization: Bearer header. Don't put the token in the URL as ?access_token=, where it can be logged
  2. Use /mcp?tool_mode=registry when the client loads every tool definition. Default mode sends each tool's full instructions, about 79 KB in total
  3. Read the schema tool before writing. Item payloads are untyped objects, so field names and types come only from the data model
  4. Publish a version with POST /versions/{id}/promote over REST. The MCP items tool refuses system collections such as directus_versions
  5. Count translation and junction tables against the 25-collection Core limit before creating collections

Sanity

  1. Pin a static dated version in every URL, such as v2025-02-19. Omitting apiVersion in @sanity/client falls back to v1.
  2. Validate documents against the schema yourself before an HTTP write, or run sanity documents validate afterwards. The Content Lake does not enforce schema rules.
  3. Back off on 429 for mutations yourself. @sanity/client retries queries five times but never retries mutations. The limit is 25 mutations a second per IP.
  4. Over MCP, call create_version before patch_documents when editing inside a release, then patch the returned version ID with the same releaseId.
  5. Use GROQ projections and slices to size results. MCP query responses are limited to 64 KiB, and a blocked Free project answers 402 with plan_limit_reached.

Questions

Which is better for AI agents, Directus or Sanity?

Sanity scores 73.7 (BB) on agent readiness against Directus's 67.1 (B), and leads in 4 of 7 scored categories. Directus leads on reliability and payments & pricing.

Do Directus and Sanity need an API key?

Both take an API key or an OAuth sign-in.

Can an agent call Directus and Sanity without installing anything?

No hosted endpoint is listed for Directus. Sanity has a hosted endpoint at https://api.sanity.io.

Other comparisons with Directus or Sanity

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.