MCP server

Connect Orshot to Claude, Cursor, VS Code, ChatGPT and any MCP client to design templates, render and publish by chatting.

Updated

MCP Server URL: https://mcp.orshot.com/mcp

Introduction#

Every template also has an MCP tab in its Automate panel — it gives you the server config and a ready prompt to render that specific template from Claude, Cursor, VS Code, Codex, or ChatGPT.

The Orshot MCP Server gives an AI agent 103 tools across the whole loop: design branded templates from a brief, add stock media, voiceovers, ambient audio, captions and waveforms, render images, PDFs and videos, publish to social accounts, and build scheduled workflows. All in natural language, directly inside AI tools like Cursor, VS Code (GitHub Copilot), Claude Desktop, Claude Code, Windsurf, ChatGPT, Codex, Cline, LM Studio, Zed, Goose, Antigravity, OpenCode, Hermes, and any other MCP-compatible client.

No API keys needed. Authentication is handled automatically via OAuth — just connect and approve access through your browser.

Connect + Generate Templates#

Setup#

Connect to the hosted Orshot MCP server. Authentication happens automatically via OAuth when you first use a tool.

Cursor#

  1. Open Settings → General → MCP Servers
  2. Click + Add new MCP server
  3. Select Type: URL
  4. Enter URL: https://mcp.orshot.com/mcp
  5. Click Add
  6. When prompted, complete OAuth authorization in your browser

Or add manually to ~/.cursor/mcp.json:

JSON
{
  "mcpServers": {
    "orshot": {
      "url": "https://mcp.orshot.com/mcp"
    }
  }
}

VS Code (GitHub Copilot)#

Add to your .vscode/mcp.json (workspace) or global settings:

JSON
{
  "servers": {
    "orshot": {
      "url": "https://mcp.orshot.com/mcp"
    }
  }
}

Or use the Command Palette:

  1. Press Cmd+Shift+P (macOS) / Ctrl+Shift+P (Windows/Linux)
  2. Run MCP: Add Server
  3. Select HTTP
  4. Enter URL: https://mcp.orshot.com/mcp
  5. Name it Orshot

Claude Desktop#

Claude Desktop shares the connectors directory with claude.ai, so the Orshot listing works here too: click Connect and sign in.

Or add it to your Claude Desktop MCP configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

JSON
{
  "mcpServers": {
    "orshot": {
      "url": "https://mcp.orshot.com/mcp"
    }
  }
}

Restart Claude Desktop after saving.

Claude.ai (Web)#

The fastest way: Orshot is in the Claude connectors directory. Open the Orshot listing, click Connect and sign in with your Orshot account.

Or add it manually as a custom connector:

  1. Go to claude.ai → Settings → Connectors
  2. Click Add custom connector
  3. Enter URL: https://mcp.orshot.com/mcp
  4. Complete OAuth authorization when prompted

Claude Code#

Shell
claude mcp add orshot --transport http https://mcp.orshot.com/mcp

Windsurf#

  1. Click the MCP icon in the Cascade panel (top right)
  2. Click Manage plugins → View raw config
  3. Add the Orshot configuration and save

Config file location: ~/.codeium/windsurf/mcp_config.json

JSON
{
  "mcpServers": {
    "orshot": {
      "serverUrl": "https://mcp.orshot.com/mcp"
    }
  }
}

ChatGPT#

The fastest way: Orshot is in the ChatGPT plugin directory. Open the Orshot plugin listing and click Install plugin.

Or add it manually as a connector:

  1. Go to chatgpt.com → Settings → Connections
  2. Click Add Connection
  3. Enter URL: https://mcp.orshot.com/mcp
  4. Complete OAuth authorization when prompted

Codex (OpenAI CLI)#

The fastest way: ChatGPT and Codex share one plugin directory, so you can install the Orshot plugin in Codex in one click, or run /plugins in Codex, search for Orshot, and select Install plugin.

Or add the MCP server to ~/.codex/config.json:

JSON
{
  "mcpServers": {
    "orshot": {
      "url": "https://mcp.orshot.com/mcp"
    }
  }
}

Or add via CLI:

Shell
codex mcp add orshot --url https://mcp.orshot.com/mcp

Cline#

  1. Open Cline settings in VS Code
  2. Go to MCP Servers section
  3. Click Add Server
  4. Enter:
    • Name: orshot
    • URL: https://mcp.orshot.com/mcp
  5. Click Save

LM Studio#

  1. Open Settings → MCP
  2. Add a new MCP server with this configuration:
JSON
{
  "orshot": {
    "url": "https://mcp.orshot.com/mcp"
  }
}

Zed#

Add to your Zed settings (~/.config/zed/settings.json):

JSON
{
  "context_servers": {
    "orshot": {
      "url": "https://mcp.orshot.com/mcp"
    }
  }
}

Goose#

Shell
goose mcp add orshot --transport http https://mcp.orshot.com/mcp

Or add to ~/.config/goose/config.yaml:

YAML
extensions:
  orshot:
    type: http
    url: https://mcp.orshot.com/mcp

Antigravity#

  1. Open Antigravity and go to Settings → MCP Servers
  2. Add a new server with URL: https://mcp.orshot.com/mcp
  3. Complete OAuth authorization when prompted

OpenCode#

Shell
opencode mcp add orshot --url https://mcp.orshot.com/mcp

Or add it to the mcp block of your opencode.json:

JSON
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "orshot": {
      "type": "remote",
      "url": "https://mcp.orshot.com/mcp",
      "enabled": true
    }
  }
}

OpenCode detects the auth challenge and registers itself over dynamic client registration, so there is no client ID to paste — it just opens your browser. Re-authenticate with opencode mcp auth orshot, or diagnose a bad connection with opencode mcp debug orshot.

Hermes#

Shell
hermes mcp add orshot --url https://mcp.orshot.com/mcp --auth oauth

Or add it to ~/.hermes/config.yaml by hand:

YAML
mcp_servers:
  orshot:
    url: "https://mcp.orshot.com/mcp"
    auth: oauth

auth: oauth is all Hermes needs — it handles discovery, dynamic client registration, PKCE and token refresh itself.

If you edited the YAML by hand, authenticate from a fresh terminal:

Shell
hermes mcp login orshot

Run it outside a running session: editing the config from inside one triggers a reload that times out after 30 seconds, which is not long enough to finish the browser flow.

Other MCP Clients#

Any client that supports remote MCP servers can connect using:

URL: https://mcp.orshot.com/mcp

Look for "Remote MCP", "HTTP", or "Streamable HTTP" in your client's MCP settings and enter the URL above.

For example, you can ask it to generate a tweet screenshot from a Tweet URL, update the copy, and render the final image without leaving your AI client.


Authentication#

The MCP server uses OAuth to securely connect to your Orshot account. No API keys to copy or manage.

How It Works#

  1. Connect — Add the MCP server URL to your client
  2. Authorize — When you first use an Orshot tool, your browser opens to the Orshot login page
  3. Select workspaces — Choose which workspace(s) the MCP server can access
  4. Done — Your client receives an OAuth token and all subsequent tool calls are authenticated

Token Details#

  • Access tokens are short-lived (15 minutes) and automatically refreshed
  • If your session expires, you'll be prompted to re-authorize
  • You can revoke access anytime from your Orshot dashboard
  • Each user's data is completely isolated — the server never stores tokens

Available Tools#

The MCP server provides 103 tools across twelve categories:

Workspace & Auth#

ToolDescription
orshot_auth_statusCheck if you're authenticated and see available workspaces
orshot_list_workspacesList all workspaces you have access to
orshot_set_active_workspaceSwitch which workspace to use
orshot_get_workspaceRead the active workspace and its saved onboarding answers
orshot_update_workspaceUpdate the workspace title or onboarding answers
orshot_update_profileUpdate the signed-in user's profile

Template Management#

ToolDescription
orshot_list_studio_templatesList all studio templates in the active workspace
orshot_get_studio_templateGet full template details including design structure
orshot_get_studio_template_modificationsGet available modification parameters for a template (dynamic fields listing)
orshot_place_imagePlace an image into a template design at a chosen position
orshot_verify_designCheck a design for layout problems before rendering
orshot_create_template_designCreate a new template with design elements
orshot_update_template_designUpdate an existing template's design, name, or dimensions
orshot_patch_template_elementsUpdate individual elements by parameterId without re-sending the whole design
orshot_delete_templateDelete a studio template
orshot_duplicate_templateCreate a copy of an existing template
orshot_get_template_sharingRead a template's public sharing state
orshot_update_template_sharingTurn public sharing on or off for a template

Template Folders#

One flat level of folders per workspace, shared with the dashboard sidebar. Names are unique and capped at 50 characters. Creating a folder requires a paid plan; listing, renaming, deleting and filing are available on every plan that already has folders. Deleting a folder never deletes templates — they return to All templates.

ToolDescription
orshot_list_template_foldersList the workspace's folders, in dashboard order
orshot_create_template_folderCreate a folder (paid plans only)
orshot_rename_template_folderRename a folder, leaving its templates untouched
orshot_delete_template_folderDelete a folder; its templates become unfiled
orshot_move_template_to_folderFile a template into a folder, or pass folderId: null to unfile it

Rendering#

ToolDescription
orshot_render_templateRender an image, PDF, or video from a studio template with modifications
orshot_render_library_templateRender images from library templates (website screenshots, tweet images, etc.)
orshot_batch_render_templateRender one template against many modification sets in a single call
orshot_get_render_jobPoll a background render or AI generation job (server-side long-poll)

The former names orshot_generate_image, orshot_generate_image_from_library and orshot_batch_render still work as deprecated aliases.

AI Generation#

ToolDescription
orshot_generate_ai_videoFootage from a prompt, animate an image, or make a portrait speak; saved to the Brand Library. estimate: true returns the cost without generating
orshot_get_ai_video_presetsRole and look presets with preview clips, tiers and the credit rate card
orshot_generate_ai_audioA standalone voiceover or ambient track on AI credits
orshot_get_audio_authoring_optionsAI credit position, speech models and the voice catalog for template narration

Stock Media#

ToolDescription
orshot_search_stock_mediaSearch free stock photos and videos (Pixabay, Unsplash) with stable refs
orshot_use_stock_mediaResolve a stock ref to a hosted URL and add it to the Brand Library

Account & Plans#

ToolDescription
orshot_get_accountProfile, workspaces, current plan, credits and AI credits, AI video caps
orshot_get_plansWhich tier includes a feature, with AI credits and clip/speech caps per tier

Dynamic URLs#

Public, signed render links for a template. Unlike a one-off render, a dynamic URL is stable and cacheable — the right fit for Open Graph images, email images and embeds. Pass modification values as query parameters to vary the output from one URL.

ToolDescription
orshot_create_dynamic_urlMint or update a template's signed dynamic URL
orshot_get_dynamic_urlRead the current configuration, limits and view count
orshot_reset_dynamic_url_signatureRotate the signature, invalidating every link already shared
orshot_delete_dynamic_urlRemove the dynamic URL for a template

Library Templates#

ToolDescription
orshot_list_library_templatesList all available pre-built Orshot library templates
orshot_get_library_template_modificationsGet available parameters for a library template

Brand Assets#

Manage your workspace brand kit — images, colors, fonts, and videos used across templates.

ToolDescription
orshot_get_brand_kitFetch all brand assets at once (images, colors, fonts, videos) with optional tag filtering
Import from a website
orshot_scan_brand_websiteRead a public site and report the logos, colours and fonts it uses, saving nothing
orshot_import_brand_websiteSave the picked rows, or take everything above a confidence bar
orshot_undo_brand_importRemove everything one import wrote, for 7 days afterwards
Direct upload (large files)
orshot_create_upload_urlMint a short-lived upload URL for an image, font, video or audio file
orshot_confirm_uploadStore the uploaded file in the Brand Library once the transfer finishes
orshot_create_image_upload_urlImage-only alias of orshot_create_upload_url, kept for older clients
orshot_confirm_image_uploadImage-only alias of orshot_confirm_upload, kept for older clients
Images
orshot_get_brand_imagesList brand images, optionally filtered by tag
orshot_upload_brand_imageUpload a new brand image from a URL
orshot_update_brand_image_tagsUpdate tags on a brand image
orshot_delete_brand_imageDelete a brand image
Colors
orshot_get_brand_colorsList brand colors, optionally filtered by tag
orshot_add_brand_colorAdd a new brand color (hex value + tags)
orshot_update_brand_color_tagsUpdate tags on a brand color
orshot_delete_brand_colorDelete a brand color
Fonts
orshot_get_brand_fontsList brand fonts, optionally filtered by tag
orshot_upload_brand_fontUpload a new brand font from a URL
orshot_update_brand_font_tagsUpdate tags on a brand font
orshot_delete_brand_fontDelete a brand font
Videos
orshot_get_brand_videosList brand videos, optionally filtered by tag
orshot_upload_brand_videoUpload a new brand video from a URL
orshot_update_brand_video_tagsUpdate tags on a brand video
orshot_delete_brand_videoDelete a brand video
Audio
orshot_get_brand_audioList brand audio files, optionally filtered by tag
orshot_upload_brand_audioUpload a new brand audio file from a URL or base64
orshot_update_brand_audio_tagsUpdate tags on a brand audio file
orshot_delete_brand_audioDelete a brand audio file

Embed#

Configure the Orshot embed editor for your own users.

ToolDescription
orshot_get_embed_configRead the workspace's embed configuration
orshot_configure_embedUpdate embed settings such as theme and allowed actions

Workflows#

Build and run the automations that render on their own — a trigger, an Orshot render, and one or more destinations.

ToolDescription
orshot_list_workflow_nodesDiscover every available trigger, source and destination node
orshot_list_connected_integrationsSee which integrations this workspace has already connected
orshot_get_workflow_connection_dataFetch pickable values for a node (sheets, bases, folders, channels)
orshot_suggest_workflowsGet draft-ready automation ideas that fit a given template
orshot_validate_workflowCheck a workflow's steps before saving it
orshot_create_workflowCreate a workflow, as a draft or active
orshot_list_workflowsList the workspace's workflows
orshot_get_workflowGet a workflow's full step configuration
orshot_update_workflowChange a workflow's steps, name or status
orshot_delete_workflowDelete a workflow
orshot_run_workflowTrigger a run on demand
orshot_list_workflow_runsList recent runs with their status
orshot_get_workflow_runInspect a single run, step by step, for debugging
orshot_get_workflow_webhookGet the inbound webhook URL for a webhook-triggered workflow
orshot_get_workflow_sharingRead a workflow's public sharing state
orshot_update_workflow_sharingTurn public sharing on or off for a workflow

Social Publishing#

ToolDescription
orshot_list_social_accountsList connected social media accounts in the active workspace
orshot_publish_social_postPublish a render to one or more connected accounts
orshot_publish_social_draftPublish a post that was saved as a draft
orshot_list_social_postsList posts in the workspace, filtered by status or account
orshot_get_social_postRead one post, its media and its per-account results
orshot_update_social_postChange a scheduled or draft post before it goes out
orshot_discard_social_postDiscard a draft or cancel a scheduled post
orshot_get_social_analyticsImpressions, engagement and reach per account
orshot_get_social_analytics_dailyThe same figures broken down by day
orshot_get_social_post_analyticsPerformance for a single published post
orshot_get_social_followersFollower counts and growth per connected account
orshot_get_best_time_to_postSuggested posting times from the account's own history

Use orshot_list_social_accounts to get the numeric account IDs, then pass them in the publish parameter of orshot_render_template to post renders directly to connected social accounts.

Activity#

ToolDescription
orshot_list_workspace_logsReview recent render activity, filter by status, and recover output URLs

Example Prompts#

Once connected, try natural language prompts like:

Image Generation:

  • "Generate a website screenshot of github.com using Orshot"
  • "Create an ad banner with heading 'Grow your business' using studio template 64"
  • "Generate a tweet screenshot of this tweet https://x.com/example/status/123"
  • "Render my certificate template with the name 'Jane Doe'"
  • "Generate a PNG and a PDF of template 100 with my updated headline"

Template Management:

  • "List all my studio templates"
  • "Show me the details of template 222"
  • "What modification parameters does template 150 accept?"
  • "Create a new social media template at 1080x1080 with my brand colors"
  • "Update template 100 with a new background color"
  • "Duplicate template 200 so I can create a variant"
  • "Delete template 300"

Video and Audio:

  • "Create a 15-second product reel with a voiceover, subtle ambient audio, animated captions and a waveform"
  • "Make the narration dynamic so each customer receives personalized spoken copy"
  • "Render the reel as an MP4 and publish it to my connected social account"

Brand Assets:

  • "Show me all my brand assets"
  • "What brand colors do I have tagged as 'primary'?"
  • "Upload this logo image to my brand kit with tags 'logo' and 'dark'"
  • "Add a new brand color #FF5733 tagged as 'accent'"
  • "Create a social media post template using my brand fonts and colors"
  • "Design a YouTube thumbnail using my brand images tagged 'product'"

Workspace:

  • "Which workspaces do I have access to?"
  • "Switch to my marketing workspace"

Need Help?#

Was this page helpful?

Ready to automate?

Start rendering images, PDFs and videos from your templates in under 2 minutes. Free plan, no credit card.

Get your API key
  • Image, PDF and video generation via API
  • Visual editor with AI and smart layouts
  • Zapier, Make, MCP and 40+ integrations
  • White-label embed for your own app
  • 100 free credits a month, no credit card required