Get the FREE Ultimate OpenClaw Setup Guide →

mcp-screenshot

MCP server for screenshot capture and image annotation with boxes, lines, arrows, and text

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio aamar-shahzad-mcp-screenshot-server python -m mcp_screenshot_server

How to use

The MCP Screenshot Server provides a Python-based service for capturing screenshots and applying rich, multi-type annotations. It exposes tools for taking full or region-specific screenshots, loading existing images, and applying a broad set of annotations such as boxes, arrows, lines, circles, text overlays, highlights, and borders. The annotation tools support flexible positioning (named positions like top-left, center; percentages; or pixel coordinates), anchor and offset controls for precise alignment, and auto-adjustment to keep annotations within image bounds. You can perform batch annotations and label multiple regions in a single operation, and even leverage pixel-perfect mode for coordinate-accurate work. When paired with AI vision models, the server can assist in placing annotations by providing coordinates for elements detected in the image. Combinations with Cursor AI, Claude, Gemini, or other vision-capable tools are supported to streamline workflows.

To use the server, install the package via pip or uv as described in the installation guide, then run the server (and choose the desired transport if needed). Client tools or editor integrations can call the mcp-screenshot-server to capture or load images, then issue annotation commands such as annotate, precise_annotate, batch_annotate, or label_regions. The HTTP and SSE transports let web clients or streaming editors connect, making it versatile for desktop automation, web UIs, or browser extensions.

How to install

Prerequisites:\n- Python 3.10+ (as indicated by the project badge)\n- pip (comes with Python)\n- Optional: uv for an accelerated development workflow (as per the README)\n\nStep-by-step installation:\n1) Install the package via pip:\n\nbash\npip install mcp-screenshot-server\n\n\n2) (Recommended) Install with uv for a lightweight development utility:\n\nbash\nuv add mcp-screenshot-server\n\n\n3) From source (optional):\n\nbash\ngit clone https://github.com/aamar-shahzad/mcp-screenshot-server.git\ncd mcp-screenshot-server\npip install -e .\n\n\n4) Run the server (example):\n\nbash\nmcp-screenshot-server\n\nIf you need HTTP transport:\n\nbash\nmcp-screenshot-server --transport streamable-http --port 8000\n

Additional notes

Notes and tips:\n- This server is Python-based and uses the package name mcp-screenshot-server; the executable entry point is typically exposed as a console script named mcp-screenshot-server.\n- If you run into path or environment issues, ensure Python 3.10+ is active in your environment and that the package was installed correctly (check by running which mcp-screenshot-server or python -m mcp_screenshot_server for validation).\n- For Docker-based setups, you can containerize the server and use the Docker transport option in your client configuration.\n- The integration with Cursor AI supports multiple methods (local installation, uvx, or Docker) to suit your workflow.\n- For pixel-perfect annotation, use precise_annotate with explicit x/y coordinates.\n- If you plan to expose the server over HTTP or SSE, ensure proper network security if used in untrusted environments.\n

Related MCP Servers

Sponsor this space

Reach thousands of developers