KeyShot MCP runs on your own machine — the client starts it, so there is no endpoint to ping. 274 installs a week from npm. Last commit 27 Oct 2026.
Control local KeyShot scenes, cameras, environments, and renders through headless scripting.
We read the source, 5 d ago · rules 995398eba69f
What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.
const child = spawn(command, args, {
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add keyshot-mcp -e 'KEYSHOT_HEADLESS_EXE=<KEYSHOT_HEADLESS_EXE>' -- npx -y keyshot-mcp
{
"mcpServers": {
"keyshot-mcp": {
"command": "npx",
"args": [
"-y",
"keyshot-mcp"
],
"env": {
"KEYSHOT_HEADLESS_EXE": "<KEYSHOT_HEADLESS_EXE>"
}
}
}
}
[mcp_servers.keyshot-mcp]
command = "npx"
args = ["-y", "keyshot-mcp"]
env = { KEYSHOT_HEADLESS_EXE = "<KEYSHOT_HEADLESS_EXE>" }
{
"mcpServers": {
"keyshot-mcp": {
"command": "npx",
"args": [
"-y",
"keyshot-mcp"
],
"env": {
"KEYSHOT_HEADLESS_EXE": "<KEYSHOT_HEADLESS_EXE>"
}
}
}
}
{
"servers": {
"keyshot-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"keyshot-mcp"
],
"env": {
"KEYSHOT_HEADLESS_EXE": "<KEYSHOT_HEADLESS_EXE>"
}
}
}
}
Put your own value in place of
<KEYSHOT_HEADLESS_EXE> (Absolute path to KeyShot headless, or a command available on PATH).
The author’s registry entry marks it as required.
Optional settings from the registry entry, left out of the block above:
KEYSHOT_OUTPUT_DIR (Root directory for rendered images and saved scenes), KEYSHOT_ALLOW_EXTERNAL_OUTPUTS (Set to true only when output paths outside KEYSHOT_OUTPUT_DIR are required), KEYSHOT_TIMEOUT_MS (Timeout in milliseconds for one KeyShot headless process), KEYSHOT_LICENSE_ARGS (Optional additional KeyShot launch arguments), KEYSHOT_MATERIAL_PRESETS (Optional path to a user-managed material preset JSON file), KEYSHOT_CAMERA_PRESETS (Optional path to a user-managed camera preset JSON file).
Control a local headless Chrome browser: open pages, read titles, and take screenshots.
Drive a local Blender headlessly: inspect, convert, render and script 3D files.
Local-only Chrome and Edge control for MCP clients through an origin-scoped extension.
Edit Godot 4 scenes, nodes and scripts; run, test and debug games live in the editor or headless.
Local-first MCP asset QA for headless Blender: bounded scripts, FBX reimports, four-view renders.
Capture, OCR-search, and retrieve local Mac screenshots for AI agents through Stashot.
Control a real iPhone through macOS iPhone Mirroring: screenshot, tap, swipe, type.
Local QA workflows, test evidence, screenshot maps and confidence reports for AI coding agents.
Answers built from our own checks of this server.