Connect Claude, Cursor, or ChatGPT to Shyne

Shyne speaks MCP, so the agent you already use can edit the live canvas. Desktop is local. The hosted door uses your Shyne account.

You do not have to leave your agent of choice to work in Shyne. The same canvas tools are available over MCP from the desktop app and from the hosted product. The concise setup is also available in the live MCP guide.

MCP is the direct route from a compatible AI client to a project you own. It exposes project discovery, artifact editing, visual verification, media, video, and safe scheduling tools. The in-product teammate uses the same operation family. The difference is which client is holding the conversation.

If you already live in Claude Code, Cursor, Claude Desktop, VS Code Copilot, or opencode, this is the door that feels like the rest of your setup. You connect. You name a project. You watch the work appear on the canvas as live presence.

Two doors, same tools

Shyne has two MCP endpoints. Most people start with one and stay there. Some people use both in the same week.

The hosted door is https://mcp.shyne.ai/mcp. It works from any client, anywhere, and connects to your cloud projects. The first connection opens a Shyne sign-in. OAuth credentials stay in the MCP client. Access is the same ACL the editor uses. Every tool call names a project.

The desktop door is http://127.0.0.1:7655/mcp. It is served by the Shyne desktop app. Install it, sign in, and keep it open. The endpoint answers only on your machine while the app is running. There is no separate authentication on the port. It is bound to loopback and acts as the user who is signed in.

Dev and staging hosts follow the same pattern with an env segment: mcp.dev.shyne.ai and mcp.stg.shyne.ai. Production drops the env segment. If a URL you typed does not resolve, you probably swapped the segments.

The same surface definition feeds both doors. Desktop proxies account lanes such as projects and automations to the hosted side under the signed-in seat. For MP4, desktop can fulfill the same export contract locally.

Desktop, the simple door

Open a project in the desktop app. The local server is already running. It starts and stops with the app.

In Claude Code:

claude mcp add --transport http shyne http://127.0.0.1:7655/mcp --scope user

In Cursor, Settings → MCP → Add server, or a .cursor/mcp.json entry that points at the same URL. Claude Desktop can reach it through mcp-remote. VS Code Copilot uses a .vscode/mcp.json server of type http. opencode uses a remote MCP entry with the same URL.

Ask me_get, or curl http://127.0.0.1:7655/info, if you want to see which user, org, and default project the port is seated as. Rooms join on demand. Switching projects in the app does not require a new MCP install. Signing out, or letting the session expire, kills the port. Switching organizations re-seats it. The seat always mirrors what the app shows.

The security model is local-machine trust. Anything in your user session that can reach the port can act through that session. Do not proxy the port. Do not expose it. Close the desktop app to stop the endpoint. Treat it like an open local editor, because that is what it is.

Hosted, with your account

Add https://mcp.shyne.ai/mcp as a remote HTTP MCP server. Complete OAuth in the browser. In Claude Code, /mcp is where you authenticate a server that is not yet signed in.

If the client shows 401 or never opens sign-in, remove the saved connection, add the canonical URL again, and complete OAuth. If you open the MCP URL in a browser and get 405, that is expected. The endpoint accepts authenticated POST requests from an MCP client. It is not a human web page.

Hosted MCP applies project permissions on every call. Permanent project deletion, restore, credential management, and provider tokens are not exposed to the agent. Publishing can be enabled as a capability, but each agent-initiated post or schedule request still stops at a human permission prompt. Link-only projects may be visible in the app and absent from a global list. Address that project directly so access can be rechecked.

The working loop

A connected agent should not guess. It should:

  1. List projects and canvases.
  2. Name explicit targets. Canvas-bound calls carry projectId and canvasId. Canvas omission works only for a project with one canvas.
  3. Read the live authoring guide at shyne://guide/canvas-authoring. Do not rely on a cached copy from last month.
  4. Call canvases_read.
  5. Make structured edits.
  6. Call canvases_preview before reporting back.

Orient, read, change, look, report. If you skip the look, you will ship a confident paragraph about a frame you have not seen.

A useful handoff you can paste into any client is: connect, identify the seat, list projects, pick one, list canvases, read the guide resource, then wait for the human’s artifact. The live text of that handoff lives in the docs. The rules in the resource win if this blog and the resource ever disagree.

What the agent can do

It can list and create projects, read and update them, and trash them. Restore and hard delete stay human. It can list, create, update, and delete canvases; read, import, and preview them. It can get and set theme. It can create, update, attach, detach, reorder, and move sequences. It can apply and delete frames and nodes, move frames, and replace a frame from HTML when you mean to replace it. It can export, list and upload files, apply templates, and work with brands and memory.

Timeline tools can read an edit, add and move clips, split or retime them, and inspect exact moments. Media tools cover the generation lanes your plan allows. When the publishing capability is enabled, publishing_create can post now or schedule work to a connected social or email channel; the client asks you for permission before it runs.

It can use ordinary file tools in its own workspace. Documents never live in that workspace. Canvas writes still only flow through document operations. sudo stays denied.

What the agent cannot do

It cannot become the account. It cannot rotate keys, read provider tokens, restore a project, permanently delete one, or bypass the permission gate on a consequential action. It cannot invent a canvas when several exist and none was named. It cannot treat a stale read as current. If a human edit disappeared, undo and make it re-read.

It cannot use an organization API key as if it were MCP. REST keys are for servers. MCP is OAuth or the desktop seat. Mixing those is how keys leak into chat logs.

Hosted and desktop MCP can read live project presence. presence_get reports who is present now, not everyone with access, so an empty result simply means there are no other live peers at that moment.

Plans and limits

Hosted MCP calls are metered per organization per week, with limits that vary by plan. If a client starts failing after a burst of tool calls, check current usage before you debug the prompt. Storage and AI media have their own limits. This blog will not reprint numbers that may change; the pricing page and the in-product billing view are the source of truth.

BYO-agent through MCP is part of how a free seat can still do serious work: you bring the client you already pay for, and Shyne is the document. Abuse caps still exist. They are not a creative limit. They are how a shared factory stays up.

A first connected hour

Install desktop or sign in on the web. Add the matching MCP URL. Authenticate if you are hosted. Call me_get. Call projects_list. Open or create a project. Call canvases_list. Read the guide. Ask for one six-frame sequence with a named audience. Stay in the Shyne window while it works. Interrupt on frame three. Ask for a preview. Export if the work is real.

If the desktop port refuses the connection, the app is not running or not signed in. Open it. If the agent says no project or canvas was specified, it told you the truth. Name them.

REST is a different door

If you are writing a server, use the public REST API with an organization key stored in a secret manager. Call GET /v1/me first. Then list or create a project, read /v1/tools, and call a named operation with a project id. An API key does not authenticate MCP. MCP OAuth does not replace a server key. Putting either credential in a URL, a mobile bundle, or a log is how you get to rotate it.

The OpenAPI document is the live schema for REST. tools/list is the live schema for MCP. Use those machine-readable contracts instead of copying an operation list from a blog post into production code.

Why this door exists

We do not need you to abandon the agent you already trust. We need that agent to write into a document other people can see, undo, and ship. MCP is how we say that without pretending every client should become our composer.

Connect the door that matches the hour. Name the project. Read before you write. Look before you report. Approve consequential actions only after the client shows you exactly what will happen. The canvas will do the rest.

Written by

Shyne Team

The people building Shyne, a shared workspace for turning ideas into finished visual work.