Windows Screenshots
A Model Context Protocol (MCP) server that provides screenshot capture functionality on Windows systems.
MCP Windows Screenshots
A Model Context Protocol (MCP) server that provides screenshot capture functionality on Windows systems.
Features
- Full-screen screenshots: Capture entire monitors or all monitors
- Region screenshots: Interactive area selection for targeted captures
- Screenshot management: List and manage captured screenshots
- Image embedding: Optional base64 image embedding in MCP responses
- Cross-monitor support: Handle multi-monitor setups
Prerequisites
- Windows OS (currently Windows-only)
- Node.js >= 18.0.0
- Helper executable: A Windows executable (RegionSnip.exe) that handles the actual screenshot capture
Installation
-
Clone the repository
-
Install dependencies:
npm install
- Build the project:
npm run build
- Ensure the helper executable exists at
bin/RegionSnip.exe
Usage
As an MCP Server
This server communicates via stdio and can be used with any MCP-compatible client (like Claude Desktop).
Start the server:
npm start
Or with the MCP inspector for debugging:
npm run inspector
Usage with npx
You can run this MCP server directly using npx without installing it globally:
Cursor
Add to your .cursor/mcp.json:
{
"mcpServers": {
"windows-screenshots": {
"command": "npx",
"args": ["mcp-windows-screenshot"]
}
}
}
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"windows-screenshots": {
"command": "npx",
"args": ["mcp-windows-screenshot"]
}
}
}
Windsurf
Add to your ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"windows-screenshots": {
"command": "npx",
"args": ["mcp-windows-screenshot"]
}
}
}
Available Tools
takeScreenshot
Captures a full-screen screenshot.
Parameters:
mode: Always "full" (default)allMonitors: Capture all monitors (default: true)monitor: Specific monitor number (optional)includeImage: Embed image as base64 in response (default: false)timeoutMs: Timeout in milliseconds (default: 60000)
Example:
{
"mode": "full",
"allMonitors": true,
"includeImage": true
}
Response:
{
"ok": true,
"cancelled": false,
"path": "screenshots/full-2024-01-14T10-53-52-000Z.png",
"rect": {"x": 0, "y": 0, "width": 1920, "height": 1080},
"width": 1920,
"height": 1080,
"mode": "full",
"allMonitors": true,
"monitor": null
}
takeSelectedAreaScreenshot
Allows interactive selection of a screen region to capture.
Parameters:
mode: Always "region" (default)includeImage: Embed image as base64 in response (default: false)timeoutMs: Timeout in milliseconds (default: 120000)
Example:
{
"includeImage": true
}
Response:
{
"ok": true,
"cancelled": false,
"path": "screenshots/region-2024-01-14T10-53-52-000Z.png",
"rect": {"x": 100, "y": 100, "width": 800, "height": 600},
"width": 800,
"height": 600,
"mode": "region"
}
listScreenshots
Lists saved screenshots in the screenshots directory.
Parameters:
limit: Maximum number of screenshots to return (default: 50, max: 200)
Example:
{
"limit": 10
}
Response:
{
"items": [
{
"path": "screenshots/region-2024-01-14T10-53-52-000Z.png",
"sizeBytes": 245760,
"createdAt": "2024-01-14T10:53:52.000Z"
}
]
}
Configuration
Helper Executable
The server requires a helper executable at bin/RegionSnip.exe that supports the following command-line arguments:
--mode full|region: Capture mode--out <path>: Output file path--all: Capture all monitors (full mode only)--monitor <n>: Specific monitor number (full mode only)
The executable should output JSON to stdout with the following structure:
{
"ok": true,
"cancelled": false,
"rect": {"x": 0, "y": 0, "width": 1920, "height": 1080},
"width": 1920,
"height": 1080
}
Screenshots Directory
Screenshots are automatically saved to the screenshots/ directory in the project root. This directory is created automatically if it doesn't exist.
Development
Building
npm run build
Testing
The server can be tested using the MCP inspector:
npm run inspector
This starts the server and opens a debugging interface to test the available tools.
Project Structure
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript output
├── screenshots/ # Screenshot storage directory
├── bin/
│ └── RegionSnip.exe # Helper executable (not included)
├── package.json
└── README.md
संबंधित सर्वर
Jupiter Solana MCP Server
A comprehensive MCP (Model Context Protocol) server for interacting with Jupiter Protocol on Solana. Features token swaps, search, portfolio management, and intelligent error diagnostics.
Nomad Stays
The world's platform for finding and booking digital nomad friend accommodation
QuantToGo MCP
Macro-factor quantitative signal source — 8 live-tracked strategies (US + China), free 30-day trial, AI agent self-registration via MCP tools.
mcp-server-sentinel
Crypto trading backtesting, bot deployment, and account management for Sentinel Bot via AI agents.
Tidewrath
Play a roguelike MMO as an AI agent. Explore, fight, chat, and survive tsunamis via 50+ MCP tools
MCP-Ambari-API
Automate Apache Ambari operations with AI/LLM: Natural language commands for Hadoop cluster management, service control, configuration monitoring, and real-time status tracking via Model Context Protocol (MCP) tools.
CraftedTrust
Independent trust verification for MCP servers. 7-factor trust scoring, 3,400+ packages indexed, embeddable badges, free API. Agents can query trust scores natively via MCP protocol.
TI Mindmap HUB — MCP Server
TI Mindmap HUB MCP Server provides AI assistants with direct access to curated threat intelligence — reports, CVEs, IOCs, STIX bundles, and weekly briefings — through the Model Context Protocol.
Time MCP Server
Provides time-related functions such as current time queries, timezone conversions, and time difference calculations.
OpenDART MCP
orean corporate disclosure & financial data from DART (금융감독원 전자공시시스템). Search companies, filings, and financial statements via OpenDART API.