mcpbeat Sign in

Ventriloquist MCP Server

local only

Ventriloquist runs on your own machine — the client starts it, so there is no endpoint to ping. 1 073 installs a week from pypi. Last commit 31 Oct 2026.

Turn Mac apps into MCP tools via the accessibility API: no screenshots, no model per step.

Installs per day peak 601 · avg 142 · -52% w/w
a month agotoday
1 073
Installs / week
pypi · ventriloquist-mcp
2
Stars
1 open issue
31 Oct 2026
Last commit
from GitHub
MIT
License
Python

What the code does

We read the source, 2 d ago · rules 995398eba69f

Capabilities

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.

            subprocess.run(launch, check=True, timeout=15)

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

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.

Three servers free · no card

Connect this server

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.

run in your terminal
claude mcp add ventriloquist -- uvx ventriloquist-mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ventriloquist": {
      "command": "uvx",
      "args": [
        "ventriloquist-mcp"
      ]
    }
  }
}
~/.codex/config.toml
[mcp_servers.ventriloquist]
command = "uvx"
args = ["ventriloquist-mcp"]
.cursor/mcp.json
{
  "mcpServers": {
    "ventriloquist": {
      "command": "uvx",
      "args": [
        "ventriloquist-mcp"
      ]
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "ventriloquist": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "ventriloquist-mcp"
      ]
    }
  }
}

Optional settings from the registry entry, left out of the block above: VENT_LIVE (Set to 1 for live mode: the agent can look at and use any running app through its accessibility tree, and save steps that worked as a tool once you approve them. Sends, deletes and the like ask you first), VENT_ALLOW_HIGH (Set to 1 to run tools a pack marks as high risk without asking. Without it, they're offered only to clients that can ask you to confirm each call (MCP elicitation)), VENT_HEAL (Set to 1 to let the server call a model to re-ground broken anchors. Off keeps serving model-free), VENT_HOME (Directory for your own packs and traces. Defaults to ~/.ventriloquist), VENT_READ_ONLY (Set to 1 to serve read-only tools only. Every other call is refused, even with VENT_ALLOW_HIGH), VENT_NO_VALUES (Set to 1, together with VENT_HEAL=1, to keep field values out of what the healer sends to the model).

Alternatives to Ventriloquist

same job, measured the same way
Win Mind
by jhonpork1233-beep

See and drive any Windows app via the accessibility tree - no screenshots - plus 200+ native tools

local only
AI Browser
by glittering

Visible Electron browser driven by a semantic accessibility tree: 17 MCP tools, no screenshots.

3 011 installs/wk local only
Getsnap
by getsnap

Screenshots, PDFs, visual diffs and accessibility audits, returned inline so a model can see them

112 installs/wk local only
Mockupper
by damdafayton

Turn raw screenshots into professional device mockups & app store visuals in seconds with AI.

answering
Screenshotrender MCP
by faridmth

Capture website screenshots from any MCP client via the ScreenshotRender API.

35 installs/wk local only
StoreShots
by co-qaimos-storeshots

Turn raw app screenshots into App Store and Google Play marketing screenshots.

50 installs/wk local only
lo-eyes
by sophiacave

Visual accessibility inspector. WCAG contrast, touch targets, heading audits, screenshots.

76 installs/wk local only
Screenshotty
by nihey

Capture web pages as screenshots (returned inline) or PDFs via the Screenshotty API.

51 installs/wk local only

Ventriloquist — questions

Answers built from our own checks of this server.

Why is there no uptime for Ventriloquist?
Ventriloquist runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the pypi package ventriloquist-mcp was installed 1 073 times last week.
How do I connect Ventriloquist?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It runs locally, so the command pulls ventriloquist-mcp straight from pypi; nothing to host, nothing to sign up for.
How many people use Ventriloquist?
The pypi package ventriloquist-mcp was installed 1 073 times in the last week. Week over week that is -52%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Ventriloquist open source?
Yes — it is published under the MIT licence, written in Python, 2 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.