insta-edits-for-claude
Claude Code plugin + MCP server for Instagram Edits on Mac. Let Claude edit your Reels: cuts on the beat, captions, text, transitions, export.
Install / Use
claude mcp add faisalkhanzemi -- npx -y github:faisalkhanzemi/insta-edits-for-claudeIf the server publishes to npm under a different name, use that package instead β check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AutomationSupported Platforms
Our assessment of insta-edits-for-claude
insta-edits-for-claude scores 83/100 on our quality scale, 2185th of 2,880 Automation skills we index.
Its MCP Server is 15 KB long, well organised into 18 sections with 13 code examples: a thorough specification that gives an agent plenty to work with.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated today, so insta-edits-for-claude is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit β read the skill file before letting an agent act on it.
insta-edits-for-claude compared with similar skills
All 4 of these similar skills score higher than insta-edits-for-claude; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| insta-edits-for-claude (this skill)by faisalkhanzemi | 83 | 3 | today | MCP Server |
| Agent-Reachby Panniantong | 100 | 110.0k | today | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 79.1k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.8k | 1d ago | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 99.4k | 2d ago | MCP Server |
Frequently asked questions
- How do I install insta-edits-for-claude?
- Run
claude mcp add faisalkhanzemi -- npx -y github:faisalkhanzemi/insta-edits-for-claude. The install tabs above show the steps for each supported agent. - Which AI agents does insta-edits-for-claude work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is insta-edits-for-claude safe to use?
- It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is insta-edits-for-claude still maintained?
- The repository was last updated today, so insta-edits-for-claude is actively maintained.
Skill content
View source on GitHubInsta Edits for Claude
<!-- mcp-name: io.github.faisalkhanzemi/insta-edits -->Let Claude Code edit in Instagram Edits for Mac, with the full editor and not just the home screen.
<p align="center"><a href="https://github.com/faisalkhanzemi/insta-edits-for-claude/blob/main/assets/hero.mp4"><img src="https://raw.githubusercontent.com/faisalkhanzemi/insta-edits-for-claude/main/assets/hero.gif" alt="A real Claude Code session making a beat-synced Dubai in 15 seconds reel inside Instagram Edits for Mac: clips cut on the beat, punch-in zooms, a speed ramp, a title and labels, frame checks, then export" width="100%"></a></p> <p align="center"><sub>One prompt, a real Claude Code session, nothing scripted. Edits found no beats, so Claude analysed the music itself (122 BPM), cut every clip on a beat, checked its own frames and exported the reel. <a href="https://github.com/faisalkhanzemi/insta-edits-for-claude/blob/main/assets/hero.mp4">Watch with sound</a>.</sub></p>Edits for Mac, which Meta launched on 5 November 2026, has a built-in automation server that speaks MCP: in Meta's words, you can connect AI agents "to the desktop editor through MCP so they can help with your projects". You can point Claude Code at it directly, but you only get part of it.
Edits changes its tools with the screen. The home screen offers 32 tools: projects, imports and catalogs. Open a project and it offers 274, with text, captions, effects, transitions, keyframes, audio and export. Edits says it will announce that change (tools.listChanged: true) but never sends the notification. Claude keeps the 32 home tools for the whole session and never sees the editor.
This bridge sits between the two. After every tool call it asks Edits which tools it offers now. If the set has changed, it tells Claude, and Claude refreshes the list. It also fixes a reply format that some Claude Code builds reject, gives readable errors, and keeps your token out of config files.
Claude Code ββstdioβββΆ insta-edits ββHTTPβββΆ Edits for Mac (127.0.0.1:19501)
βββ tools/list_changed βββ checks the tool set after each call
Works with Claude Code in the terminal and in the Code tab of the Claude desktop app. It's a standard stdio MCP server, so other MCP clients (the Claude desktop chat, Cursor, Codex) can run insta-edits serve too, though we've only tested Claude Code.
What you get
- The full editor. Claude receives
notifications/tools/list_changedas soon as Edits moves between home (32 tools) and the editor (274). Without the bridge, that notification never arrives. - Replies that every Claude Code build accepts. Edits marks each result
"resultType": "complete"without the caching fields that newer MCP schemas pair with it. Some Claude Code builds then dropped every tool, withInvalid result for tools/list: ttlMs β¦ cacheScope. The bridge removes the marker only when those fields are missing. - Your token stays private. The plugin keeps it in the macOS keychain. The CLI keeps it in a
0600file. It never appears in~/.claude.json, in logs or in error messages. - Start in any order. If Edits isn't open yet, the bridge still connects and reports no tools, then tells Claude the moment Edits answers, so the editor appears without a restart.
- Errors you can act on. "Cannot reach Edits: open it and enable the Automation Server" replaces a stack trace. A rejected token says how to update it.
doctorchecks every link from the app to the sign-in, and--jsongives you a report to attach to a bug.- An
editsskill that teaches Claude how the server behaves: discover before guessing, work in normalised canvas coordinates, check rendered frames, and never publish without your explicit go-ahead. - Python standard library only. Nothing to
pip installfor the plugin, and it runs on thepython3that comes with macOS.
Requirements
- A Mac with Apple silicon (M1 or later) and Edits for Mac, free and signed in to Instagram
- Claude Code
python33.9 or newer. Runxcode-select --installif macOS asks for the command line tools.
Install
Before you start: Edits for Mac is open and signed in, and Claude Code is installed. Setup takes about two minutes.
1. Turn on the automation server in Edits
Go to Edits βΊ Settings βΊ Automation, switch on Enable Automation Server, and copy the Access token. Keep Edits open while Claude works.
2a. As a Claude Code plugin (recommended)
Start claude in a terminal and run these two commands, one at a time:
/plugin marketplace add faisalkhanzemi/insta-edits-for-claude
/plugin install insta-edits@insta-edits
Claude Code asks for the access token with a masked prompt and stores it in your keychain. Restart Claude Code, then run /mcp: edits should show as connected. The plugin also installs the edits skill.
Rather just ask? Paste this into Claude Code as a normal message:
Install the Insta Edits plugin from github.com/faisalkhanzemi/insta-edits-for-claude
Claude runs the same two install steps from its terminal. That route can't show the masked token prompt, so finish with /plugin configure insta-edits@insta-edits and paste the token there, never into the chat.
The shell commands do the same thing but don't prompt for the token, so set it afterwards with /plugin configure insta-edits@insta-edits inside Claude Code:
claude plugin marketplace add faisalkhanzemi/insta-edits-for-claude
claude plugin install insta-edits@insta-edits
A plugin installed this way, at user scope, also shows up in the Code tab of the Claude desktop app, which reads the same settings.
</details>2b. As a standalone MCP server
pipx install insta-edits
insta-edits set-token
claude mcp add --scope user edits -- insta-edits serve
set-token asks for the token with a hidden prompt and saves it to ~/.config/insta-edits/token with 0600 permissions. Never put the token itself on the claude mcp add line: it would end up in plain text in ~/.claude.json and in your shell history.
Check the connection
insta-edits doctor
insta-edits 0.1.1 doctor
β macOS 27.0.1
β Edits app installed /Applications/Edits.app
β Automation server answering at http://127.0.0.1:19501/mcp (HTTP 403 without a token, as expected)
β Access token from ~/.config/insta-edits/token
β Sign-in metapilot-native 1.0.0, protocol 2025-06-18
β Tools 32 on the current screen (home screen; Edits offers more once a project is open)
β Reply format normalised for older Claude Code builds (resultType without caching fields)
β Edits automation schema 2026.10.19-1
β Tool-change notifications Edits announces them but never sends any; the bridge checks after each call and tells Claude
All good. Claude can drive Edits.
Each β line names its fix. Plugin users who want doctor can install the CLI as in 2b. The plugin token lives in the keychain, so without set-token the doctor checks stop at the sign-in step.
Update or uninstall
Plugin:
claude plugin marketplace update insta-edits && claude plugin update insta-edits@insta-edits
claude plugin uninstall insta-edits@insta-edits && claude plugin marketplace remove insta-edits
Standalone server: pipx upgrade insta-edits to update; claude mcp remove edits, pipx uninstall insta-edits and rm -r ~/.config/insta-edits to remove it. You can also switch off the automation server in Edits at any time, which cuts the connection.
Using it
Ask for edits in plain words:
Open my latest Edits project and tell me what's on the timeline.
Import
~/Movies/broll/into a new project, cut it to the beat of the voice-over, and add word-by-word captions in a clean sans.
Add a soft zoom on every product close-up and a whoosh on each cut, then render a preview so I can check the frames.
Claude opens the project, the editor tools appear, and it works from them. It doesn't post. Publishing stays in the Edits window unless you explicitly tell Claude to share a specific video.
How it works
| Step | What happens |
| --- | --- |
| Session | The bridge forwards initialize, keeps Edits' Mcp-Session-Id, and sends MCP-Protocol-Version on every request. |
| Replies | It accepts both JSON and text/event-stream replies and batch requests, and normalises resultType only when the caching fields are missing. |
| Tool sync | After each tools/call it sends its own tools/list to Edits, using an id Claude never sees, and compares the tool names. If they changed, it writes notifications/tools/list_changed to Claude. Turn this off with serve --no-sync. |
| Notifications | If a future Edits build opens a server-to-client stream, the bridge listens on it and forwards what arrives. Edits doesn't offer one today, so the bridge stops trying after the first refusal. Turn it off with serve --no-stream. |
| Edits closed | The bridge answers initialize itself, reports no tools and retries Edits every 5 seconds (INSTA_EDITS_OFFLINE_POLL). When Edits answers, it opens the session and sends notifications/tools/list_changed. |
| Errors | A tool call while Edits is closed returns JSON-RPC -32001. An HTTP error from Edits returns -32002. Both carry a one-line fix. |
Settings come from the environment: EDITS_MCP_URL (default http://127.0.0.1:19501/mcp), EDITS_MCP_TOKEN, and EDITS_MCP_TOKEN_FILE. Logs go to stderr.
Tested with
| | Version |
| --- | --- |
| Edits for Mac | 454.0.0 (server metapilot-native 1.0.0, automation schema 2026.10.19-1) |
| Claude Code | 2.1.296 |
| macOS | 27.0.1 |
| Python | 3.9.6 (system), 3.11, 3.13 in CI |
Edits updates often and its automation server is undocumented. If a new build breaks something, run insta-edits doctor --json and open an issue with the output. It contains no token.
Troubleshooting
| Symptom | Fix |
| --- | --- |
| Cannot reach Edits | Open Edits and switch on Settings βΊ Automation βΊ Enable Automation Server. |
| HTTP 401 or 403 | The token changed in Edits. Update it in /plugin, or run insta-edits set-token. |
| Only home tools, even with a project open | Check that edits in /mcp points to the bridge and not straight at 127.0.0.1:19501, and that you didn't start it with --no-sync. |
| Import fails with file not found: ~/β¦ | Edits doesn't expand ~. Pass the full path, such as /Users/you/Movies/clip.mp4. |
| Import fails with Sandbox bookmark unavailable | Edits is sandboxed. In our tests it imported from ~/Movies and refused ~/Downloads, ~/Desktop, temp folders and project folders. Move the footage into ~/Movies and import it from there. |
| Exported video is silent where the song should be | Songs from Edits' music library come in as licensed tracks, a
Truncated for display β read the full file on GitHub.
Related Skills
Agent-Reach
110.0kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu β one CLI, zero API fees.
headroom
79.1kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.8kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Scrapling
99.4kπ·οΈ The BEST Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit β see the Safety scan above for what the skill file itself contains.
