Lets a coding agent read the screenshots you beam to its server with Hostbeam.
Hostbeam sends a screenshot from your Mac to a server over SSH and puts the remote path on your clipboard, so you can paste it to a coding agent running there.
This MCP server runs on that server, next to the agent. The agent can ask for the screenshot you just beamed and read it, without you pasting the path.
On the server your agent runs on, not on your Mac. Node 18 or later.
For Claude Code:
claude mcp add -s user hostbeam -- npx -y @hostbeam/mcp
-s user makes it available in every project on that server.
For other MCP clients, in their JSON config:
{
"mcpServers": {
"hostbeam": {
"command": "npx",
"args": ["-y", "@hostbeam/mcp"]
}
}
}
If the server can't reach npm, copy hostbeam-mcp.mjs to it and run that
instead. It has no dependencies.
claude mcp add -s user hostbeam -- node /path/to/hostbeam-mcp.mjs
Hostbeam beams to /tmp/hostbeam unless you changed the folder for that host.
If you did, give the server the same folder: -e HOSTBEAM_DIR=/your/folder for
Claude Code, or "env": { "HOSTBEAM_DIR": "/your/folder" } in JSON.
latest_screenshot returns the most recent beam as images, with how long
ago it arrived. If you beamed several files at once, it returns all of them,
up to six, and names the rest.list_screenshots lists recent beams with file names, sizes and times. No
image data.read_screenshot returns one file by name.Only files Hostbeam delivered: names starting with hostbeam- with an image
extension, in that one folder. It doesn't look in subfolders, and it refuses a
name with a path in it. It never writes, moves or deletes anything.
JPEG, PNG, GIF and WebP come back as images. Other formats, and anything over 8 MB, come back as a path instead, because models only accept those four as images.
It speaks newline-delimited JSON-RPC on stdin and stdout:
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"list_screenshots"}}' \
| npx -y @hostbeam/mcp
MIT
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y @hostbeam/mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"app-hostbeam-mcp": {
"command": "npx",
"args": [
"-y",
"@hostbeam/mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup reference@hostbeam/mcpnpmHostbeam works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.