# Hygraph vs Storyblok > Hygraph scores 69.3 (B) on agent readiness against Storyblok's 67.7 (B), and leads in 2 of 7 scored categories. Storyblok leads on agent ergonomics, security & auth, maintenance & community and transparency & trust. Both do cms content. Category scores, facts, verdicts and agent… - Canonical: https://www.anchorterminal.com/compare/hygraph-vs-storyblok - Markdown: https://www.anchorterminal.com/compare/hygraph-vs-storyblok.md (~2,450 tokens) - Slim: https://www.anchorterminal.com/compare/hygraph-vs-storyblok.min.md (~730 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/hygraph-vs-storyblok.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 Hygraph scores 69.3 (B) on agent readiness against Storyblok's 67.7 (B), and leads in 2 of 7 scored categories. Storyblok leads on agent ergonomics, security & auth, maintenance & community and transparency & trust. Both do cms content. - Hygraph: grade B, 69.3/100, rank #182 of 842. Markdown https://www.anchorterminal.com/tools/hygraph.md · JSON https://www.anchorterminal.com/api/v1/tools/hygraph.json - Storyblok: grade B, 67.7/100, rank #226 of 842. Markdown https://www.anchorterminal.com/tools/storyblok.md · JSON https://www.anchorterminal.com/api/v1/tools/storyblok.json ## Which one, for what ### Hygraph (B) Good for: Teams on Hygraph who want an agent to create, localise and publish entries, upload assets or change schema, with delete and unpublish kept out of reach on MCP. Ahead on: - Reliability, 89 against 79 - Schema & documentation, 78 against 68 Also in its favour: - No incidents deducted, where Storyblok loses 3 points for them Watch for: GraphQL error bodies carry a message and a `requestId` with no machine-readable code, and only asset transformation 429 responses are documented with `Retry-After` ### Storyblok (B) Good for: Teams already on Storyblok who want an agent to draft, translate and publish stories or change component schemas under scoped, per-space permissions. Ahead on: - Agent ergonomics, 78 against 72 - Security & auth, 73 against 63 - Maintenance & community, 80 against 74 - Transparency & trust, 80 against 60 Watch for: The Management API's OpenAPI spec sits in a private repository. Only the Content Delivery API has a public spec (OpenAPI 3.1, 14 operations) ## Score by category | Category | Weight | Hygraph | Storyblok | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 89 | 79 | Hygraph +10 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 78 | 68 | Hygraph +10 | | Agent ergonomics | 13% (16.2 this run) | 72 | 78 | Storyblok +6 | | Security & auth | 14% (17.5 this run) | 63 | 73 | Storyblok +10 | | Payments & pricing | 10% (12.5 this run) | 35 | 35 | even | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 74 | 80 | Storyblok +6 | | Transparency & trust | 7% (8.8 this run) | 60 | 80 | Storyblok +20 | | Negative events | ≤15 | 0 | -3 | | | **Total** | | **69.3 · B** | **67.7 · B** | | ## Facts side by side | Fact | Hygraph | Storyblok | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | Hygraph GmbH | Storyblok GmbH | | Hosted endpoint | `https://mcp.hygraph.com/mcp` | `https://mapi.storyblok.com/v1` | | Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP | | Auth | OAuth or key | OAuth or key | | Pricing | Freemium | Freemium | | x402 | no | no | | Licence | Proprietary service under Hygraph GmbH's Terms of Service. The `@hygraph/management-sdk` package is MIT | Proprietary service under Storyblok's terms. The SDKs, API clients and CLI in storyblok/monoblok are MIT | | Tools exposed | 17 | 7 | | Read-only variant documented | no | no | | llms.txt | yes | yes | | Last release | 2026-09-30 | 2026-10-02 | | Terms last updated | no date given | couldn't be read | | Privacy policy last updated | no date given | 2025-10-06 | | Customer content may train models | not found in the text | couldn't be read | | Terms restrict automated access | not found in the text | couldn't be read | | Terms restrict benchmarking | yes | couldn't be read | | Terms or service can change without notice | yes | couldn't be read | | Arbitration or class-action waiver | not found in the text | couldn't be read | | Popularity | 52 stars, 8.6k npm/wk | 68 stars, 433k npm/wk | ## Verdicts **Hygraph.** Tokens are limited by model, stage, locale and action, the GraphQL schema is typed and introspectable, and a hosted MCP server rejects delete and unpublish operations. Error bodies carry a message without a machine code, there are no idempotency keys, audit logs are Enterprise only, and no data processing agreement, sub-processor list or security.txt was found. **Storyblok.** The hosted MCP server covers the whole Management API with seven tools, OAuth scopes split into read, write and publish per space, and a confirmation step on deletes. The Management API has no public OpenAPI spec, no idempotency keys and no monitor on the public status page, and publishing is a GET request. ## Before you call either ### Hygraph 1. Send the Permanent Auth Token as `Authorization: Bearer ` to `https://.hygraph.com/v2//`. Read the schema by introspection first, because every type is generated from the project's models 2. Mutations write to DRAFT. Call `publish` with `to: [PUBLISHED]` as a separate mutation, and pass `locales` to write or publish a localisation 3. Stay under the plan's limit for uncached requests (5 a second on Hobby, 25 on Growth) and its concurrent mutations (5 and 10). Back off exponentially on 429 4. Upload an asset with `createAsset`, then POST the file to the returned pre-signed URL, or pass `uploadUrl` for a remote file. The asset stays `ASSET_CREATE_PENDING` until processed 5. Schema changes go to the Management API through `@hygraph/management-sdk` or the MCP tool `submit_batch_migration`. Version restore has no documented mutation, so read `Version` and write the old values back ### Storyblok 1. Pick the base URL by the space's region (mapi.storyblok.com for the EU, api-us, api-ca or api-ap otherwise). A token sent to the wrong region fails 2. Create stories without `publish` to keep them as drafts, then call the publish endpoint. It is a GET, so never prefetch or blindly retry it 3. Write translations as `field__i18n__` keys inside the same content object, and set the component field to translatable first 4. Upload an asset in three steps (signed response, POST to S3, finish upload). Through MCP the S3 step needs shell access for curl 5. Stay under 3 calls a second on Starter and 6 on paid plans, and back off exponentially on 429. Saves that break a field's max_length return 422 ## Questions ### Which is better for AI agents, Hygraph or Storyblok? Hygraph scores 69.3 (B) on agent readiness against Storyblok's 67.7 (B), and leads in 2 of 7 scored categories. Storyblok leads on agent ergonomics, security & auth, maintenance & community and transparency & trust. ### Do Hygraph and Storyblok need an API key? Both take an API key or an OAuth sign-in. ### Can an agent call Hygraph and Storyblok without installing anything? Yes. Hygraph has a hosted endpoint at https://mcp.hygraph.com/mcp and Storyblok at https://mapi.storyblok.com/v1. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/hygraph-vs-storyblok.json, and with the fewest tokens: https://www.anchorterminal.com/compare/hygraph-vs-storyblok.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "hygraph", "b": "storyblok"}`. From a terminal: `anchor compare hygraph storyblok` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/hygraph.json and https://www.anchorterminal.com/api/v1/tools/storyblok.json ## Other comparisons with Hygraph or Storyblok - [Contentstack vs Hygraph](https://www.anchorterminal.com/compare/contentstack-vs-hygraph.md) - [Contentstack vs Storyblok](https://www.anchorterminal.com/compare/contentstack-vs-storyblok.md) - [DatoCMS vs Hygraph](https://www.anchorterminal.com/compare/datocms-vs-hygraph.md) - [DatoCMS vs Storyblok](https://www.anchorterminal.com/compare/datocms-vs-storyblok.md) - [Directus vs Hygraph](https://www.anchorterminal.com/compare/directus-vs-hygraph.md) - [Directus vs Storyblok](https://www.anchorterminal.com/compare/directus-vs-storyblok.md) - [Ghost vs Hygraph](https://www.anchorterminal.com/compare/ghost-vs-hygraph.md) - [Ghost vs Storyblok](https://www.anchorterminal.com/compare/ghost-vs-storyblok.md) - [Hygraph vs Payload](https://www.anchorterminal.com/compare/hygraph-vs-payload.md) - [Hygraph vs Prismic](https://www.anchorterminal.com/compare/hygraph-vs-prismic.md) - [Hygraph vs Sanity](https://www.anchorterminal.com/compare/hygraph-vs-sanity.md) - [Hygraph vs Strapi](https://www.anchorterminal.com/compare/hygraph-vs-strapi.md) - [Hygraph vs Webflow](https://www.anchorterminal.com/compare/hygraph-vs-webflow.md) - [Hygraph vs WordPress](https://www.anchorterminal.com/compare/hygraph-vs-wordpress.md) - [Payload vs Storyblok](https://www.anchorterminal.com/compare/payload-vs-storyblok.md) - [Prismic vs Storyblok](https://www.anchorterminal.com/compare/prismic-vs-storyblok.md) - [Sanity vs Storyblok](https://www.anchorterminal.com/compare/sanity-vs-storyblok.md) - [Storyblok vs Strapi](https://www.anchorterminal.com/compare/storyblok-vs-strapi.md) - [Storyblok vs Webflow](https://www.anchorterminal.com/compare/storyblok-vs-webflow.md) - [Storyblok vs WordPress](https://www.anchorterminal.com/compare/storyblok-vs-wordpress.md)