Skip to main content
Glama

@just-every/mcp-read-website-fast

Fast, token-efficient web content extraction for AI agents - converts websites to clean Markdown.

npm version GitHub Actions

Overview

Existing MCP web crawlers are slow and consume large quantities of tokens. This pauses the development process and provides incomplete results as LLMs need to parse whole web pages.

This MCP package fetches web pages locally, strips noise, and converts content to clean Markdown while preserving links. Designed for Claude Code, IDEs and LLM pipelines with minimal token footprint. Crawl sites locally with minimal dependencies.

Note: This package now uses @just-every/crawl for its core crawling and markdown conversion functionality.

Related MCP server: stripfeed-mcp-server

Features

  • Fast startup using official MCP SDK with lazy loading for optimal performance

  • Content extraction using Mozilla Readability (same as Firefox Reader View)

  • HTML to Markdown conversion with Turndown + GFM support

  • Smart caching with SHA-256 hashed URLs

  • Polite crawling with robots.txt support and rate limiting

  • Concurrent fetching with configurable depth crawling

  • Stream-first design for low memory usage

  • Link preservation for knowledge graphs

  • Optional chunking for downstream processing

Installation

Claude Code

claude mcp add read-website-fast -s user -- npx -y @just-every/mcp-read-website-fast

VS Code

code --add-mcp '{"name":"read-website-fast","command":"npx","args":["-y","@just-every/mcp-read-website-fast"]}'

Cursor

cursor://anysphere.cursor-deeplink/mcp/install?name=read-website-fast&config=eyJyZWFkLXdlYnNpdGUtZmFzdCI6eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqdXN0LWV2ZXJ5L21jcC1yZWFkLXdlYnNpdGUtZmFzdCJdfX0=

JetBrains IDEs

Settings → Tools → AI Assistant → Model Context Protocol (MCP) → Add

Choose “As JSON” and paste:

{"command":"npx","args":["-y","@just-every/mcp-read-website-fast"]}

Or, in the chat window, type /add and fill in the same JSON—both paths land the server in a single step. 

Raw JSON (works in any MCP client)

{
  "mcpServers": {
    "read-website-fast": {
      "command": "npx",
      "args": ["-y", "@just-every/mcp-read-website-fast"]
    }
  }
}

Drop this into your client’s mcp.json (e.g. .vscode/mcp.json, ~/.cursor/mcp.json, or .mcp.json for Claude).

Features

  • Fast startup using official MCP SDK with lazy loading for optimal performance

  • Content extraction using Mozilla Readability (same as Firefox Reader View)

  • HTML to Markdown conversion with Turndown + GFM support

  • Smart caching with SHA-256 hashed URLs

  • Polite crawling with robots.txt support and rate limiting

  • Concurrent fetching with configurable depth crawling

  • Stream-first design for low memory usage

  • Link preservation for knowledge graphs

  • Optional chunking for downstream processing

Available Tools

  • read_website - Fetches a webpage and converts it to clean markdown

    • Parameters:

      • url (required): The HTTP/HTTPS URL to fetch

      • pages (optional): Maximum number of pages to crawl (default: 1, max: 100)

Available Resources

  • read-website-fast://status - Get cache statistics

  • read-website-fast://clear-cache - Clear the cache directory

Development Usage

Install

npm install
npm run build

Single page fetch

npm run dev fetch https://example.com/article

Crawl with depth

npm run dev fetch https://example.com --depth 2 --concurrency 5

Output formats

# Markdown only (default)
npm run dev fetch https://example.com

# JSON output with metadata
npm run dev fetch https://example.com --output json

# Both URL and markdown
npm run dev fetch https://example.com --output both

CLI Options

  • -p, --pages <number> - Maximum number of pages to crawl (default: 1)

  • -c, --concurrency <number> - Max concurrent requests (default: 3)

  • --no-robots - Ignore robots.txt

  • --all-origins - Allow cross-origin crawling

  • -u, --user-agent <string> - Custom user agent

  • --cache-dir <path> - Cache directory (default: .cache)

  • -t, --timeout <ms> - Request timeout in milliseconds (default: 30000)

  • -o, --output <format> - Output format: json, markdown, or both (default: markdown)

Clear cache

npm run dev clear-cache

Auto-Restart Feature

The MCP server includes automatic restart capability by default for improved reliability:

  • Automatically restarts the server if it crashes

  • Handles unhandled exceptions and promise rejections

  • Implements exponential backoff (max 10 attempts in 1 minute)

  • Logs all restart attempts for monitoring

  • Gracefully handles shutdown signals (SIGINT, SIGTERM)

For development/debugging without auto-restart:

# Run directly without restart wrapper
npm run serve:dev

Architecture

mcp/
├── src/
│   ├── crawler/        # URL fetching, queue management, robots.txt
│   ├── parser/         # DOM parsing, Readability, Turndown conversion
│   ├── cache/          # Disk-based caching with SHA-256 keys
│   ├── utils/          # Logger, chunker utilities
│   ├── index.ts        # CLI entry point
│   ├── serve.ts        # MCP server entry point
│   └── serve-restart.ts # Auto-restart wrapper

Development

# Run in development mode
npm run dev fetch https://example.com

# Build for production
npm run build

# Run tests
npm test

# Type checking
npm run typecheck

# Linting
npm run lint

Contributing

Contributions are welcome! Please:

  1. Fork the repository

  2. Create a feature branch

  3. Add tests for new functionality

  4. Submit a pull request

Troubleshooting

Cache Issues

npm run dev clear-cache

Timeout Errors

  • Increase timeout with -t flag

  • Check network connectivity

  • Verify URL is accessible

Content Not Extracted

  • Some sites block automated access

  • Try custom user agent with -u flag

  • Check if site requires JavaScript (not supported)

License

MIT

Available Tools

1 tool
read_websiteA
Read-onlyIdempotent

Fast, token-efficient web content extraction - ideal for reading documentation, analyzing content, and gathering information from websites. Converts to clean Markdown while preserving links and structure.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesHTTP/HTTPS URL to fetch and convert to markdown
pagesNoMaximum number of pages to crawl (default: 1)
cookiesFileNoPath to Netscape cookie file for authenticated pages

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond annotations: it mentions 'fast, token-efficient' performance and output format ('converts to clean Markdown while preserving links and structure'), which are not covered by annotations like readOnlyHint or idempotentHint. Annotations already indicate safe, non-destructive operations, so the description complements this without contradiction, though it could add more on rate limits or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with key information ('Fast, token-efficient web content extraction') and uses two concise sentences that efficiently convey purpose, ideal use cases, and output format without any wasted words. Every sentence adds value, making it highly structured and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (3 parameters, no output schema), the description is largely complete: it covers purpose, usage context, and behavioral traits. However, it lacks details on output specifics (e.g., what the Markdown output looks like or error cases), which would be helpful since there's no output schema. Annotations provide safety info, but more output context could enhance completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not explicitly discuss parameters, but the input schema has 100% description coverage, providing full details on 'url', 'pages', and 'cookiesFile'. This high coverage means the schema carries the burden, so the baseline score of 3 is appropriate as the description adds no additional parameter semantics beyond what the schema already explains.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('extraction', 'reading', 'analyzing', 'gathering') and resources ('web content', 'websites'), and distinguishes its functionality by mentioning conversion to clean Markdown while preserving links and structure. It explicitly differentiates from potential alternatives by highlighting 'fast, token-efficient' extraction, making the purpose highly specific and actionable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use this tool ('ideal for reading documentation, analyzing content, and gathering information from websites'), which helps guide usage. However, it does not explicitly state when not to use it or name alternatives, and with no sibling tools listed, there is no direct comparison. This results in strong but not exhaustive guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev1.0.0
    • Changedread_website1 field changed
      • addedInput schema / properties / cookiesFile
        Added value: +{
        +  "description": "Path to Netscape cookie file for authenticated pages",
        +  "optional": true,
        +  "type": "string"
        +}
  2. 1 tool update
    • First observedread_website

TDQS

A4.1/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'read_website' has a clear, distinct purpose focused on web content extraction.

Naming Consistency5/5

The single tool name 'read_website' follows a clear verb_noun pattern. Since there is only one tool, consistency is inherently perfect with no deviations to assess.

Tool Count2/5

A single tool is generally too few for most server purposes, as it limits functionality and can feel thin. While the tool is well-described, the server's scope might benefit from additional related operations (e.g., for processing or analyzing the extracted content).

Completeness3/5

The tool covers the core function of reading websites effectively, but there are notable gaps for a broader web content domain. For example, there are no tools for updating, filtering, or managing multiple website reads, which could limit agent workflows.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    一个快速、高效的网页内容提取工具,将网页转换为干净的Markdown格式,适用于AI代理、IDE和LLM管道。
    1
    2
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    Converts any URL to clean, token-efficient Markdown for AI agents. Strips ads, navigation, and scripts. Supports CSS selectors, batch processing (10 URLs), token counting, and smart caching.
    3
    3
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Web content extraction for AI agents. 10 tools: scrape, crawl, map, batch, extract, summarize, diff, brand, search, research. Uses TLS fingerprinting to bypass anti-bot without a headless browser. Outputs LLM-optimized markdown with 67% fewer tokens than raw HTML.
    10
    2,325
    AGPL 3.0
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to read web pages reliably, returning clean markdown content, hyperlinks, and metadata without navigation or ad noise.
    3
    7
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/just-every/mcp-read-website-fast'

If you have feedback or need assistance with the MCP directory API, please join our Discord server