Sandbox
@MoussaabBadla/code-screenshot-mcp

MCP server for code screenshots in Claude

This repo is an MCP server that gives Claude a way to create polished screenshots of code. It supports direct code input, file paths, selected line ranges, git diffs, batch processing, and several built-in themes.

45 stars8 forksTypeScriptUpdated 10mo ago
Who it's for

Builders who use Claude Code or Claude Desktop and want code screenshots from the same place they write and review.

What it delivers

You can turn code and diffs into clean, themed screenshots without leaving Claude.

What it does

Five themes

Includes Dracula, Nord, Monokai, GitHub Light, and GitHub Dark themes for screenshot output.

File and line selection

Screenshots code directly from file paths, with optional start and end lines.

Git diff rendering

Creates screenshots from staged or unstaged git diff output, including a specific file or the whole diff.

Batch processing

Lets you screenshot multiple files in one request and returns results for each one.

Language detection

Detects 20+ programming languages automatically from file extensions.

Claude integration

Works with Claude Code and Claude Desktop through MCP configuration.

How to get it

  1. 1Run
    npm install -g code-screenshot-mcp
  2. 2Quick Setup (Claude Code)
    claude mcp add code-screenshot-mcp
  3. 3Run
    git clone https://github.com/MoussaabBadla/code-screenshot-mcp.git
    cd code-screenshot-mcp
    npm install
    npm run build
  4. 4Run
    "Generate a code screenshot of this TypeScript function with Nord theme:
    
    function fibonacci(n: number): number {
      if (n <= 1) return n;
      return fibonacci(n-1) + fibonacci(n-2);
    }
    "
  5. 5Run
    "Screenshot src/index.ts with Dracula theme"
  6. 6Run
    "Screenshot lines 20-45 of src/generator.ts with Monokai theme"

README

Code Screenshot Generator MCP

MCP server for generating beautiful code screenshots directly from Claude

npm version npm downloads License: MIT TypeScript MCP

Code Screenshot Generator MCP server

Overview

A Model Context Protocol (MCP) server that enables Claude to generate syntax-highlighted code screenshots with professional themes. Supports direct file reading, line selection, git diff visualization, and batch processing.

Features

  • 5 Professional Themes: Dracula, Nord, Monokai, GitHub Light, GitHub Dark
  • File Integration: Screenshot code directly from file paths with line range selection
  • Git Diff Support: Visualize staged or unstaged changes
  • Batch Processing: Process multiple files simultaneously
  • Auto Language Detection: Supports 20+ programming languages
  • Native Claude Integration: Works with Claude Desktop and Claude Code

Installation

Prerequisites

npm install -g code-screenshot-mcp

Configuration

Quick Setup (Claude Code):

claude mcp add code-screenshot-mcp

Manual Setup (Claude Desktop):

Add to your Claude configuration file at ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "code-screenshot": {
      "command": "code-screenshot-mcp"
    }
  }
}

Restart Claude Desktop after configuration.

Development Setup

git clone https://github.com/MoussaabBadla/code-screenshot-mcp.git
cd code-screenshot-mcp
npm install
npm run build

Quick Start

Basic Screenshot

"Generate a code screenshot of this TypeScript function with Nord theme:

function fibonacci(n: number): number {
  if (n <= 1) return n;
  return fibonacci(n-1) + fibonacci(n-2);
}
"

From File

"Screenshot src/index.ts with Dracula theme"

Specific Lines

"Screenshot lines 20-45 of src/generator.ts with Monokai theme"

Git Diff

"Screenshot my git diff with GitHub Dark theme"

Batch Processing

"Screenshot src/index.ts, src/generator.ts, and src/templates.ts"

Available Themes

  • dracula - Dark purple theme (default)
  • nord - Arctic blue-tinted theme
  • monokai - Classic dark theme
  • github-light - Clean light theme
  • github-dark - GitHub's dark theme

API Reference

generate_code_screenshot

Generate a screenshot from code string.

Parameters:

  • code (string, required) - Source code to screenshot
  • language (string, required) - Programming language identifier
  • theme (string, optional) - Color theme (default: "dracula")

Returns: PNG image with base64 encoding

screenshot_from_file

Screenshot code from file path with automatic language detection.

Parameters:

  • filePath (string, required) - Path to source file
  • startLine (number, optional) - Start line number (1-indexed)
  • endLine (number, optional) - End line number
  • theme (string, optional) - Color theme (default: "dracula")

Supported Extensions: .js, .jsx, .ts, .tsx, .py, .rb, .go, .rs, .java, .c, .cpp, .cs, .php, .swift, .kt, .sql, .sh, .yml, .yaml, .json, .xml, .html, .css, .scss, .md

Returns: PNG image with base64 encoding

screenshot_git_diff

Generate screenshot of git diff output.

Parameters:

  • filePath (string, optional) - Specific file to diff (shows all if omitted)
  • staged (boolean, optional) - Show staged changes instead of unstaged
  • theme (string, optional) - Color theme (default: "dracula")

Returns: PNG image with base64 encoding

batch_screenshot

Process multiple files in a single operation.

Parameters:

  • filePaths (string[], required) - Array of file paths
  • theme (string, optional) - Theme applied to all screenshots (default: "dracula")

Returns: Array of PNG images with success/failure status

Examples

Dracula Theme

Dracula Theme

Nord Theme

Nord Theme

Monokai Theme

Monokai Theme

GitHub Light Theme

GitHub Light

GitHub Dark Theme

GitHub Dark

Contributing

Contributions are welcome. Please follow these steps:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit changes: git commit -m 'Add your feature'
  4. Push to branch: git push origin feature/your-feature
  5. Submit a pull request

License

MIT License - Copyright (c) 2025 Moussaab Badla

See LICENSE file for details.

Acknowledgments

Built with Model Context Protocol, Playwright, and Highlight.js.


Repository: github.com/MoussaabBadla/code-screenshot-mcp

Files in the repo

Repository payload7 top-level entries
  • assets
  • src
  • .gitignore
  • LICENSE
  • package.json
  • README.md
  • tsconfig.json

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

43k

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code

14k
okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547
tirth8205/
code-review-graph

Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.

31k
2akouwu/
reverify

Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.

1.1k
t8y2/dbxConnectors

20 MB lightweight cross-platform database client for 90+ databases, including MySQL, PostgreSQL, SQLite, Redis, MongoDB, DuckDB, SQL Server, and Dameng. Built-in AI, MCP Server, CLI, desktop and Docker. | 轻量级跨平台数据库管理工具,支持 MySQL、PostgreSQL、SQLite、Redis、MongoDB、达梦等 90+ 数据库,提供桌面端、Docker、CLI、内置 AI 助手和 MCP Server。

19k