mcp-screenshot
An MCP server that provides AI assistants with screenshot capabilities — both web page capture via Puppeteer and cross-platform system screenshots using native OS tools.
claude mcp add --transport stdio sethbang-mcp-screenshot-server npx -y universal-screenshot-mcp
How to use
This MCP server exposes two tools for taking screenshots: take_screenshot and take_system_screenshot. take_screenshot uses a headless Chromium browser via Puppeteer to capture web pages or specific elements. It can capture a full page, a viewport of a given width and height, or a particular element selected by a CSS selector. You can also wait for a selector before capturing and specify an output path. take_system_screenshot uses native OS tools to capture the desktop, a specific window, or a region, with cross‑platform support for macOS, Linux, and Windows. It supports fullscreen, window, and region modes, optional delay, and output path settings. These tools enable integrated, automated visual captures within MCP client workflows such as Claude Desktop or Cursor.
How to install
Prerequisites:
- Node.js >= 18.0.0
- npm (comes with Node.js)
Install the MCP server globally via npm and run it directly, or install from source if you prefer to build locally.
Option A: Install globally and run from CLI
npm install -g universal-screenshot-mcp
npx universal-screenshot-mcp
Option B: Install from source
git clone https://github.com/sethbang/mcp-screenshot-server.git
cd mcp-screenshot-server
npm install
npm run build
Both approaches install the server and make the two MCP tools available to your MCP clients. If you install from source, you’ll typically run the built server entry point (as described by your client configuration).
Configure your MCP client to point at this server (see how_to_use for client setup examples).
Additional notes
Notes and tips:
- The server relies on Puppeteer to render web pages; Chromium is downloaded automatically on first run.
- take_system_screenshot depends on platform-specific tools (macOS screencapture, Linux maim/scrot/gnome-screenshot/etc., Windows PowerShell/.NET). Ensure at least one supported tool is available on the host.
- Output defaults to ~/Desktop/Screenshots but can be customized via outputPath in the tool configurations.
- Security: the server enforces multiple protections (SSRF, path traversal, command injection, DoS mitigation) to minimize risk when invoking system commands or rendering remote pages.
- For Claude Desktop, you may need to adjust the client config to reference the correct npm or node invocation depending on your installation method.
Related MCP Servers
ai-trader
Backtrader-powered backtesting framework for algorithmic trading, featuring 20+ strategies, multi-market support, CLI tools, and an integrated MCP server for professional traders.
robloxstudio
Create agentic AI workflows in ROBLOX Studio
mcp
🤖 Taskade MCP · Official MCP server and OpenAPI to MCP codegen. Build AI agent tools from any OpenAPI API and connect to Claude, Cursor, and more.
mcpcat-python-sdk
MCPcat is an analytics platform for MCP server owners 🐱.
apple-mail
MCP server giving AI assistants full access to Apple Mail - read, search, compose, organize & analyze emails via natural language
packt-netops-ai-workshop
🔧 Build Intelligent Networks with AI