Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_API_KEY | No | Optional private access key to secure the server when running in SSE mode. | |
| STORYBLOK_REGION | No | The Storyblok region (eu, us, ca, ap, cn). Default is eu. | eu |
| STORYBLOK_API_BASE | No | Override API base URL (if proxying the Storyblok Management API) | |
| STORYBLOK_SPACE_ID | Yes | Your Storyblok space ID | |
| STORYBLOK_MANAGEMENT_TOKEN | Yes | Management API token |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fetch_stories | List stories with optional filters: content_type, search, per_page, page, with_slug, is_startpage. |
| get_story | Get a single story by UUID. |
| create_story | Create a new story. Pass story as JSON object with name, slug, content, parent_id, etc. Optional publish=1 to publish. |
| update_story | Update an existing story. Pass story object with fields to update. |
| delete_story | Delete a story permanently. |
| publish_story | Publish a story. Optional lang, release_id. |
| unpublish_story | Unpublish a story. Optional lang. |
| get_story_versions | List versions of a story. |
| duplicate_story | Duplicate a story. |
| restore_story_version | Restore a story version. |
| translate_story | Translate a story using AI. Optional lang_code. |
| fetch_tags | List all tags in the space. |
| create_tag | Create a tag. Optionally link to a story via story_id. |
| create_tag_and_add_to_story | Create a tag and add it to a story. If the tag exists, it is linked. |
| add_existing_tag_to_story | Add an existing tag to a story by tag name. |
| update_tag | Update a tag by ID. |
| delete_tag | Delete a tag by ID. |
| fetch_components | List components. Optional per_page, page. |
| get_component | Get a component by ID. |
| create_component | Create a component. Pass component object with name, display_name, schema, etc. |
| update_component | Update a component by ID. |
| delete_component | Delete a component by ID. |
| fetch_assets | List assets. Optional folder_id, per_page, page, filter_query. |
| get_asset | Get an asset by ID. |
| update_asset | Update asset metadata: filename, asset_folder_id, alt, title, copyright, etc. |
| delete_asset | Delete an asset by ID. |
| bulk_move_assets | Move multiple assets to a folder. |
| bulk_delete_assets | Delete multiple assets. |
| bulk_restore_assets | Restore multiple deleted assets. |
| fetch_releases | List releases. Optional per_page, page. |
| get_release | Get a release by ID. |
| create_release | Create a release. Pass name and optional story_ids, scheduled_at. |
| update_release | Update a release. |
| delete_release | Delete a release by ID. |
| fetch_workflows | List workflows in the space. |
| get_workflow | Get a workflow by ID. |
| create_workflow | Create a workflow. Pass name and optional stages. |
| update_workflow | Update a workflow. |
| delete_workflow | Delete a workflow by ID. |
| fetch_workflow_stages | List workflow stages for a workflow. |
| fetch_webhooks | List webhooks in the space. |
| get_webhook | Get a webhook by ID. |
| create_webhook | Create a webhook. Pass name, url, and optional events, description, secret. |
| update_webhook | Update a webhook. |
| delete_webhook | Delete a webhook by ID. |
| fetch_datasources | List datasources. Optional per_page, page. |
| get_datasource | Get a datasource by ID. |
| create_datasource | Create a datasource. Pass name, slug, and optional dimensions. |
| update_datasource | Update a datasource. |
| delete_datasource | Delete a datasource by ID. |
| fetch_datasource_entries | List entries for a datasource. Optional dimension, per_page, page. |
| create_datasource_entry | Create a datasource entry. Pass name, value, and optional dimension. |
| update_datasource_entry | Update a datasource entry. |
| delete_datasource_entry | Delete a datasource entry. |
| get_space | Get the current space details (the one from STORYBLOK_SPACE_ID). |
| update_space | Update space settings. Pass an object with name, domain, plan, etc. |
| list_tools | List all available Storyblok MCP tools by category. No API call. |
| ping | Health check. Verifies env and optionally the Storyblok API. Set check_api=1 to call the API. |
| fetch_asset_folders | List asset folders. Optional per_page, page. |
| get_asset_folder | Get an asset folder by ID. |
| create_asset_folder | Create an asset folder. Pass name and optional parent_id. |
| update_asset_folder | Update an asset folder. |
| delete_asset_folder | Delete an asset folder by ID. |
| fetch_component_folders | List component folders. Optional per_page, page. |
| create_component_folder | Create a component folder. Pass name. |
| update_component_folder | Update a component folder. |
| delete_component_folder | Delete a component folder by ID. |
| fetch_users | List users in the space. |
| fetch_roles | List roles in the space. |
| fetch_activity_log | List activity log. Optional per_page, page, user_id. |
| fetch_tasks | List tasks. Optional per_page, page, story_id. |
| create_task | Create a task. Pass name, description, assigned_to_user_id, story_id, etc. |
| update_task | Update a task by ID. |
| delete_task | Delete a task by ID. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| stories-list | List of all stories |