PluginWorld
Ea

each::labs

MCP✓ SPEC VERIFIED✓ REGISTRY

AI media built for production. AI orchestration for image, video and audio, in any AI app.

@eachlabs · v0.3.0 · MIT · updated today

SECURITY

A+

SCORE

80

STARS

▲ 0

PLUG IN

claude mcp add --transport http each-labs https://mcp.eachlabs.ai/mcp

README

each::labs plugin for Claude, Codex and Grok Build

Generate and edit images, video, music and voice with each::labs models, and run your organization's each::labs workflows, by asking in a conversation. The plugin also cuts, crops, resizes and converts media, and shows small interactive cards inside the chat where you upload a file, adjust a model's settings or pick one of several results.

It works in Claude Chat (claude.ai), Claude Desktop, Cowork and Claude Code, and in the Codex app, Codex CLI and Grok Build. You sign in with your each::labs account; there is no API key to paste.

Install

The plugin is installed from its own marketplace, eachlabs/plugin. The same repository serves Claude, Codex and Grok Build.

Where How
Claude Chat, Claude Desktop Customize, Plugins, Add marketplace, enter eachlabs/plugin, then add the eachlabs plugin
Claude Code claude plugin marketplace add eachlabs/plugin, then claude plugin install eachlabs@eachlabs
Codex CLI codex plugin marketplace add eachlabs/plugin, then codex plugin add eachlabs@eachlabs, then codex mcp login eachlabs
Codex app Add the marketplace with the CLI command above, then install the eachlabs plugin from Plugins
Grok Build grok plugin install eachlabs/plugin --trust, then sign in when Grok opens the each::labs page in your browser

Team and Enterprise. An Owner can add the connector https://mcp.eachlabs.ai/mcp for the whole organization. Each member adds the plugin marketplace themselves, because organization-wide plugin sync on claude.ai accepts only the organization's own private repositories. Each member then signs in with their own each::labs account. That account must belong to the each::labs organization that should pay for the runs; a member who signs in with a personal account is billed there instead.

Updating. In Claude Chat and Claude Desktop a plugin installed from the marketplace updates automatically, with no restart. In Claude Code, run claude plugin update eachlabs@eachlabs, then /reload-plugins. In Codex, run codex plugin marketplace upgrade. In Grok Build, run grok plugin update eachlabs.

Sign in

After installing, open the plugin's Connectors tab and choose Connect. A browser window opens on each::labs: sign in and pick the organization to use. Every model run and workflow run is billed to that organization, the same way as a run from the each::labs dashboard or API.

In Grok Build, the browser opens the first time the plugin is used. To sign in again, open /mcps and press i on eachlabs.

What to ask

Ask in your own words. Claude chooses the model, reads its inputs and runs it. Some examples:

Task Example
Images "Generate a product photo of a white sneaker on a marble table, soft studio light."
Images "Give me 4 variants of a fantasy trading card with a fire dragon, I want to pick one."
Image editing "Remove the background from this photo." "Turn this portrait into a watercolor painting."
Video "Turn this image into a 5-second clip where the camera slowly pushes in."
Video "Make a 10-second video of waves hitting a lighthouse at sunset."
Music "Compose a 30-second upbeat lo-fi beat for an intro."
Voice "Read this paragraph aloud in a calm male voice." "Transcribe this interview."
Cutting and cropping "Cut the first 10 seconds of this video." "Crop this video to 9:16 for a story."
Converting "Convert this clip to a GIF." "Extract the audio from this video as mp3."
Workflows "Which workflows do we have?" "Run our product clip workflow with this photo."

When a task has several steps, such as restyling a photo and then animating it, Claude first looks for one of your organization's workflows that does the whole job, and runs it if one fits.

Cards in the conversation

In the chat apps, Claude Chat (claude.ai), Claude Desktop and the Codex app, some answers come with a small card instead of plain text. Terminals such as Claude Code, Codex CLI and Grok Build show the same results as text.

You see When
A file picker with "Choose a photo" and a progress bar A model needs a file you have not linked. One card takes a whole set of files, for example all the screenshots for a slideshow. The files go from your browser straight to each::labs storage
A form with the model's settings and a Run button You ask to adjust settings, or a run has options worth choosing first
The result: the image, a video or audio player, and download buttons Every run that produces media. A file in several formats has one button per format. A workflow's outputs show together as a gallery
Several results to choose from, and a "Use this variant" button You asked for several variants. Click between them as often as you like, then press "Use this variant"; Claude continues with that one, and the choice is final
A Compare button under an edited image or video The result is an edit of a file you gave. Drag the handle to compare before and after
A timeline with two handles, or a rectangle on the first frame You want to cut a clip or crop a frame and have not given exact numbers
A workflow's inputs as a form, with a file picker for each photo, video or audio input A workflow needs inputs you have not given

After you press a card's button, Claude continues on its own. You do not need to type anything. A card you already used stays locked on your choice when you come back to the conversation later.

After the first run of a model in a conversation, Claude ends its reply with a short Adjust generation settings line naming a few of that model's settings. Ask to change any of them and the settings form appears.

Limits

  • each::sense skills are not included. The public eachlabs/skills collection also has skills that run through each::sense, the each::labs agent. Access to each::sense is restricted to specific organizations, so this plugin does not include those skills. Most of their tasks, such as background removal, upscaling, trimming or watermarking, work through the models and video tools above.
  • Files live on each::labs storage. Uploads and results are stored by each::labs and shown from there. Anyone who has a file's link can open it; the links are long random addresses, not listed anywhere. Files are kept for 180 days, or for your organization's own retention period if it set one, and can be deleted earlier from the storage page in the each::labs dashboard.
  • Uploads. One upload card takes up to 50 files, or fewer when the chosen model accepts fewer, and up to 100 MB per file. Files upload four at a time. A card refuses too many files or a file that is too large before anything uploads. The same limits apply to the file fields on a workflow's form.
  • Long jobs. A video can take a few minutes. Claude waits for it; if a run takes longer than the wait, Claude checks again until it finishes.
  • Variants. Up to 8 results of one prompt in a single request, unless the model itself can make more in one run.
  • Workflows. Claude can list, read and run your organization's workflows and show their results. Building or editing a workflow is done in the each::labs dashboard.
  • Phones. Cards work in the Claude app; the file picker opens your photo library, not the camera.
  • Trimming FLAC audio returns an mp4 file, because the trim copies the audio without converting it. mp3, wav and m4a keep their format.

Troubleshooting

Problem What to do
A new card or an update does not show Start a new conversation. If it still does not show, reload claude.ai or restart Claude Desktop
A card says it takes fewer files than you have Tell Claude how many files you have, or ask for another card for the rest
Tools fail with a sign-in or permission error Open the plugin's Connectors tab, disconnect, and connect again
A card does not appear, only text Check you are in Claude Chat or Claude Desktop; Claude Code shows text only. Ask Claude to show the result again
A card says a file is no longer available Ask Claude to show the file again; it fetches a fresh copy of the result
The wrong organization is billed Disconnect the connector and sign in again, picking the right organization

Data

The plugin connects to one address, https://mcp.eachlabs.ai/mcp, and needs only an each::labs sign-in: no API key, and no scripts or hooks run on your machine.

Your prompts and input file links go to the each::labs MCP server, which runs them on the each::labs API under the organization you picked at sign-in. A file you add on a card goes from your browser to each::labs storage and does not pass through Claude. The plugin stores nothing itself.

Contributing

How the repository is laid out, how the skills are generated and how a version is released is in CONTRIBUTING.md.

SIMILAR PLUGINS