MCP File Preview Server
Preview local HTML files and capture screenshots, saving them to a local directory.
MCP File Preview Server
A Model Context Protocol (MCP) server that provides HTML file preview and analysis capabilities. This server enables capturing full-page screenshots of local HTML files and analyzing their structure.
Features
- File Preview: Capture full-page screenshots of HTML files with proper CSS styling
- Content Analysis: Analyze HTML structure (headings, paragraphs, images, links)
- Local File Support: Handle local file paths and resources
- Screenshot Management: Save screenshots to a dedicated directory
Installation
- Clone the repository:
git clone https://github.com/your-username/mcp-file-preview.git
cd mcp-file-preview
- Install dependencies:
npm install
- Build the project:
npm run build
Configuration
Add the server to your Claude or Cline MCP settings:
Claude Desktop App
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"file-preview": {
"command": "node",
"args": ["/path/to/mcp-file-preview/build/index.js"]
}
}
}
Cline VSCode Extension
Add to VSCode's MCP settings:
{
"mcpServers": {
"file-preview": {
"command": "node",
"args": ["/path/to/mcp-file-preview/build/index.js"]
}
}
}
Usage
The server provides two main tools:
preview_file
Captures a screenshot and returns HTML content:
<use_mcp_tool>
<server_name>file-preview</server_name>
<tool_name>preview_file</tool_name>
<arguments>
{
"filePath": "/path/to/file.html",
"width": 1024, // optional
"height": 768 // optional
}
</arguments>
</use_mcp_tool>
Screenshots are saved to screenshots/ directory in the project folder.
analyze_content
Analyzes HTML structure:
<use_mcp_tool>
<server_name>file-preview</server_name>
<tool_name>analyze_content</tool_name>
<arguments>
{
"filePath": "/path/to/file.html"
}
</arguments>
</use_mcp_tool>
Returns counts of:
- Headings
- Paragraphs
- Images
- Links
Development
- Install dependencies:
npm install @modelcontextprotocol/sdk puppeteer typescript @types/node @types/puppeteer
- Make changes in
src/ - Build:
npm run build
- Test locally:
npm run dev
Implementation Details
The server uses the MCP SDK's Server class with proper initialization:
this.server = new Server(
// Metadata object
{
name: 'file-preview-server',
version: '0.1.0'
},
// Options object with capabilities
{
capabilities: {
tools: {
preview_file: {
description: 'Preview local HTML file and capture screenshot',
inputSchema: {
// ... schema definition
}
}
}
}
}
);
Key points:
- Server constructor takes separate metadata and options objects
- Tools are declared in capabilities.tools
- Each tool needs a description and inputSchema
- Screenshots are saved to a local
screenshots/directory
Debugging
- Use the MCP Inspector:
npx @modelcontextprotocol/inspector
-
Connect with:
- Transport Type: STDIO
- Command: node
- Arguments: /path/to/build/index.js
-
Check Claude OS logs if tools don't appear in the dropdown
Contributing
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
관련 서버
superglue
turn any API into MCP (NetSuite, SAP, Sage, Procore, etc.)
Smart Photo Journal MCP Server
Create a memory journal from your local photos in the macOS Photos library.
WebP Batch Converter
Batch convert PNG, JPG, and JPEG images to WebP format with options for quality, lossless mode, and multi-threaded processing.
KnowledgeBaseMCP
Extract text content from local PDF, DOCX, and PPTX files to build a knowledge base.
IDE MEMORY MCP
IDE Memory MCP gives AI coding agents a persistent memory layer that works across any IDE supporting the Model Context Protocol. Write project context once — the AI remembers it everywhere.
mini_mcp
A lightweight plugin to list all files and folders on the current macOS user's desktop.
OpenPyXL MCP Server
An MCP server that wraps the OpenPyXL library, enabling clients to retrieve data from Excel files.
PDF Splitter
Provides random access to PDF contents, allowing selective extraction of pages and content to reduce reading costs.
Image Compression
A high-performance microservice for compressing images. Supports JPEG, PNG, WebP, and AVIF formats with smart compression and batch processing.
Java Filesystem & Web MCP Server
An MCP server for LLM agents to perform filesystem operations and access web resources.