ClaudeCodeMod

All shelves / MCP servers

MCP File Preview Server

seanivore/mcp-file-preview · 24 stars · JavaScript · MIT

MCP server MCP server for HTML file preview and analysis - Has been weird with OS but good on Cline so WIP

Install

The repo has no one-line install. Follow its README.

Open the repo

Files

README.md

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

  1. Clone the repository:
git clone https://github.com/your-username/mcp-file-preview.git
cd mcp-file-preview
  1. Install dependencies:
npm install
  1. 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

  1. Install dependencies:
npm install @modelcontextprotocol/sdk puppeteer typescript @types/node @types/puppeteer
  1. Make changes in src/
  2. Build:
npm run build
  1. 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

  1. Use the MCP Inspector:
npx @modelcontextprotocol/inspector
  1. Connect with:

    • Transport Type: STDIO
    • Command: node
    • Arguments: /path/to/build/index.js
  2. 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.

Facts

Kind
MCP server
Repo
seanivore/mcp-file-preview
Group
Uncategorized
Stars
24
License
MIT
Language
JavaScript
Last push
2025-11-29
Forks
8
Homepage
seanivore.github.io/portfolio
Topics
agentic, cline, css, html, mcp, website-development, file-preview

More on this shelf

  1. 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
  2. 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
  3. 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
  4. 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
  5. 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  6. 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k