## What Does It Do?
With the Storyblok MCP Server, your AI assistant can:
- **Create** - Create new stories, components, assets, datasources, tags, releases, workflows, and more.
- **Read** - Read all your stories, components, assets, datasources, tags, releases, workflows, and more.
- **Update** - Update existing/new stories, components, assets, datasources, tags, releases, workflows, and more.
- **Delete** - Delete specific/all your stories, components, assets, datasources, tags, releases, workflows, and more.
---
## 🚀 Features
- **Full Storyblok Management**: CRUD for stories, components, assets, datasources, tags, releases, workflows, and more.(Covered everything)
- **Modular Tooling**: Each Storyblok resource is managed by its own tool module for easy extension and maintenance.
- **Meta Tool**: Discover all available tools and their descriptions at runtime.
- **Async & Fast**: Built on `httpx` and `FastMCP` for high performance.
- **Environment-based Config**: Securely manage tokens and space IDs via `.env`.
- **Bulk Operations**: Efficiently update, delete, or publish multiple resources at once.
---
## 📦 Project Structure
```
├── config.py # Loads and validates environment config
├── server.py # Main entrypoint, registers all tools
├── tools/ # All modular tool implementations
│ ├── components.py # Component CRUD and usage
│ ├── stories.py # Story CRUD, bulk ops, validation
│ ├── ... # (assets, tags, releases, workflows, etc.)
│ └── meta.py # Meta tool for tool discovery
├── utils/
│ └── api.py # API helpers, error handling, URL builders
├── .env # Your Storyblok tokens and space ID
├── pyproject.toml # Python dependencies
└── README.md # This file
```
---
## 🚀 API Coverage
| Resource | Description |
|----------------------------|--------------------------------------------------|
| Access Tokens | Manage access tokens for Storyblok API |
| Activities | Manage or retrieve activity logs |
| Approvals | Manage approval workflows |
| Assets | Manage assets (upload, update, delete, list) |
| Assets Folder | Manage asset folders |
| Branch Deployments | Manage branch deployments |
| Collaborators | Manage collaborators in a space |
| Components | Manage Storyblok components (CRUD, schema, etc.) |
| Components Folder | Manage folders for components |
| Datasource Entries | Manage entries in data sources |
| Data Sources | Manage data sources (CRUD, entries) |
| Discussions | Manage discussions and comments |
| Extensions | Manage Storyblok extensions |
| Field Plugins | Manage custom field plugins |
| Internal Tags | Manage internal tags for assets/stories |
| Meta | Meta tool: discover all available tools |
| Ping | Health check and server status |
| Pipelines | Manage pipelines for content delivery |
| Presets | Manage field presets for components |
| Releases | Manage releases (create, update, publish) |
| Scheduling Stories | Schedule stories for publishing |
| Space | Manage Storyblok space settings and info |
| Space Roles | Manage roles and permissions in a space |
| Stories | Manage stories (CRUD, bulk ops, validation) |
| Tags | Manage tags (CRUD, bulk association) |
| Tasks | Manage tasks (CRUD, webhooks, automation) |
| Webhooks | Manage webhooks (CRUD, trigger) |
| Workflows | Manage workflows and workflow stages |
| Workflow Stage | Manage individual workflow stages |
| Workflow Stage Changes | Track and manage workflow stage changes |
---
## 🪄 Available Tools
### Access Tokens