# complete_asset_upload

A write tool on the Storyblok MCP Server MCP server.

Agent View of the PolicyLayer registry record for `complete_asset_upload`. HTML page: https://policylayer.com/tools/arjuncodess-storyblok-mcp/complete-asset-upload

## Facts

- Tool: `complete_asset_upload`
- Server: Storyblok MCP Server (`arjuncodess/storyblok-mcp`) — https://policylayer.com/tools/arjuncodess-storyblok-mcp.md
- Homepage: https://github.com/ArjunCodess/storyblok-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "complete_asset_upload",
    "arguments": {}
  }
}
```

## Why complete_asset_upload is rated Medium

Asset upload completion is a write operation that creates or modifies media/asset data within the CMS. While it modifies data, it's reversible (assets can be deleted/replaced), so it's categorized as Write rather than Destructive. Medium severity reflects the potential to clutter the CMS with unwanted assets, but limited blast radius compared to destructive operations.

From the tool's own definition: "Tool name 'complete_asset_upload' indicates asset upload completion functionality, which modifies content in the Storyblok CMS."

## Use case

AI agents use complete_asset_upload to create or update resources in Storyblok MCP Server, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Storyblok MCP Server environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Storyblok MCP Server:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "complete_asset_upload": {
      "limits": [
        {
          "counter": "complete_asset_upload_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Storyblok MCP Server (114)

- `delete_access_token` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-access-token.md
- `delete_asset` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-asset.md
- `delete_asset_folder` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-asset-folder.md
- `delete_branch` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-branch.md
- `delete_component` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-component.md
- `delete_component_folder` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-component-folder.md
- `delete_datasource` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-datasource.md
- `delete_datasource_entry` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-datasource-entry.md
- `delete_preset` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-preset.md
- `delete_release` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-release.md
- `delete_space` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-space.md
- `delete_space_role` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-space-role.md
- `delete_story` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-story.md
- `delete_story_scheduling` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-story-scheduling.md
- `delete_tag` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-tag.md
- `delete_webhook` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-webhook.md
- `delete_workflow` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-workflow.md
- `delete_workflow_stage` — Destructive — https://policylayer.com/tools/arjuncodess-storyblok-mcp/delete-workflow-stage.md
- `create_branch_deployment` — Execute — https://policylayer.com/tools/arjuncodess-storyblok-mcp/create-branch-deployment.md
- `deploy_branch` — Execute — https://policylayer.com/tools/arjuncodess-storyblok-mcp/deploy-branch.md
- `backup_space` — Other — https://policylayer.com/tools/arjuncodess-storyblok-mcp/backup-space.md
- `ping` — Other — https://policylayer.com/tools/arjuncodess-storyblok-mcp/ping.md
- `compare_branches` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/compare-branches.md
- `fetch_access_tokens` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-access-tokens.md
- `fetch_asset_folders` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-asset-folders.md
- `fetch_assets` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-assets.md
- `fetch_branch_deployments` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-branch-deployments.md
- `fetch_branches` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-branches.md
- `fetch_component_folders` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-component-folders.md
- `fetch_components` — Read — https://policylayer.com/tools/arjuncodess-storyblok-mcp/fetch-components.md
- …and 84 more: https://policylayer.com/tools/arjuncodess-storyblok-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=arjuncodess-storyblok-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/arjuncodess-storyblok-mcp
