screen-capture-mcp
Allows capturing screenshots of the Unity editor window for visual feedback during development.
Allows capturing screenshots of the Unreal Engine window for visual feedback during development.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@screen-capture-mcpTake a screenshot of the Unreal Engine window"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
screen-capture-mcp
A quick and easy MCP server that gives Claude Code (or any MCP client) the ability to take screenshots of your screen or specific programs over any specified interval (e.g. "take a screenshot of Unreal Engine every 5 seconds for the next minute".) Useful when working on games, GUIs, or anything visual where Claude needs to see what you see.
Windows only — uses PowerShell and .NET for screen capture.
Why?
When you're working with Claude Code on something visual — a game, a UI, a 3D editor — Claude is blind. It can read your code but has no idea what the result actually looks like. You end up manually screenshotting, dragging images into the chat, and explaining what you're looking at.
This MCP server fixes that. Once installed, Claude can take screenshots on its own whenever it needs to see what's happening on screen.
Related MCP server: snip-mcp
Features
Full screen capture — captures your primary display
Window capture — capture a specific window by title (partial match)
Auto-resize — images are resized to 1280px wide to save tokens
Zero native dependencies — uses PowerShell/.NET built into Windows, no native compilation needed
Installation
Via npm (recommended)
npm install -g screen-capture-mcpThen register it with Claude Code:
claude mcp add -s user -t stdio screen-capture-mcp -- screen-capture-mcpOr add it manually to your ~/.claude.json:
{
"mcpServers": {
"screen-capture-mcp": {
"type": "stdio",
"command": "npx",
"args": ["-y", "screen-capture-mcp"]
}
}
}From source
git clone https://github.com/kmoulder/screen-capture-mcp.git
cd screen-capture-mcp
npm install
npm run build
claude mcp add -s user -t stdio screen-capture-mcp -- node /path/to/screen-capture-mcp/dist/index.jsRestart Claude Code after registering.
Usage
Once registered, Claude Code can call the take_screenshot tool. You can ask for screenshots naturally:
"Take a screenshot"
"Take a screenshot of the Godot window"
"Show me what the game looks like right now"Monitoring Over Time
Because Claude can call the tool repeatedly, you can ask it to watch your screen over time:
"Take a screenshot every 5 seconds for the next minute and describe what changes"
"Wait 30 seconds then take a screenshot"
"Watch the Unity window and let me know when the build finishes"
"Capture the game window every 10 seconds while I playtest — give me feedback on the UI"This is especially useful for:
Playtesting feedback — run your game and get real-time observations from Claude as you play
Build monitoring — have Claude watch a long-running build or deployment and notify you when it's done
UI iteration — make changes in an editor and have Claude compare screenshots to track progress
Bug reproduction — ask Claude to capture screenshots while you reproduce a bug, then analyze the sequence
Bringing Visual Context Into Coding Tasks
You can also mix screenshots into normal development work:
"Look at the game window and then fix the player sprite so it faces the right direction"
"Take a screenshot of the editor, then update the CSS to match the mockup I have open"
"Check what the app looks like in the browser and fix any layout issues you see"This closes the loop between writing code and seeing results — Claude can make a change, screenshot the result, and iterate.
Tool Schema
take_screenshot(window_title?: string)Parameter | Type | Description |
|
| Window title to capture (partial match). Omit for full screen. |
Returns a base64-encoded PNG image.
Privacy
Screenshots are captured and processed entirely on your local machine. Nothing is uploaded, saved to disk, or sent to any external service by this tool.
The captured image is:
Taken locally via PowerShell/.NET
Resized in-memory using
sharpPassed directly to Claude Code via the MCP protocol as base64
No screenshots are written to your filesystem — they exist only in memory for the duration of the MCP tool call. The image data is sent to the Claude API as part of your conversation (the same as if you had dragged a screenshot into the chat yourself), but it is never stored or logged by this server.
If you want to verify this, the entire server is a single file — src/index.ts.
How It Works
Uses PowerShell with
System.DrawingandSystem.Windows.Formsto capture the screenFor window-specific capture, uses
user32.dll GetWindowRectvia P/Invoke to find and capture the target windowImages are resized to 1280px wide using
sharpbefore being returned to keep token usage reasonableNo temp files or disk writes — everything happens in memory
Requirements
Windows 10/11
Node.js 18+
PowerShell (included with Windows)
License
MIT
Available Tools
1 tooltake_screenshotA
Captures a screenshot of the primary display or a specific window. Returns the image as a PNG. If window_title is provided, captures only that window (partial title match). Otherwise captures the full screen.
| Name | Required | Description | Default |
|---|---|---|---|
| window_title | No | Optional window title to capture (partial match). If omitted, captures the full primary screen. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the basic behavior (captures primary display or window, returns PNG) but does not mention file size, permissions required, or whether it is a safe read-only operation. It adequately describes the core behavior without contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise—two sentences that front-load the main action ('Captures a screenshot...') and then clarify the optional parameter behavior. Every sentence is necessary and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema or nested objects, the description is nearly complete. It could mention that the screenshot is of the primary display only (not multiple monitors) or specify resolution, but these are minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the parameter fully (100% coverage). The description adds the important detail that window_title uses partial matching, which is not in the schema. This adds value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool captures a screenshot of the primary display or a specific window, and returns a PNG. It distinguishes between full-screen and window capture based on the optional parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to provide window_title (to capture a specific window) and when not (for full screen). No sibling tools exist, so no need for alternatives. It could be clearer on prerequisites or limitations, but it's adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v1.0.1- First observed
take_screenshot
TDQS
With only one tool, there is no risk of ambiguity or confusion. The tool's purpose is clearly defined.
A single tool named 'take_screenshot' uses a clear verb_noun pattern, consistent with itself.
One tool is entirely appropriate for a screen-capture server, covering the core functionality without unnecessary bloat.
The tool covers the primary use cases (full screen and window capture) but lacks features like region selection or format options, which are minor gaps.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
MCP server for visual regression testing: triage a PR's UI diffs from your coding agent.
9118Screenshot and HTML render MCP server for AI agents
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that enables Claude to access Windows screenshots from WSL2, allowing users to easily share screenshots with Claude Code without manually navigating complex file paths.3286MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server for capturing screen regions directly into Claude Code conversations via hotkeys or tool calls. It provides Windows-specific screen snipping with multi-monitor support, persistent storage, and automatic management of captured images.MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for screen recording and screenshots, bridging Claude Code with Chrome extensions.-
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI coding agents to capture screenshots of macOS windows and displays on demand, providing tools for window discovery and screen capture.162MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/kmoulder/screen-capture-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server