local-scanner-mcp
MCP server for scanning local code and localhost URLs
Documentation
Local Scanner MCP Server
A Model Context Protocol (MCP) server for scanning local code and localhost URLs. This server provides tools for validating code, capturing screenshots, and analyzing web pages running on localhost.
Overview
The Local Scanner MCP Server extends AI assistants' capabilities to interact with locally running web applications and code files. It bridges the gap between AI and local development environments, enabling AI assistants to:
- Test and debug locally running web applications
- Capture screenshots for visual verification
- Lint code files to ensure quality and standards compliance
- Validate HTML for accessibility and standards compliance
This server is particularly useful for developers working with AI assistants like Cline (VSCode) or Cascade (WindSurf) who want to leverage AI capabilities for local development tasks.
Features
The server provides the following tools:
1. scan_localhost
Access a localhost URL, capture console logs, and check for runtime errors.
Parameters:
- `url` (required): Localhost URL to scan (must start with http://localhost or https://localhost)
- `waitTime` (optional): Time to wait in milliseconds after page load (default: 1000)
- `actions` (optional): List of actions to perform on the page, such as:
- Click: `{ "type": "click", "selector": "#button-id" }`
- Type: `{ "type": "type", "selector": "#input-id", "text": "Hello World" }`
- Wait: `{ "type": "wait", "time": 2000 }`
Example:
{
"url": "http://localhost:3000",
"waitTime": 2000,
"actions": [
{ "type": "click", "selector": "#login-button" },
{ "type": "type", "selector": "#username", "text": "testuser" },
{ "type": "type", "selector": "#password", "text": "password" },
{ "type": "click", "selector": "#submit-button" },
{ "type": "wait", "time": 1000 }
]
}2. screenshot_localhost
Take a screenshot of a localhost URL.
Parameters:
- `url` (required): Localhost URL to screenshot (must start with http://localhost or https://localhost)
- `fullPage` (optional): Whether to take a full page screenshot (default: false)
- `waitTime` (optional): Time to wait in milliseconds after page load (default: 1000)
Example:
{
"url": "http://localhost:3000/dashboard",
"fullPage": true,
"waitTime": 2000
}3. lint_code
Lint JavaScript, TypeScript, or CSS code files.
Parameters:
- `filePath` (required): Path to the file to lint
- `language` (optional): Language of the file (default: auto-detect from file extension)
- Options: "javascript", "typescript", "css"
Example:
{
"filePath": "/path/to/your/file.js",
"language": "javascript"
}4. validate_html
Validate HTML content or URL for standards compliance.
Parameters:
- `source` (required): HTML content or URL to validate
- `isUrl` (optional): Whether the source is a URL (default: false)
Example:
{
"source": "TestHello World",
"isUrl": false
}Or for a URL:
{
"source": "http://localhost:3000",
"isUrl": true
}Installation
1. Clone the repository:
git clone https://github.com/treaties-ai/local-scanner-mcp.git
cd local-scanner-mcp2. Install dependencies:
npm install3. Build the project:
npm run build4. Start the server:
npm startUsage with MCP Clients
This server implements the Model Context Protocol (MCP) and can be used with any MCP client.
For VSCode/Cline
Edit the MCP settings file at `~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`:
{
"mcpServers": {
"local-scanner": {
"command": "node",
"args": ["/Users/your_username/Documents/Cline/MCP/local-scanner-mcp/build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}For WindSurf/Cascade
Edit the WindSurf configuration file at `~/Library/Application Support/WindSurf/windsurf_config.json`:
{
"mcpServers": {
"local-scanner": {
"command": "node",
"args": ["/Users/your_username/Documents/WindSurf/MCP/local-scanner-mcp/build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}Replace `your_username` with your actual username in both configurations.
Development
To add new tools or enhance existing ones:
1. Add validation functions for new tool arguments
2. Update the tool list in the `setupToolHandlers` method
3. Implement handler functions for the new tools
4. Update the request handler to handle the new tools
5. Build and test the server
License
MIT
Frequently asked questions
What is local-scanner-mcp?
local-scanner-mcp is MCP server for scanning local code and localhost URLs
How do I install local-scanner-mcp?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is local-scanner-mcp open source?
Yes — it is hosted on GitHub at https://github.com/treaties-ai/local-scanner-mcp.
Related MCP tools
An MCP server that installs other MCP servers for you JavaScript-based implementation. Trusted by 1400+ developers. Trusted by 1400+ developers.
MCP server for interacting with the iOS simulator JavaScript-based implementation. Trusted by 1200+ developers. Trusted by 1200+ developers.
A Model Context Protocol server that provides read-only access to MySQL databases. This server enables LLMs to inspect database schemas and execute read-only...
This is an MCP server that allows you to directly download transcripts of YouTube videos. JavaScript-based implementation.
The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.
An AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others. Built for the Model Context Protocol to enhance AI capabiliti
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP