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
相关服务器
PublicFinance MCP
SEC EDGAR filings, treasury rates, labor statistics, and economic indicators for financial research
xuanxue-bazi-matching
Deterministic Chinese divination APIs (BaZi/QiMen/ZiWei/MeiHua/LiuYao/LiuRen) for AI agents — pay-per-call via x402 on Base.
AltBots — Fund Manager Intelligence
Institutional research and manager diligence reports on hedge funds, venture capital and private equity managers. Summary of filings, personnel changes, media screening and social signals delivered to you in minutes.
mcp-cli-catalog
An MCP server that publishes CLI tools on your machine for discoverability by LLMs
Map Traveler
A virtual travel environment for an avatar on Google Maps, utilizing various Google Maps and optional AI image generation APIs.
Duplicacy MCP
Monitor backup status and query Prometheus metrics from a Duplicacy exporter
GuruWalk MCP Server
Discover and book free walking tours and activities in 200+ cities worldwide. Search destinations, browse categories, check real-time availability, and get tour details.
RateAPI MCP Server
Real interest rates from 1,400+ US credit unions across 50 states. Covers mortgages, auto loans, HELOCs, personal loans, and credit cards. Rates ranked by APR with zero affiliate bias. Works with Claude Desktop and ChatGPT. Free tier available.
USA Spending MCP
Track government spending, search government spending be agency, explore government spending to communities, and much more.
Market Intelligence MCP
Recession probability scoring, capital rotation analysis, investment calculators, and real-time economic data. 19 tools for financial market intelligence