Code Screenshot Generator
Enables generating beautiful syntax-highlighted code screenshots with professional themes directly from Claude. Supports file reading, line selection, git diff visualization, and batch processing across 20+ programming languages.
README
Code Screenshot Generator MCP
MCP server for generating beautiful code screenshots directly from Claude
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 thememonokai- Classic dark themegithub-light- Clean light themegithub-dark- GitHub's dark theme
API Reference
generate_code_screenshot
Generate a screenshot from code string.
Parameters:
code(string, required) - Source code to screenshotlanguage(string, required) - Programming language identifiertheme(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 filestartLine(number, optional) - Start line number (1-indexed)endLine(number, optional) - End line numbertheme(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 unstagedtheme(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 pathstheme(string, optional) - Theme applied to all screenshots (default: "dracula")
Returns: Array of PNG images with success/failure status
Examples
Dracula Theme

Nord Theme

Monokai Theme

GitHub Light Theme

GitHub Dark Theme

Contributing
Contributions are welcome. Please follow these steps:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature - Commit changes:
git commit -m 'Add your feature' - Push to branch:
git push origin feature/your-feature - 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
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.