home / mcp / mozilla readability mcp server

Mozilla Readability MCP Server

Extracts webpage content using Readability and outputs clean Markdown optimized for LLMs.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "jmh108-mcp-server-readability-python": {
      "command": "fastmcp",
      "args": [
        "run",
        "server.py"
      ]
    }
  }
}

You have a Python-based MCP server that uses the Readability algorithm to extract and transform webpage content into clean, Markdown-friendly text for efficient LLM processing. It removes ads, navigation, and noise, delivering consistent output tailored for downstream AI tasks.

How to use

You run this server as an MCP endpoint and interact with it through an MCP client to extract content from web pages. The server exposes a tool named extract_content that fetches a URL and returns Markdown content suitable for analysis or summarization. Use it when you want to convert article pages into clean, token-efficient Markdown that retains structure and important details.

How to install

Prerequisites you need before installation include Python 3.x, and a shell environment to create a virtual Python environment.

Step 1. Clone the project repository.

git clone https://github.com/jmh108/MCP-server-readability-python.git

Step 2. Change to the project directory.

cd MCP-server-readability-python

Step 3. Create and activate a virtual environment.

python -m venv venv
source venv/bin/activate  # On Windows use: venv\Scripts\activate

Step 4. Install dependencies from the requirements file.

pip install -r requirements.txt

Step 5. Start the MCP server using the runtime command shown for this project.

fastmcp run server.py

Additional notes and configuration

The MCP server can be addressed by an MCP client to invoke the content extraction tool. The default tooling endpoint exposed by the server is the extract_content tool, which accepts a URL and returns the content converted to Markdown. You can typically run the server in stdio mode using a command entry that points to the MCP runner and the server script, enabling you to connect via the MCP protocol.

Configuration and runtime details

MCP connection is configured through a runtime command configured in your MCP settings. The server exposes the following configuration for MCP integration:

{
  "mcpServers": {
    "readability": {
      "command": "fastmcp",
      "args": ["run", "server.py"],
      "env": {}
    }
  }
}

Available tools

extract_content

Fetches a webpage and transforms it into clean Markdown suitable for model consumption.