{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-storyblok","slug":"storyblok","name":"Storyblok","type":"mcp","url":"https://github.com/Kiran1689/storyblok-mcp-server","page_url":"https://unfragile.ai/storyblok","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-storyblok__cap_0","uri":"capability://tool.use.integration.storyblok.space.and.story.management.via.mcp.protocol","name":"storyblok space and story management via mcp protocol","description":"Enables AI assistants to read, create, update, and delete stories within Storyblok spaces through the Model Context Protocol (MCP) interface. Implements MCP server endpoints that translate natural language requests into Storyblok REST API calls, handling authentication via API tokens and managing story metadata, content blocks, and publishing state without requiring direct API knowledge from the AI client.","intents":["I want my AI assistant to create new stories in my Storyblok space based on user input","I need to update existing story content programmatically through an AI interface","I want to retrieve story metadata and content for analysis or transformation","I need to delete or archive stories through an AI-driven workflow"],"best_for":["Content teams using Storyblok who want AI-assisted content creation and management","Developers building AI agents that need headless CMS integration","Teams automating content workflows with LLM-based decision making"],"limitations":["MCP protocol overhead adds ~100-200ms per request compared to direct REST API calls","No built-in caching of story data — each request fetches fresh data from Storyblok","Requires Storyblok API token with appropriate space permissions; no fine-grained role-based access control at MCP layer","Story versioning and draft/published state management depends on Storyblok's native capabilities"],"requires":["Storyblok account with at least one space created","Valid Storyblok API token (Personal Access Token or OAuth token)","MCP-compatible AI client (Claude, or custom MCP host)","Network access to Storyblok API endpoints (api.storyblok.com)"],"input_types":["structured JSON (story objects with name, slug, content, component definitions)","text (story titles, descriptions, content blocks)","identifiers (story IDs, space IDs, component names)"],"output_types":["structured JSON (story metadata, content, publishing status)","text (confirmation messages, error details)","boolean (success/failure indicators)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_1","uri":"capability://memory.knowledge.component.schema.introspection.and.validation","name":"component schema introspection and validation","description":"Retrieves and exposes Storyblok component definitions (schemas) through MCP tools, allowing AI assistants to understand the structure of available content components before creating or updating stories. Parses component field definitions including field types, validation rules, and nested component relationships, enabling the AI to generate structurally valid content blocks without trial-and-error.","intents":["I want my AI to know what fields and component types are available in my Storyblok space","I need the AI to validate content structure before creating stories to avoid API errors","I want to understand component nesting rules so the AI creates valid component hierarchies","I need to expose component field constraints (required fields, field types) to the AI"],"best_for":["Content teams with complex component hierarchies who need AI-aware content generation","Developers building AI content assistants that must respect schema constraints","Organizations migrating content workflows to AI-assisted processes"],"limitations":["Schema introspection is read-only; cannot modify component definitions through MCP","No real-time schema change detection — AI sees schema state at query time, not live updates","Complex nested component relationships may require multiple schema queries to fully resolve","Field validation rules are descriptive only; actual validation still occurs server-side"],"requires":["Storyblok space with at least one component defined","API token with read access to component definitions","MCP client capable of handling nested JSON schema responses"],"input_types":["component names (strings)","space identifiers"],"output_types":["structured JSON (component schema with field definitions, types, validation rules)","text (human-readable component documentation)"],"categories":["memory-knowledge","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_2","uri":"capability://tool.use.integration.asset.management.and.media.library.access","name":"asset management and media library access","description":"Provides MCP tools to list, upload, and reference assets (images, videos, documents) from Storyblok's asset library. Handles asset metadata retrieval, URL generation, and asset folder organization, allowing AI assistants to select appropriate media for stories or upload new assets programmatically while respecting Storyblok's asset naming and organization conventions.","intents":["I want the AI to select and reference existing images from my asset library when creating stories","I need to upload new images or media files through the AI assistant","I want the AI to organize assets into folders based on content type or campaign","I need to retrieve asset URLs and metadata for content composition"],"best_for":["Content teams managing large media libraries who want AI-assisted asset selection","Developers building AI content creation tools that need media integration","Organizations with automated content pipelines requiring asset management"],"limitations":["Asset upload through MCP may have file size limits depending on Storyblok plan and network constraints","No built-in image transformation or optimization — AI must reference assets as-is","Asset folder structure is read-only through MCP; folder creation/management not exposed","Asset permissions and access control follow Storyblok's space-level permissions"],"requires":["Storyblok space with asset library enabled","API token with asset read/write permissions","For uploads: file access and appropriate MIME type support"],"input_types":["asset identifiers (IDs, names)","file data (binary for uploads)","folder paths (strings)","search queries (text)"],"output_types":["structured JSON (asset metadata, URLs, folder structure)","text (asset names, descriptions)","URLs (CDN links to assets)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_3","uri":"capability://automation.workflow.workflow.and.publishing.state.management","name":"workflow and publishing state management","description":"Exposes Storyblok's workflow and publishing features through MCP tools, allowing AI assistants to transition stories through workflow stages (draft, in-review, published) and manage publication scheduling. Implements workflow state queries and transitions that respect Storyblok's configured workflow rules, enabling AI to orchestrate content through approval processes or schedule content publication.","intents":["I want the AI to move stories through my approval workflow automatically","I need to schedule story publication for specific dates/times through the AI","I want the AI to check if a story is ready for publication based on workflow state","I need to manage draft vs published versions of stories through AI commands"],"best_for":["Content teams with multi-stage approval workflows who want AI-assisted workflow orchestration","Developers building AI content schedulers and publication pipelines","Organizations automating content release management"],"limitations":["Workflow transitions must respect Storyblok's configured workflow rules; AI cannot bypass approval stages","Publishing scheduling depends on Storyblok's native scheduling capabilities and timezone handling","No webhook integration for workflow state changes — AI must poll for status updates","Workflow history and audit trails are read-only; cannot modify past workflow transitions"],"requires":["Storyblok space with workflows configured","API token with publish/workflow management permissions","Understanding of the space's configured workflow stages"],"input_types":["story identifiers","workflow stage names (strings)","publication timestamps (ISO 8601 format)","publish scope (draft, published)"],"output_types":["structured JSON (workflow state, publication status, scheduled dates)","text (workflow stage names, status messages)","boolean (publication eligibility)"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_4","uri":"capability://search.retrieval.multi.space.and.cross.space.content.discovery","name":"multi-space and cross-space content discovery","description":"Enables AI assistants to query and navigate across multiple Storyblok spaces within an organization, discovering stories, components, and assets across spaces. Implements space enumeration and cross-space search capabilities, allowing AI to find relevant content across the organization's content infrastructure and reference or copy content between spaces when needed.","intents":["I want the AI to search for similar content across all my Storyblok spaces","I need to discover what content exists in other spaces for reuse or reference","I want the AI to copy or migrate content between spaces","I need to understand the organization's content structure across multiple spaces"],"best_for":["Large organizations with multiple Storyblok spaces who need cross-space content discovery","Developers building AI content management dashboards for multi-space organizations","Teams managing content across multiple brands or regions"],"limitations":["Cross-space queries require separate API calls per space; no built-in federation or aggregation","Content copying between spaces may require schema alignment if components differ","API token must have access to all spaces being queried; no per-space token scoping through MCP","Cross-space search is limited to sequential queries; no parallel search optimization"],"requires":["Multiple Storyblok spaces in the same organization","API token with access to all spaces being queried","Organization-level API token or multiple space-level tokens"],"input_types":["space identifiers","search queries (text)","content type filters"],"output_types":["structured JSON (stories, components, assets across spaces)","text (search results, space listings)","aggregated metadata"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_5","uri":"capability://automation.workflow.real.time.content.synchronization.and.change.detection","name":"real-time content synchronization and change detection","description":"Monitors Storyblok spaces for content changes (story updates, asset uploads, component modifications) and exposes change events through MCP, enabling AI assistants to react to content updates in real-time. Implements polling or webhook-based change detection that tracks story versions, asset modifications, and component schema changes, allowing AI to trigger downstream workflows or regenerate dependent content.","intents":["I want the AI to detect when stories are updated and trigger regeneration of dependent content","I need to monitor asset uploads and automatically process new media","I want the AI to track component schema changes and alert on breaking changes","I need to implement real-time content synchronization between Storyblok and external systems"],"best_for":["Content teams with complex content dependencies who need AI-driven change propagation","Developers building real-time content synchronization pipelines","Organizations automating content workflows based on change events"],"limitations":["Polling-based change detection introduces latency (typically 5-60 seconds depending on poll interval)","No native webhook support through MCP — requires external webhook handler or polling fallback","Change history is limited to Storyblok's retention policy; older changes may not be queryable","Change detection granularity is at story/asset level; field-level change tracking not exposed"],"requires":["Storyblok space with content to monitor","API token with read access to story versions and change history","MCP client capable of handling streaming or polling updates"],"input_types":["space identifiers","change type filters (story, asset, component)","time range queries"],"output_types":["structured JSON (change events with timestamps, change types, affected resources)","text (change summaries, notifications)","event streams"],"categories":["automation-workflow","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_6","uri":"capability://memory.knowledge.content.versioning.and.rollback.management","name":"content versioning and rollback management","description":"Provides MCP tools to query story version history, compare versions, and rollback to previous versions when needed. Implements version enumeration and diff capabilities that expose Storyblok's native versioning system, allowing AI assistants to understand content evolution and restore previous versions without manual intervention.","intents":["I want the AI to show me what changed between story versions","I need to rollback a story to a previous version if recent changes are problematic","I want the AI to compare content across versions for quality assurance","I need to understand the history of changes to a story for audit purposes"],"best_for":["Content teams needing version control and rollback capabilities for AI-generated content","Developers building AI content editors with undo/redo functionality","Organizations requiring content audit trails and change tracking"],"limitations":["Version history retention depends on Storyblok plan; older versions may be purged","Rollback operations create new versions rather than reverting to exact historical state","Version comparison is at story level; field-level diffs require additional processing","No branching or merge capabilities — versions are linear"],"requires":["Storyblok space with versioning enabled","API token with read access to version history","For rollback: API token with write permissions"],"input_types":["story identifiers","version numbers or timestamps","comparison parameters"],"output_types":["structured JSON (version metadata, diffs, change summaries)","text (version descriptions, change logs)","boolean (rollback success)"],"categories":["memory-knowledge","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-storyblok__cap_7","uri":"capability://automation.workflow.batch.content.operations.and.bulk.updates","name":"batch content operations and bulk updates","description":"Enables AI assistants to perform bulk operations on multiple stories simultaneously (batch updates, bulk deletes, mass publishing) through MCP tools that handle transaction-like semantics. Implements batch operation queuing and error handling that allows AI to modify large content sets efficiently while maintaining consistency and providing detailed operation reports.","intents":["I want the AI to update multiple stories at once based on a pattern or criteria","I need to bulk publish stories that meet certain conditions","I want to perform mass content migrations or transformations","I need detailed reports on which stories succeeded or failed in batch operations"],"best_for":["Content teams managing large content libraries who need AI-driven bulk operations","Developers building AI content migration and transformation tools","Organizations automating large-scale content updates"],"limitations":["Batch operations are subject to API rate limits; large batches may require throttling","No true transactions — partial failures may leave content in inconsistent state","Batch size limits depend on Storyblok API constraints; very large batches may need splitting","Error recovery requires manual intervention or AI-driven retry logic"],"requires":["Storyblok space with multiple stories","API token with write permissions for bulk operations","MCP client capable of handling long-running operations"],"input_types":["story identifiers (arrays)","update payloads (JSON)","filter criteria (for bulk selection)","operation type (update, delete, publish)"],"output_types":["structured JSON (operation results, success/failure counts, detailed error logs)","text (operation summaries, progress reports)","batch operation status"],"categories":["automation-workflow","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":29,"verified":false,"data_access_risk":"high","permissions":["Storyblok account with at least one space created","Valid Storyblok API token (Personal Access Token or OAuth token)","MCP-compatible AI client (Claude, or custom MCP host)","Network access to Storyblok API endpoints (api.storyblok.com)","Storyblok space with at least one component defined","API token with read access to component definitions","MCP client capable of handling nested JSON schema responses","Storyblok space with asset library enabled","API token with asset read/write permissions","For uploads: file access and appropriate MIME type support"],"failure_modes":["MCP protocol overhead adds ~100-200ms per request compared to direct REST API calls","No built-in caching of story data — each request fetches fresh data from Storyblok","Requires Storyblok API token with appropriate space permissions; no fine-grained role-based access control at MCP layer","Story versioning and draft/published state management depends on Storyblok's native capabilities","Schema introspection is read-only; cannot modify component definitions through MCP","No real-time schema change detection — AI sees schema state at query time, not live updates","Complex nested component relationships may require multiple schema queries to fully resolve","Field validation rules are descriptive only; actual validation still occurs server-side","Asset upload through MCP may have file size limits depending on Storyblok plan and network constraints","No built-in image transformation or optimization — AI must reference assets as-is","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.41,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.52,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-06-17T09:51:04.049Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=storyblok","compare_url":"https://unfragile.ai/compare?artifact=storyblok"}},"signature":"MHVme0GkCZziGAHsdJmuGQuJCUKlsNtW5KAioHUyHcCYZKiHDWa1R//x0HJltVYPyEcN54bsPMFoDVK34iM1Cg==","signedAt":"2026-06-22T04:24:02.418Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/storyblok","artifact":"https://unfragile.ai/storyblok","verify":"https://unfragile.ai/api/v1/verify?slug=storyblok","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}