Skip to main content
Glama

Storyblok MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

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