Skip to main content
Glama

📸 screen-view-mcp

Node.js 18+ License: MIT Code style: prettier

A powerful Model Context Protocol (MCP) tool that enables AI assistants to capture and analyze screenshots using Claude Vision API. Take screenshots, analyze screen content, and get AI insights about your desktop interface.

✨ Features

  • 📸 Instant full-screen screenshot capture

  • 🔍 AI-powered scene analysis with Claude Vision

  • 🤖 Seamless integration with MCP-compatible AI assistants

  • 🛠️ Easy configuration and setup

  • 🔄 Support for both stdio and SSE transports

🎯 Use Cases

  • Capture and analyze screenshots of your desktop

  • Analyze UI elements and layouts

  • Debug visual issues with screen captures

  • Get AI insights about screen content

  • Document interface elements and layouts

  • Screen recording and analysis

  • Desktop automation with visual feedback

Related MCP server: Desktop MCP

🚀 Quickstart

The most reliable way to install Screen View MCP is through npm:

# Install the latest version
npm install -g screen-view-mcp

# To ensure you get the exact latest version and avoid caching issues
npm install -g screen-view-mcp@2.0.15  # Replace with latest version number

Then configure your AI client as shown in the "Manual Configuration" section below.

Manual Configuration

After installing via npm, configure your AI client:

For stdio transport (default)

Claude Desktop:

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Cursor:

  • Windows: %APPDATA%/Cursor/mcp.json or ~/.cursor/mcp.json

  • MacOS: ~/Library/Application Support/Cursor/mcp.json

CLIne:

  • ~/.config/cline/mcp.json

Windsurf:

  • ~/.config/windsurf/mcp.json

{
  "mcpServers": {
    "screen-view-mcp": {
      "command": "npx",
      "args": [
        "screen-view-mcp@2.0.15"  // Specify exact version to avoid caching issues
      ],
      "transport": "stdio",
      "env": {
        "ANTHROPIC_API_KEY": "your-anthropic-api-key"
      }
    }
  }
}

For SSE transport

For clients that support SSE transport or for remote connection scenarios:

{
  "mcpServers": {
    "screen-view-mcp": {
      "command": "npx",
      "args": [
        "screen-view-mcp@2.0.15",
        "--sse",
        "--port", "8080",
        "--host", "localhost"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your-anthropic-api-key"
      }
    }
  }
}

For connecting to a remote SSE server (running on another machine):

{
  "mcpServers": {
    "screen-view-mcp": {
      "url": "http://your-server-ip:8080/sse",
      "transport": "sse",
      "env": {
        "ANTHROPIC_API_KEY": "your-anthropic-api-key"
      }
    }
  }
}

📝 Available Tools

captureAndAnalyzeScreen

Captures and analyzes the current screen content.

Parameters:

{
  prompt?: string;      // Custom prompt for analysis
  modelName?: string;   // Claude model to use
  saveScreenshot?: boolean; // Save screenshot locally
}

Example usage in Claude:

Can you analyze what's on my screen right now and describe the layout?

Troubleshooting

Common Issues

  • No access to screen capture: Make sure your AI client has screen capture permissions

  • API key errors: Verify your Anthropic API key is valid and properly set in the configuration

  • MCP tool not found: Ensure the package is installed globally (npm list -g screen-view-mcp)

  • Package version issues: Specify the exact version in your configuration to avoid caching problems

  • Transport issues: Confirm that you're using the right transport mode for your client

    • For Claude Desktop, use stdio transport (default)

    • For clients supporting SSE, you can use the --sse flag

Transport Compatibility

Here are the transport types supported by different clients:

Client

Supported Transports

Claude Desktop

stdio

Cursor

stdio, SSE

Cline

stdio, SSE

Windsurf

stdio, SSE

If you see connection errors, make sure you're using the correct transport configuration for your client.

🔧 Development

  1. Clone and install:

git clone https://github.com/yourusername/screen-view-mcp.git
cd screen-view-mcp
npm install
  1. Build:

npm run build
  1. Test locally:

# Test with stdio transport (default)
node dist/screen-capture-mcp.js --api-key=your-anthropic-api-key

# Test with SSE transport
node dist/screen-capture-mcp.js --sse --port 8080 --host localhost --api-key=your-anthropic-api-key

📜 License

MIT

Smithery Deployment

This project is configured for deployment on Smithery, which allows hosting the MCP server over WebSocket transport.

Deployment Requirements

  • Dockerfile (included in repository)

  • smithery.yaml (included in repository)

  • Anthropic API Key (required during configuration)

Deployment Steps

  1. Add the server to Smithery

  2. Access the Deployments tab

  3. Configure with your Anthropic API Key

  4. Deploy the server

Configuration Options

  • anthropicApiKey (required): Your Anthropic API key

  • verbose (optional): Enable verbose logging (default: false)

Available Tools

  • helloWorld: Simple test tool that echoes a message

  • captureAndAnalyzeScreen: Captures a screenshot and analyzes it using Claude Vision

Usage Examples

Capturing and Analyzing a Screenshot

const response = await mcpClient.invoke("captureAndAnalyzeScreen", {
  prompt: "What's on my screen right now? Focus on the main content.",
  modelName: "claude-3-opus-20240229"
});
console.log(response);

Available Tools

2 tools
captureAndAnalyzeScreenD
ParametersJSON Schema
NameRequiredDescriptionDefault
promptNo
modelNameNo
saveScreenshotNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

helloWorldD
ParametersJSON Schema
NameRequiredDescriptionDefault
messageNo

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

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. 2 tool updatesv2.0.15
    • First observedcaptureAndAnalyzeScreen
    • First observedhelloWorld

TDQS

D1.1/5.0
Disambiguation1/5

The two tools have no descriptions, and their names suggest completely different purposes: one is a generic 'helloWorld' placeholder, while the other is a combined screen capture/analysis tool. This makes it impossible for an agent to distinguish their roles or select appropriately.

Naming Consistency1/5

Tool names follow no consistent pattern: 'captureAndAnalyzeScreen' uses camelCase with multiple verbs, while 'helloWorld' is a simple non-descriptive name. No common verb or noun style unifies them.

Tool Count2/5

With only two tools, the server is too sparse for its implied domain of screen viewing/analysis. One tool is a trivial placeholder, leaving essentially one functional tool, which is insufficient for meaningful interaction.

Completeness1/5

The server lacks essential operations for screen viewing (e.g., capture, analyze, list screens). The only relevant tool combines capture and analysis, missing other lifecycle steps, and the presence of a placeholder tool indicates severe incompleteness.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables LLMs to capture and analyze screenshots of your screen, windows, or regions with smart detection capabilities. Features natural language queries, automatic window targeting, and text enhancement for UI debugging and visual inspection.
    2
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to capture and analyze screen content across multi-monitor setups with smart image optimization. Provides screenshot capabilities and detailed monitor information for visual debugging, UI analysis, and desktop assistance.
    -
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to capture and analyze screenshots of macOS applications, windows, or the entire screen using local (Ollama) or cloud-based AI vision models, with non-intrusive, fast screen capture via Apple's ScreenCaptureKit.
    3
    15
    2
    MIT

Latest Blog Posts

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/hemenge133/screen-view-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server