How to connect Miro to ChatGPT
Install Miro's official plugin in ChatGPT, or add Miro through Upsy to keep ChatGPT read-only, log its board changes and share one Miro login across assistants.
Updated
Short answer
Miro has an official plugin in ChatGPT. Open Plugins, find Miro, click Install plugin, then Connect, and pick the Miro team your boards are in. Mention it with @Miro in a chat. Setup takes about two minutes, and Miro's side works on every Miro plan. If ChatGPT is your only Miro assistant and a prompt before each action is enough control, use the plugin. Use Upsy instead when ChatGPT should only read, when you want a record of what it changed, or when you also use Miro from Claude, Grok or Cursor, since Miro keeps just one connection per person.
The built-in way
The Miro plugin is published by Miro and works in both ChatGPT and Codex. When we checked, its listing in ChatGPT showed version 2.0.1 and said it can:
- Read, search and summarize your boards.
- Create boards, including full boards for workshops, retros and planning.
- Add slides, diagrams, docs, tables, timelines, sticky notes and images.
- Edit content already on a board, and delete what it created.
- Read, reply to and resolve comments.
- Create, update and share Miro spaces.
Miro's MCP docs list ChatGPT and Codex as clients of its MCP server at https://mcp.miro.com/, which Upsy also uses.
From OpenAI's connected apps help:
- Availability depends on the app, your plan, region, workspace and role. OpenAI doesn't publish a plan list for Miro.
- Workspaces: on Business, many apps are on by default. New Enterprise and Edu workspaces start with a selected set. An admin can turn any plugin off, and you then see Disabled by admin.
- Permissions: Always ask, Allow read actions, Allow low-risk actions or Allow all actions. OpenAI is clear that this only changes when ChatGPT asks, not what access the app has.
Where it stops:
- No read-only switch. The permission settings decide when ChatGPT asks, not what the plugin can do, so its write access stays.
- One Miro connection at a time. Miro's troubleshooting page calls it "Last One Wins": sign in to Miro from a new client, and the previous one drops. Connecting Miro in Claude or Cursor can cut off ChatGPT's plugin, and the other way round.
Where Upsy fits
- Real limits. Read-only, or only the Miro tools you pick. ChatGPT never sees the rest.
- A history of every Miro tool ChatGPT runs, next to everything else it does through Upsy.
- One Miro sign-in shared by ChatGPT, your dot, Codex, Claude and Grok.
- Other apps alongside: a calendar invite or a Gmail thread can become a board in one request.
What you need
Miro on any plan. Miro's MCP server is on by default for Free, Starter, Business and Education (Miro's user guide). Each plan has a daily allowance of tool calls (Miro's limits):
Miro plan MCP tool calls per day Free 100 Starter 500 Business 2,000 Enterprise 10,000 Limits reset at 00:00 UTC. Only Enterprise admins can see usage; everyone else finds out from the error.
On Miro Enterprise, an admin turns MCP on and chooses which teams, user groups and clients may use it (admin guide).
ChatGPT on the web to add Upsy. In a work workspace, your admin must allow Create custom MCP servers for your role.
A free Upsy account.
Connect Miro to ChatGPT through Upsy
- Sign up at upsy.ai with Set up Upsy.
- Open Apps, click Connect an app and choose Miro. Allow access on Miro's page, then pick the team with your boards.
- Click Add assistant and choose ChatGPT under Which assistant?. Copy the address
https://upsy.ai/connect. - In ChatGPT on the web, open Plugins, click Add (+), then Create custom MCP server.
- Name it Upsy, paste the address, and set authentication to OAuth. Leave client ID and secret empty.
- Accept the risk warning and click Create as a plugin.
- Click Connect if ChatGPT asks. On Upsy's page, sign in, tick Miro, choose Read-only or All, and click Allow. Install the plugin if ChatGPT shows Install plugin.
- Paste the Help ChatGPT remember message from Upsy into a chat.
- If you installed Miro's own plugin before, disconnect it under Settings › Plugins. Otherwise the two Miro connections keep replacing each other.
Already have Upsy in ChatGPT? Step 2 is enough: ChatGPT reaches new apps through Upsy's app_tools, at Full access until you change it. Start a new chat if it doesn't see Miro. More detail: how to add a custom MCP server to ChatGPT.
Check that it works
@Upsy Which Miro boards can you see? Summarize the newest one in five bullets.
ChatGPT should call app_tools, then app_read to search and read your boards. In Upsy's History, look for miro_board_search_boards under ChatGPT. For one board, paste its full URL; Miro's admin guide asks for it in every prompt.
What ChatGPT can do with Miro
Upsy passes on Miro's own tools (full list). Each Upsy level allows these:
| Task | Miro tool | Level in Upsy |
|---|---|---|
| Find boards | board_search_boards |
Read-only |
| Read a board or a frame | canvas_search, canvas_read_as_svg |
Read-only |
| Read tables and prototype screens | table_list_rows, prototype_read |
Read-only |
| Read comments | comment_list_comments |
Full access, or pick it |
| Create a board | board_create |
Full access, or pick it |
| Add stickies, shapes, docs, tables and diagrams | canvas_create_from_svg |
Full access, or pick it |
| Change or delete items | canvas_update_from_svg |
Full access, or pick it |
| Reply to or resolve comments | comment_reply, comment_resolve |
Full access, or pick it |
| Add images, build prototypes | image_create, prototype_create |
Full access, or pick it |
Two things to know before using Pick actions:
- One tool both edits and deletes items, so you can't allow changes without allowing removals.
- Upsy treats "comment" in a tool's name as a change, so reading comments needs Full access or that tool picked.
Tools Miro adds later stay off under Pick actions until you tick them.
When ChatGPT asks first
Upsy splits Miro's tools between two of its own. app_read runs only read-only tools and is marked read-only, so under Allow read actions ChatGPT runs it without asking. app_call runs anything that changes a board and is marked as able to delete, so expect ChatGPT to ask before it unless you choose Allow all actions. Set your default in Settings › Plugins › Permissions.
Prompts to try
- "@Upsy What's on the customer journey board at [board URL]? List each stage with its pain points."
- "Make a kickoff board for Project Atlas with frames for goals, risks, timeline and a parking lot."
- "Here's the transcript of today's call. Put the main points on [board URL] as sticky notes grouped by theme."
- "Add an ERD of these tables to the Data model board: [paste the schema]."
- "Find Thursday's workshop in my calendar and build an agenda frame on [board URL] from the invite."
- "On [board URL], list the comments still open and resolve the ones that already have an answer."
The calendar prompt needs Google Calendar connected in Upsy too.
Troubleshooting
The Miro plugin says Disabled by admin
Your workspace admin turned it off. They can turn it back on in the Admin Console, under Plugins. For Upsy, they also need to allow Create custom MCP servers for your role.
Miro worked yesterday and now fails
You probably signed in to Miro from another client since then, such as the Miro plugin in ChatGPT or Codex, Claude or Cursor. Miro keeps only the latest connection. If ChatGPT says Miro access expired, reconnect Miro on Upsy's Apps page and remove the other connection.
"Board not found" or a permissions error
Miro's troubleshooting page lists three causes: the board is in a different team than the one you picked at sign-in, the prompt has no full board URL, or your account has less than View access. Reconnect Miro in Upsy with the right team if needed.
ChatGPT can't find Miro through Upsy
If you installed Upsy from ChatGPT's plugin directory, its tool list was fixed when Upsy submitted it and may not reach Miro. Add Upsy as a custom MCP server instead, then click Refresh on the plugin's settings page. Also check Miro isn't on No access on ChatGPT's page in Upsy.
Calls fail with a daily limit message
You've used your Miro plan's tool calls for the day. Every assistant on your Miro login shares the allowance. Wait for 00:00 UTC or upgrade your Miro plan.
Security and privacy
- OpenAI's warning applies. It labels custom MCP servers as elevated risk and doesn't review them. Add only servers you trust.
- What OpenAI shares with apps. The Miro plugin's listing says ChatGPT may share relevant chats and memories with it. On Free, Go, Plus and Pro, OpenAI may train on information from apps if Improve the model for everyone is on.
- ChatGPT never gets your Miro token. It calls Upsy, and Upsy calls Miro as you, within your Miro permissions.
- History in Upsy lists each Miro tool ChatGPT runs, by name.
- Alerts: Upsy emails you when one assistant reads 100+ items, sends 20+ messages or deletes 50+ items in 10 minutes. The delete count goes by tool names, so items removed by Miro's canvas update tool aren't counted.
- Turning it off: set Miro to No access for ChatGPT, remove ChatGPT on its page, or disconnect Miro in Apps.
FAQ
Is there a Miro app for ChatGPT?
Yes. Miro publishes an official plugin in ChatGPT's plugin directory. It also works in Codex.
Which ChatGPT plans can use Miro?
OpenAI says app availability depends on your plan, region and workspace, and doesn't list plans for Miro. Adding Upsy as a custom MCP server is open to eligible users on chatgpt.com; in a work workspace, your admin decides. On Miro's side, every plan works.
Can ChatGPT edit an existing Miro board?
Yes, with write access. Miro's canvas tools let ChatGPT read one frame, change a single item and write it back without touching the rest. The Miro plugin's listing says it edits existing content and deletes only what it created. Through Upsy, the same update tool can also delete items, so pick it with care.
Can my ChatGPT dot use Miro?
Your dot uses the plugins you add in ChatGPT. Add Upsy once and your dot reaches Miro with the same level as ChatGPT. See ChatGPT dots.
Can ChatGPT and Codex share one Miro connection?
Through Upsy, yes. Add Upsy to Codex too, and both use Upsy's single Miro sign-in, each with its own access level, so neither knocks the other out.
Related guides
- How to connect Miro to ClaudeUse Miro's official connector in Claude, or add Miro through Upsy for a Read-only switch, a history of board changes and one Miro login for every assistant.
- How to connect multiple Gmail accounts to ChatGPTChatGPT now connects more than one Gmail account. How to add a second inbox, and how to give each one its own access in ChatGPT and your other assistants.
- How to connect a personal Outlook account to ChatGPTChatGPT's Outlook connector only takes work and school accounts. How to let ChatGPT read and send from a personal Outlook.com or Hotmail account.
- How to share memory between ChatGPT, Claude and GrokStop repeating yourself. Move your memory from ChatGPT to Claude, or keep one memory that ChatGPT, Claude, Grok and Muse all read and you control.
- Is it safe to connect Gmail to ChatGPT?What ChatGPT can see and do once Gmail is connected, the real risks, and how to give it read-only access, review what it did and turn it off fast.
- How to add a custom MCP server to ChatGPTThe current steps to add a remote MCP server to ChatGPT as a custom plugin, sign in with OAuth, and fix tools that don't show up.