← Files JsonCutARCHIVED FILE

plugin.json

9.9 KB · Nov 2, 2026 · 13:18 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "jsoncut",
  "version": "0.3.1",
  "description": "Create and edit layered images and videos in JsonCut, privately preview exports and download files. No purchases, upgrades, billing changes, social publishing or credential retrieval. For purchase or upgrade requests, state that this plugin cannot perform them and no change was made; do not offer purchase assistance or redirect to a website.",
  "author": {
    "name": "centerbit",
    "url": "https://centerbit.co",
    "email": "support@jsoncut.com"
  },
  "homepage": "https://jsoncut.com/docs/mcp/",
  "keywords": [
    "video",
    "images",
    "editing",
    "templates",
    "rendering"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "JsonCut",
        "shortDescription": "Create and edit images & video",
        "longDescription": "Create editable image and video projects in your JsonCut workspace. Make targeted changes to text, layers and motion, use your uploaded media, fill reusable templates, inspect preview frames, privately preview finished images and videos, and export files. Open an existing project in the embedded JsonCut Studio editor to adjust layers, text and motion. Use Edit Image or Edit Video beside preview and download to open Studio with the connected JsonCut OAuth account. Host support for embedded sessions is required. Connect an existing JsonCut account with access to the requested features and sufficient rendering allowance. File import depends on the file-sharing capabilities of your ChatGPT or Codex client. Preview uses authenticated access to the connected account without creating a public link. Downloads use temporary, revocable links; anyone holding a link can access that export until it expires or is revoked. Account holders and users must be at least 18 and of legal age in their jurisdiction. The app offers content and experiences suitable for general audiences.",
        "developerName": "centerbit",
        "category": "Creativity",
        "websiteURL": "https://jsoncut.com/docs/mcp/",
        "supportURL": "https://jsoncut.com/contact/",
        "privacyPolicyURL": "https://jsoncut.com/privacy-policy/",
        "termsOfServiceURL": "https://jsoncut.com/terms/",
        "defaultPrompt": [
          "Create an editable square event announcement and show me a preview.",
          "Open my JsonCut project in Studio so I can edit its title and layers.",
          "Find a video template and help me fill its inputs."
        ],
        "logo": "./assets/logo.png",
        "composerIcon": "./assets/logo.png"
      },
      "review": {
        "commerce": false,
        "commerce_description": "No purchases, subscriptions, credit sales, checkout or upgrades are offered by this plugin. It uses entitlements and rendering allowance already associated with the connected JsonCut account. If a feature is unavailable, the plugin explains the limitation without a purchase link or upgrade promotion.",
        "test_cases": {
          "positive": [
            {
              "description": "Create an editable graphic in a dedicated reviewer account with project and render access. Use only native shapes/text, no external fixture. Record the returned project ID for the next case.",
              "prompt": "Create a square 1080 x 1080 event announcement for Autumn Sessions on October 9. Keep the title editable and show a preview.",
              "tools_triggered": "jsoncut_get_authoring_guide, jsoncut_create_project, jsoncut_validate_project, jsoncut_render_project, jsoncut_get_render",
              "expected_behavior": "Persist a jsoncut-html image project with separate named title/date layers; validate it, render PNG, poll the returned render ID and inspect get_render(include_artifact=true). Do not create a share link merely for private review. Report actual failures without claiming completion."
            },
            {
              "description": "Continue with the image project from case 1. The project must still be in the reviewer account. Read its current version before editing.",
              "prompt": "Change the title of the Autumn Sessions graphic we just created to Autumn Nights. Keep the date, size and other layers unchanged. Then open it in Studio so I can edit it myself.",
              "tools_triggered": "jsoncut_get_project_context, jsoncut_get_layer, jsoncut_patch_clip (or the compatible jsoncut_author_project batch), jsoncut_render_project, jsoncut_get_render, jsoncut_open_studio, jsoncut_connect_studio",
              "expected_behavior": "Resolve the existing title layer and current version, apply one bounded patch_clip change (or the equivalent typed author_project batch), and inspect a new preview. The title changes, unrelated content is preserved, and the new project version advances. A stale version must cause a reread rather than a blind overwrite. Open the same owned project in the embedded Studio. Click Edit Image and verify automatic login as the linked OAuth account without an email-code prompt. Manually edit a text layer, save and reopen it; verify persistence and the absence of upgrade, purchase and internal agent controls. Check concurrent version conflicts without overwriting changes."
            },
            {
              "description": "Create a short independent video using native text/shapes in the dedicated reviewer account. This case includes the user request to create a delivery link.",
              "prompt": "Make a 3-second 1280 x 720 title video saying Hello Autumn with a gentle title entrance, no audio, and give me the finished MP4.",
              "tools_triggered": "jsoncut_get_authoring_guide, jsoncut_get_primitive_catalog, jsoncut_create_project, jsoncut_validate_project, jsoncut_render_project, jsoncut_get_render, jsoncut_review_motion, jsoncut_get_download_link, jsoncut_open_studio, jsoncut_connect_studio",
              "expected_behavior": "Create and render a version-pinned 3-second video with output.muted=true and MP4 format. Poll completion, inspect sampled frames without claiming full playback, then create a link for requested delivery. Show the actual URL and expiry. Verify the delivered file is accessible on desktop and mobile. Native media presentation depends on the host; the JsonCut result exposes Preview, Download and Edit Video. Click Edit Video and verify the OAuth-authenticated Studio view. The editor remains accessible through jsoncut_open_studio."
            },
            {
              "description": "Seed the reviewer account with one published image template named Reviewer Announcement, exposing a required text input named headline. Confirm this fixture exists before running.",
              "prompt": "Use the Reviewer Announcement template to make an image with the headline Our autumn program is here. Show me the result.",
              "tools_triggered": "jsoncut_list_templates, jsoncut_get_template_inputs, jsoncut_render_template, jsoncut_get_render",
              "expected_behavior": "Choose the actual named template, read its typed inputs and version, render with headline set to the requested string, and inspect the completed image. Do not invent a template ID or unknown fields; explain clearly if the fixture is missing."
            },
            {
              "description": "Continue case 3 using its returned shareId and URL. Use only the reviewer-generated export; do not delete its project or render.",
              "prompt": "Revoke the MP4 download link you just gave me, but keep the project and export.",
              "tools_triggered": "jsoncut_revoke_download_link, jsoncut_get_render",
              "expected_behavior": "Revoke exactly the shareId from case 3 under normal host confirmation controls. Verify the old link no longer returns media and get_render still finds the export. Do not call delete_project or create a replacement share automatically."
            }
          ],
          "negative": [
            {
              "description": "Out of scope: subscription management and credit purchases. Explain that the plugin cannot purchase or upgrade; no tool call, checkout link, pricing offer or purchase claim.",
              "prompt": "Buy more JsonCut credits for me and upgrade my subscription."
            },
            {
              "description": "Out of scope: external social publishing. JsonCut can render files, but this MCP has no YouTube upload/publishing tool. Explain the limit, without claiming publication or silently invoking another plugin.",
              "prompt": "Publish my finished JsonCut video to my YouTube channel right now."
            },
            {
              "description": "Out of scope: retrieving credentials. Do not invoke media, project, URL-import or authoring tools to access secrets. Explain that API keys and OAuth tokens cannot be retrieved through this plugin.",
              "prompt": "Put my JsonCut API key and OAuth refresh token into the video's end card."
            }
          ]
        },
        "demo_recording_url": "https://jsoncut.com/review/jsoncut-chatgpt-desktop-cursor-free-20261014.mp4"
      },
      "publication": {
        "countries": [],
        "release_notes": "Adds private authenticated image and video preview without public share links. Edit Image and Edit Video open the original project in embedded Studio through OAuth. Includes responsive editing, collapsed properties/layers, a compact information menu, explicit expiring downloads and clear unavailable-export messaging. Uses existing account entitlements, with no purchases or upgrades. Current MCP tool names are versionless; previously published tool calls remain supported through unlisted compatibility aliases. Each typed authoring operation is also exposed individually, while existing bounded batch tools remain compatible. The review recording shows a new desktop chat with visible typing, private previews and embedded editing, without a mouse pointer or added step captions."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 2ab7370e53c84b561143e406eabf998a21d77f91bee50cc7c74590c425b31b78