Setup
Set up MakersMCP
Add MakersMCP to your app once, and your agent reaches every kit through it. It all runs on your own machine.
You need Node 22 or newer and the Chrome, Chromium, Edge or Brave you already have. Demo videos, launch films and music also need ffmpeg.
Add it to your app
Each setup comes two ways: with npx, which gets MakersMCP from npm, and from source, which runs a copy you build yourself.
Once it is in your app, ask your agent for what you need, like “make a launch film for linear.app” or “get the brand kit and the fonts of stripe.com”.
With npx, keep the version in the setup: without it, npx can go on using an older copy it cached. From source, write the full path of your copy in place of /path/to/makersmcp.
Claude Code
In a terminal:
claude mcp add makersmcp -- npx -y makersmcp@0.1.0
claude mcp add makersmcp -- node /path/to/makersmcp/dist/index.js
Check it with claude mcp get makersmcp, or /mcp inside Claude Code.
Claude Desktop
Add this to claude_desktop_config.json, then quit Claude Desktop fully and open it again:
{
"mcpServers": {
"makersmcp": {
"type": "stdio",
"command": "npx",
"args": ["-y", "makersmcp@0.1.0"]
}
}
}
{
"mcpServers": {
"makersmcp": {
"type": "stdio",
"command": "node",
"args": ["/path/to/makersmcp/dist/index.js"]
}
}
}
Claude Desktop starts servers outside any project, so the files go to ~/makersmcp, which makersmcp makes with the first job. For another folder, add an env to the entry, like this one. A leading ~ is your home folder.
"env": { "MAKERSMCP_OUT": "~/Documents/makersmcp" }
Cursor
Open the command palette (Cmd+Shift+P, or Ctrl+Shift+P on Windows and Linux), run “Open MCP settings” and add:
{
"mcpServers": {
"makersmcp": {
"command": "npx",
"args": ["-y", "makersmcp@0.1.0"]
}
}
}
{
"mcpServers": {
"makersmcp": {
"command": "node",
"args": ["/path/to/makersmcp/dist/index.js"]
}
}
}
VS Code
In a terminal:
code --add-mcp '{"name":"makersmcp","command":"npx","args":["-y","makersmcp@0.1.0"]}'
code --add-mcp '{"name":"makersmcp","command":"node","args":["/path/to/makersmcp/dist/index.js"]}'
Codex
In a terminal:
codex mcp add makersmcp -- npx -y makersmcp@0.1.0
codex mcp add makersmcp -- node /path/to/makersmcp/dist/index.js
Windsurf
Open Settings, then MCP, and add the same entry as for Cursor:
{
"mcpServers": {
"makersmcp": {
"command": "npx",
"args": ["-y", "makersmcp@0.1.0"]
}
}
}
{
"mcpServers": {
"makersmcp": {
"command": "node",
"args": ["/path/to/makersmcp/dist/index.js"]
}
}
}
OpenClaw
Add it under mcp.servers in your OpenClaw config:
{
"mcp": {
"servers": {
"makersmcp": {
"command": "npx",
"args": ["-y", "makersmcp@0.1.0"]
}
}
}
}
{
"mcp": {
"servers": {
"makersmcp": {
"command": "node",
"args": ["/path/to/makersmcp/dist/index.js"]
}
}
}
}
Check it with openclaw mcp doctor makersmcp --probe.
Hermes
Add it under mcp_servers in ~/.hermes/config.yaml, then run /reload-mcp:
mcp_servers:
makersmcp:
command: "npx"
args: ["-y", "makersmcp@0.1.0"]
timeout: 60
mcp_servers:
makersmcp:
command: "node"
args: ["/path/to/makersmcp/dist/index.js"]
timeout: 60
Other apps
Any MCP client that runs stdio servers can start it with:
npx -y makersmcp@0.1.0
node /path/to/makersmcp/dist/index.js
Run it from source
-
Get the code and build it:
git clone https://github.com/EminBudak/makersmcp.git cd makersmcp npm install npm run build -
See what it found: the kits, Chrome, ffmpeg and the folder it saves to.
node dist/index.js --check In your app's setup above, pick From source:
nodeas the command and the full path ofdist/index.jsas its argument.
Pick your kits
Every kit is on unless you say otherwise. To give your agent fewer tools, name the kits you use:
npx -y makersmcp@0.1.0 --kits easybrandkit,launch-film
node /path/to/makersmcp/dist/index.js --kits easybrandkit,launch-film
In an app's settings, the same goes at the end of args:
"args": ["-y", "makersmcp@0.1.0", "--kits", "easybrandkit,launch-film"]
"args": ["/path/to/makersmcp/dist/index.js", "--kits", "easybrandkit,launch-film"]
--kits all turns them all on, as leaving it out does. These are the kits:
- easybrandkitDesignA website's logo files, colors, fonts and first screen.
- easyfontkitDesignA site's fonts, with their licenses and free look-alikes.
- easyscreenshotkitImageClean screenshots and a short demo video of a website.
- launch-filmVideoA launch film with music, the launch pictures, and a check for any video.
- musicfitSoundA music track cut to fit your video.
Where the files go
Every tool saves its files in a folder and gives back the folder, the files it saved there and the kit's own notes, like BRAND.md. The folders go where makersmcp starts, which is your project for a coding agent, or ~/makersmcp when it cannot write there. A folder that is not there yet is made with the first job.
To choose another place, give --out or MAKERSMCP_OUT, or give a tool its own out_dir.
launch-film keeps the brand kit a film uses in a brand/ folder next to film.json, and can delete that folder and make it again. makersmcp does not start it when that would lose a file in brand/ that is not a kit's own, like one you added. It looks only before the kit starts, so keep files you care about outside brand/.
Long jobs
A long job, like rendering a film, keeps going after the tool returns. The tool then gives back a job_id, and your agent calls wait_for_job with it until the job ends. list_jobs and cancel_job do what they say, and check_setup tells what is missing when a kit fails to start.
When your app closes makersmcp, or makersmcp ends some other way, its jobs stop too, with the browsers and ffmpeg they started.
When something fails
The tools do not show up
Check that node --version says 22 or newer, then restart your app. This lists what makersmcp found:
npx -y makersmcp@0.1.0 --check
node /path/to/makersmcp/dist/index.js --check
A kit's tools are missing
--check says why. Every kit comes with makersmcp, so look at --kits and --kit-path, and from source run npm install again after a git pull.
A kit cannot find Chrome or ffmpeg
Set CHROME_PATH and FFMPEG_PATH in the server's env. launch-film reads LAUNCH_FILM_CHROME and LAUNCH_FILM_FFMPEG.
A long job runs into your app's time limit
No call waits longer than wait_seconds, 45 by default. A job still running then comes back with a job_id and next_action: wait_for_job. The agent should call that, never the first tool again, which would start a second job. Where your app lets you set a tool timeout, keep it above 45 seconds.
Settings
An option goes after the command, which in an app's settings means at the end of args. A variable goes in the server's env.
| Option | Environment | What it does |
|---|---|---|
--kits <list> | MAKERSMCP_KITS | Turns on only these kits, like easybrandkit,launch-film. Leave it out or give all for every kit. |
--out <dir> | MAKERSMCP_OUT | Where the folders go, made with the first job. ~ is your home folder. |
--kit-path <kit>=<dir> | MAKERSMCP_KIT_PATHS | Runs a kit's checkout instead of the package that comes with makersmcp. ~ is your home folder. |
--check | Prints the kits, Chrome, ffmpeg and the folder, and exits. |
MakersMCP is open source under the MIT license, and its code is on GitHub.