Skip to main content
Glama

Storyblok MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
STORYBLOK_SPACE_IDYesYour Storyblok space ID
STORYBLOK_MANAGEMENT_TOKENYesYour Storyblok management token
STORYBLOK_DEFAULT_PUBLIC_TOKENYesYour Storyblok public token

Schema

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Tools

Functions exposed to the LLM to take actions

NameDescription
fetch_components

Fetches components with server-side filters, sorting, and option to include groups.

get_component

Gets a specific component by ID.

create_component

Creates a new component with all supported fields.

update_component

Updates an existing component with all supported fields.

delete_component

Deletes a component by ID.

get_component_usage

Finds stories where a component is used in content (draft & published).

retrieve_component_versions
Retrieves paginated versions of a component.
retrieve_single_component_version
Retrieves the schema details of a specific component version.
restore_component_version
Restores a component to a previous version.
create_component_folder
Creates a new component folder.
update_component_folder
Updates an existing component folder (component group).
delete_component_folder
Deletes a component folder (component group) by its ID.
fetch_component_folders
Retrieves all component folders (non-paginated), with optional filtering.
retrieve_single_component_folder
Retrieves a single component folder (component group) by its ID.
fetch_stories
Fetch multiple stories from Storyblok with advanced filtering and pagination.
get_story
Retrieves a specific story by its ID.
create_story
Creates a new Storyblok story. Supports all documented fields including publishing.
update_story
Updates an existing Storyblok story by ID. Supports all documented fields including publishing.
delete_story

Deletes a story by ID.

publish_story
Publishes a Storyblok story by its ID.
unpublish_story
Unpublishes a Storyblok story by its ID.
get_story_versions
Retrieves versions (revisions) of stories.
restore_story

Restores a story to a specific version.

validate_story_content
Validates a story's content against a component schema. Either provide story_id (to fetch) or story_content directly.
debug_story_access

Debug access to a specific story via various fetch parameters.

bulk_publish_stories

Publishes multiple stories by ID.

bulk_delete_stories

Deletes multiple stories in Storyblok.

bulk_update_stories

Updates multiple stories in Storyblok, optionally publishing them.

bulk_create_stories

Creates multiple stories in Storyblok.

get_unpublished_dependencies
Retrieves unpublished dependencies for one or more stories.
ai_translate_story
Translates a story's content into a specified language using AI.
compare_story_versions
Compares two versions of a story to identify changes.
fetch_assets
Retrieve multiple assets from Storyblok Management API.
get_asset

Gets a specific asset by ID.

delete_asset

Deletes an asset from Storyblok.

update_asset
Update an existing asset’s metadata or settings.
delete_multiple_assets
Deletes multiple assets by numeric IDs using the Storyblok Management API.
bulk_move_assets
Move multiple assets to a specified folder.
bulk_restore_assets
Restores multiple previously deleted assets
init_asset_upload

Initializes asset upload and returns signed S3 upload URL.

complete_asset_upload

Completes the asset upload process after S3 upload.

retrieve_multiple_tags
Retrieves multiple tags from a specified Storyblok space using the Management API.
create_tag
Creates a new tag in a Storyblok space via the Management API.
update_tag
Updates the name of an existing tag in a Storyblok space.
delete_tag

Deletes a tag from Storyblok.

tag_bulk_association
Adds tags to multiple stories in a Storyblok space.
list_tools

Lists all available tools with their names, descriptions, and total count.

retrieve_multiple_releases
Retrieves multiple releases from a specified Storyblok space.
retrieve_single_release
Retrieves a single release from a specified Storyblok space.
create_release
Creates a new release in a specified Storyblok space.
update_release
Updates an existing release in a specified Storyblok space.
delete_release

Deletes a release.

ping
Checks server health and Storyblok API connectivity.
retrieve_asset_folders
Retrieve a list of asset folders from the current Storyblok space. Parameters: search (Optional[str]): A search query to filter asset folders by name. with_parent (Optional[int]): ID of the parent folder to filter results. by_ids (Optional[List[int]]): Specific folder IDs to fetch. by_uuids (Optional[List[str]]): Specific folder UUIDs to fetch. Returns: Any: The API response with a list of asset folders or an error message.
fetch_asset_folder
Fetch details of a specific asset folder by its ID. Parameters: folder_id (str): ID of the asset folder to retrieve. Returns: Dict[str, Any]: The API response containing the folder data or an error message.
create_asset_folder
Create a new asset folder in the current Storyblok space. Parameters: name (str): Name of the new asset folder. parent_id (Optional[int]): ID of the parent folder (if nested). Request Body Example: { "asset_folder": { "name": "My Folder", "parent_id": 123 } } Returns: Dict[str, Any]: The API response with created folder info or an error message.
update_asset_folder
Update an existing asset folder's name or parent in the current Storyblok space. Parameters: folder_id (str): ID of the folder to update. name (Optional[str]): New name for the folder. parent_id (Optional[int]): New parent folder ID. Request Body Example: { "asset_folder": { "name": "Updated Folder", "parent_id": 456 } } Returns: Dict[str, Any]: A success message or error content depending on response.
delete_asset_folder
Delete an asset folder from the current Storyblok space. Parameters: folder_id (str): ID of the folder to delete. Returns: Dict[str, Any]: A success message or error content depending on response.
retrieve_multiple_datasources
Retrieves multiple datasources from a specified Storyblok space.
retrieve_single_datasource
Retrieves a single datasource from a specified Storyblok space.
create_datasource
Creates a new datasource in a specified Storyblok space.
update_datasource
Updates an existing datasource in a specified Storyblok space.
delete_datasource
Deletes a datasource from a specified Storyblok space.
retrieve_multiple_datasource_entries
Retrieves multiple datasource entries from a specified Storyblok space.
retrieve_single_datasource_entry
Retrieves a single datasource entry via the Storyblok Management API.
create_datasource_entry
Creates a new datasource entry in a specified Storyblok space.
update_datasource_entry
Updates an existing datasource entry in a specified Storyblok space.
delete_datasource_entry
Deletes a datasource entry from a specified Storyblok space using the Management API.
fetch_spaces
Retrieve all accessible spaces.
get_space
Fetch a specific space by ID.
create_space
Creates a new Storyblok space via the Management API.
update_space
Updates an existing Storyblok space via the Management API.
duplicate_space
Duplicates an existing Storyblok space via the Management API.
backup_space
Triggers a backup task for a Storyblok space using Management API.
delete_space
Permanently deletes a Storyblok space using the Management API.
fetch_space_roles
Retrieves multiple space roles for a given space.
get_space_role
Retrieve a single space role by ID via the Storyblok Management API.
create_space_role
Creates a new custom space role with specific permissions.
update_space_role
Updates a space role's configuration via the Storyblok Management API.
delete_space_role
Deletes a space role using the Storyblok Management API.
retrieve_multiple_presets
Retrieves multiple presets from a Storyblok space using the Management API. Optionally filters by component_id.
retrieve_single_preset
Retrieves a single preset from a Storyblok space using the Management API.
create_preset
Creates a new preset in a Storyblok space via the Management API.
update_preset
Updates an existing preset in a Storyblok space via the Management API.
delete_preset
Deletes a preset from a Storyblok space using the Management API. - preset_id: Numeric ID of the preset to delete.
retrieve_multiple_access_tokens
Retrieve all access tokens for the current Storyblok space using the Management API. Returns: Any: The API response containing a list of access tokens or an error message.
create_access_token
Create a new access token in the current Storyblok space via the Management API. Request Body: access (str): The access level for the token (e.g., 'draft', 'published'). name (Optional[str]): Optional name for the token. branch_id (Optional[int]): Optional branch ID to associate with the token. story_ids (Optional[List[int]]): Optional list of story IDs to restrict access. min_cache (Optional[int]): Optional minimum cache time in seconds. Returns: Any: The API response containing the created access token or an error message.
update_access_token
Update an existing access token in the current Storyblok space via the Management API. Params: token_id (int): The ID of the access token to update. Request Body: access (Optional[str]): New access level for the token. name (Optional[str]): New name for the token. branch_id (Optional[int]): New branch ID to associate with the token. story_ids (Optional[List[int]]): New list of story IDs to restrict access. min_cache (Optional[int]): New minimum cache time in seconds. Returns: Any: A success message or an error message.
delete_access_token
Delete an access token from the current Storyblok space using the Management API. Params: token_id (int): The ID of the access token to delete. Returns: Any: A success message or an error message.
retrieve_multiple_workflows
Retrieves all workflows in a Storyblok space via the Management API. Optionally filter by content type (e.g., 'page', 'article', etc.)
retrieve_single_workflow
Retrieves a single workflow by its ID in a Storyblok space via the Management API.
create_workflow
Creates a new workflow in a Storyblok space via the Management API.
update_workflow
Updates an existing workflow in a Storyblok space via the Management API.
duplicate_workflow
Duplicates an existing workflow in a Storyblok space via the Management API.
delete_workflow
Deletes a workflow by its ID in a Storyblok space via the Management API. The default workflow cannot be deleted.
retrieve_multiple_workflow_stages
Retrieves multiple workflow stages in a Storyblok space via the Management API. - space_id: Numeric ID of the space. - exclude_id: ID of a workflow stage to exclude. - by_ids: Comma-separated list of workflow stage IDs to retrieve. - search: Filter by workflow stage name. - in_workflow: Filter by a specific workflow ID.
retrieve_single_workflow_stage
Retrieves a single workflow stage by its ID in a Storyblok space via the Management API.
create_workflow_stage
Creates a new workflow stage in a Storyblok space via the Management API.
update_workflow_stage
Updates an existing workflow stage in a Storyblok space via the Management API.
delete_workflow_stage
Deletes a workflow stage in a Storyblok space via the Management API.
retrieve_multiple_workflow_stage_changes
Retrieves multiple workflow stage changes in a Storyblok space via the Management API.
create_workflow_stage_change
Creates a new workflow stage change for a story in a Storyblok space via the Management API.
retrieve_multiple_story_schedules
Retrieves multiple story scheduling entries in a Storyblok space via the Management API. - by_status: Optional status filter ("published_before_schedule" or "scheduled").
retrieve_one_story_schedule
Retrieves a single story schedule entry by its ID in a Storyblok space via the Management API. - story_scheduling_id: Numeric ID of the schedule to retrieve.
create_story_schedule
Creates a new story schedule via the Storyblok Management API. - story_id: Numeric ID of the story to be scheduled. - publish_at: ISO‑8601 date/time string in UTC (e.g., "2025‑06‑20T15:30:00Z"). - language: Optional language code (e.g., "en", "pt‑br").
update_story_schedule
Updates an existing story schedule via the Storyblok Management API. - space_id: Numeric ID of the Storyblok space. - story_scheduling_id: Numeric ID of the schedule to update. - publish_at: New ISO‑8601 UTC date/time string. - language: Optional new language code.
delete_story_schedule
Deletes a story schedule entry via the Storyblok Management API.
retrieve_multiple_branches
Retrieves multiple branches (pipelines) in a Storyblok space via the Management API. - by_ids: Optional comma-separated list of branch IDs to filter. - search: Optional filter term for branch names.
retrieve_single_branch
Retrieves a single branch (pipeline) by its ID via the Storyblok Management API. - branch_id: Numeric ID of the branch to retrieve.
create_branch
Creates a new branch (pipeline) in a Storyblok space via the Management API. - name: Required name for the new branch. - source_id: Optional ID of an existing branch to clone. - url: Optional preview URL for the branch. - position: Optional numeric position for ordering.
update_branch
Updates an existing branch (pipeline) in a Storyblok space via the Management API. - branch_id: Numeric ID of the branch to update. Optional fields: - name: New branch name - source_id: Set/clear source branch (clone origin) - url: Preview URL - position: Position ordering number
delete_branch
Deletes a branch (pipeline) by its ID in a Storyblok space. - branch_id: Numeric ID of the branch to delete.
create_branch_deployment
Triggers a deployment of specified releases to a given branch (pipeline stage). - branch_id: Numeric ID of the branch to deploy to. - release_uuids: List of release UUIDs to deploy.
retrieve_multiple_discussions
Retrieves multiple discussions for a specific story in a Storyblok space. - story_id: Numeric ID of the story. - per_page: Number of discussions per page (default: 25, max: 100). - page: Page number to retrieve (default: 1). - by_status: Filter discussions by status (e.g., 'unsolved', 'solved').
retrieve_specific_discussion
Retrieves a specific discussion by its ID in a Storyblok space. - discussion_id: Numeric ID of the discussion.
retrieve_idea_discussions_comments
Retrieves comments for a specific idea discussion in a Storyblok space. - discussion_uuid: UUID of the discussion in the idea.
create_discussion
Creates a new discussion for a story via the Storyblok Management API. Required: - story_id: ID of the story - title: Title of the discussion field - fieldname: Technical name of the discussion field - block_uid: ID of the discussion block - component: Component/block name this discussion belongs to - lang: Language code (e.g., "default", "en") - message_json: Array of message objects [{"type": "text", "text": "...", "attrs": {...}}, ...]
retrieve_my_discussions
Retrieves discussions you're involved in within a Storyblok space. - space_id: Numeric ID of the space. - page: Page number (default 1). - per_page: Items per page (default 25, max 100). - by_status: Filter discussions by status ('unsolved' or 'solved').
resolve_discussion
Marks a discussion as resolved via the Storyblok Management API. - discussion_id: Numeric ID of the discussion. - solved_at: Timestamp when the discussion is resolved (ISO 8601 format).
retrieve_multiple_comments
Retrieves all comments from a specific discussion via the Storyblok Management API. - discussion_id: Numeric ID of the discussion.
create_comment
Adds a comment to a discussion via the Storyblok Management API. - discussion_id: Numeric ID of the discussion. - message_json: Required array of message objects. Each must include "type", "text", and "attrs". - message: Optional plain-text field (can be null or string).
update_comment
Updates a comment in a discussion via the Storyblok Management API. Required: - discussion_id: Numeric ID of the discussion. - comment_id: Numeric ID of the comment. Payload: - message_json: Required. Array of message objects, each with keys "type", "text", "attrs". - message: Optional string or null.
delete_comment
Deletes a comment from a discussion via the Storyblok Management API. - discussion_id: Numeric ID of the discussion. - comment_id: Numeric ID of the comment.
retrieve_multiple_tasks
Retrieves multiple tasks from a specified Storyblok space using the Management API.
retrieve_single_task
Retrieves a single task from a specified Storyblok space using the Management API.
create_task
Creates a new task in a specified Storyblok space using the Management API.
update_task
Updates an existing task in a specified Storyblok space using the Management API.
delete_task
Deletes an existing task in a specified Storyblok space using the Management API.
retrieve_multiple_webhooks
Retrieves multiple webhook endpoints from a specified Storyblok space using the Management API.
retrieve_single_webhook
Retrieves a single webhook from a specified Storyblok space using the Management API.
add_webhook
Adds a new webhook to a specified Storyblok space using the Management API.
update_webhook
Updates an existing webhook endpoint in a specified Storyblok space.
delete_webhook
Deletes an existing webhook endpoint in a specified Storyblok space.
retrieve_multiple_internal_tags
Retrieves internal tags (asset/component) from a specified Storyblok space. - by_object_type: 'asset' or 'component' to filter tags. - search: optional substring to search by tag name.
create_internal_tag
Creates a new internal tag in a specified Storyblok space. :param name: Name of the internal tag. :param object_type: Optional. 'asset' or 'component'.
update_internal_tag
Updates an internal tag (asset/component) in a specified Storyblok space. :param space_id: ID of the Storyblok space. :param internal_tag_id: Numeric ID of the internal tag. :param name: Optional new name for the internal tag. :param object_type: Optional new object type ("asset" or "component").
delete_internal_tag
Deletes an internal tag (asset/component) in a specified Storyblok space. :param internal_tag_id: Numeric ID of the internal tag to delete.
retrieve_multiple_collaborators
Retrieves a paginated list of collaborators (users) in a specified Storyblok space.
add_collaborator
Adds a collaborator to a space in Storyblok. Use either `role` (string) OR `space_role_id` (int) OR `space_role_ids` (list[int]).
update_collaborator
Updates roles, permissions, or access paths for an existing collaborator.
delete_collaborator
Deletes a collaborator from a specified Storyblok space. You can delete by numeric collaborator_id or by sso_id for SSO users.
retrieve_multiple_approvals
Retrieves multiple approvals from a specified Storyblok space. :param approver: Optional approver user ID to filter approvals.
retrieve_single_approval
Retrieves a single approval by its ID from a specified Storyblok space.
create_approval
Creates an approval request for a story (and optional release) in a Storyblok space. :param story_id: Numeric ID of the content entry to be approved. :param approver_id: Numeric ID of the user who will approve it.
create_release_approval
Creates a release approval for a given story and release. :param story_id: ID of the story/content entry to approve. :param approver_id: ID of the user who will approve the release. :param release_id: ID of the release to include in the approval (optional).
delete_approval
Deletes an approval from a specified Storyblok space. :param approval_id: Numeric ID of the approval to delete.
retrieve_multiple_activities
Retrieves activity logs for a specified Storyblok space. Optional filters: - created_at_gte / created_at_lte: 'YYYY-MM-DD' date strings - by_owner_ids: list of user IDs - types: list of activity types (e.g. 'Story', 'Component', 'Asset')
retrieve_single_activity
Retrieves a single activity log by its ID from a specified Storyblok space.
retrieve_all_extensions
Retrieves all extensions (plugins) from the specified context. Args: context (str): The context to retrieve extensions from. Options are 'org' for organization-level or 'partner' for partner-level extensions.
retrieve_extension
Retrieves the settings of a specific extension by its numeric ID. Args: extension_id (int): The numeric ID of the extension. context (str): The context to retrieve the extension from. Options are 'org' for organization-level or 'partner' for partner-level extensions.
create_extension
Creates a new extension in the specified context (organization or partner).
update_extension
Updates an existing extension in the specified context (organization or partner).
delete_extension
Deletes an existing extension in the specified context (organization or partner).
retrieve_extension_settings
Retrieve settings for a specific extension in a space.
retrieve_all_extension_settings
Retrieve settings for all extensions installed in a space.
retrieve_field_plugins
Retrieves multiple field plugins (field types) across different contexts. Args: context (str): 'space', 'org', or 'partner' only_mine (int): 1 = only plugins created by authenticated user page (int): pagination page number per_page (int): plugins per page (max 100) search (str): search filter for plugin name or slug
retrieve_field_plugin
Retrieves a single field plugin by its ID in the specified context. Args: field_type_id (int): Numeric ID of the field plugin. context (str): 'space', 'org', or 'partner'.
create_field_plugin
Creates a new field plugin (field type) in the specified context. Args: name (str): Unique name for your plugin (e.g., 'my-geo-selector'). body (str): The uncompiled JavaScript source for the plugin. compiled_body (str): Required; empty string if developing locally. context (str): 'space', 'org', or 'partner'.
update_field_plugin
Updates an existing field plugin in the specified context. Args: field_type_id: Numeric ID of the field plugin. body: Updated uncompiled JS source. compiled_body: Updated compiled JS source. name: Optional new name (must still be unique). options: Optional config options for the plugin. space_ids: Optional space assignment list. context: 'space', 'org', or 'partner'.
delete_field_plugin
Deletes a field plugin by its ID. Args: field_type_id (int): Numeric ID of the field plugin to delete.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kiran1689/storyblok-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server