gif_creator
Record browser tab actions into animated GIFs. Start, stop, export, and clear per-tab recordings with visual indicators for clicks and drags.
Instructions
Films a tab as a run of screenshots and encodes them into an animated GIF, with the clicks and drags of the run marked on the frames that show what they did. Four actions, and every one of them needs tabId because a recording belongs to a single tab: start_recording opens the loop and grabs a first frame right away, stop_recording ends the loop after one closing frame and keeps everything captured, export encodes the frames into a .gif on disk, clear throws them out. The loop grabs a frame about every 700 ms and halts itself once 120 are in hand; frames are shrunk to at most 800 px wide, and the delay stored in the GIF follows the cadence that was really measured, not the nominal one. Calling export while the loop still runs stops it first, and the frames outlive the export - clear them when you are done, or the next start_recording carries on the same set. Frames live in server memory only: a tab that closes mid-recording ends the loop with a note in the next reply, and any frame whose size differs from the first (a window resize partway through) is dropped at encode time and counted in the result. Where Chrome pushes the finished GIF through the browser download machinery, this server writes it into the session's download folder itself and gives you back the full path.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tabId | Yes | The tab to film. Frames are filed under this id, so stop_recording, export and clear only touch the recording that was started for the same tab. tabs_context_mcp lists the ids in this session. | |
| action | Yes | Which step to run. start_recording begins capturing this tab, or picks up a set of frames that was stopped earlier; stop_recording closes the loop while keeping the frames; export turns them into a GIF file; clear discards them and frees the memory. | |
| options | No | Overlay and encoding settings; only export reads them. The five overlay switches - showClickIndicators, showDragPaths, showActionLabels, showProgressBar, showWatermark - are booleans that are all on to begin with, and quality is a number from 1 to 30 that starts at 10. Anything you omit keeps that starting value. | |
| download | No | Kept so a call written for Chrome runs here unchanged, where it routes the GIF through the browser's downloads. This server always writes the file itself and returns its path, so the flag alters nothing; pass it alongside export or leave it off. | |
| filename | No | What the exported file should be called; read by export and ignored elsewhere. Left out, the server counts up through recording-1.gif, recording-2.gif and so on, stepping over names already in the folder. Any directory part is stripped, and .gif is appended when the name lacks it. |