Skip to main content

A powerful MCP server to equip LLMs with web access, search, and content extraction capabilities

Project description

MCP Web Tools

This package provides a powerful MCP server to equip LLMs with web access, going beyond naive methods of searching, fetching and extracting content.

Introduction

I created this package out of the frustration that most MCP servers enabling web access to LLMs, didn't perform as well as I hoped. Some of these shortcomings I wanted fix, include:

  • Good search results without requiring an API key
  • Sophisticated fetching for more complex JavaScript sites
  • Extracting content in nicely formatted Markdown
  • Support for extracting content from PDFs
  • Support for loading and displaying images
  • Usage options for advanced cases like loading raw HTML

Installation

Claude Desktop

</code></pre>
<h3>Claude Code</h3>
<pre lang="bash"><code>claude mcp add web-tools uvx mcp-web-tools

Or to also set the Brave Search API key:

claude mcp add web-tools uvx mcp-web-tools -e BRAVE_SEARCH_API_KEY=<key>

Internals

The package is written in Python using powerful libraries and services under the hood to improve results.

Searching

We use the Brave Search API if an API key is provided with fallbacks a scraped Google workaround and finally DuckDuckGO if everything else fails. While we'd recommend getting a free Brave API key, the fallbacks should work more than well enough for most use cases and work loads.

Fetching

The fetching of web content is based on Zendriver, a fork of nodriver for next level webscraping and performance. It should stay undetected for most anti-bot solutions and fetch content even from complex JS-based sites.

Extracting

For web extraction, we use Trafilatura which consistently outperforms other alternatives for extracting content from HTML pages. For PDFs, we use PyMuPDF4LLM which similarly extracts content in an easy-to-read format for LLMs, with advanced layout support.

Contributing

While it's impossible to support all pages and layouts, we thrive to make this package better over time. For unsupported sites, problems, or feature requests open an issue.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_web_tools-0.7.0.tar.gz (57.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_web_tools-0.7.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file mcp_web_tools-0.7.0.tar.gz.

File metadata

  • Download URL: mcp_web_tools-0.7.0.tar.gz
  • Upload date:
  • Size: 57.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.8

File hashes

Hashes for mcp_web_tools-0.7.0.tar.gz
Algorithm Hash digest
SHA256 6d25d186b7526a6ea4f8f293efe56e476af67cdb742f974d8ad0c75e8a012229
MD5 13d166d1f0866f3a15557ee6985cb89d
BLAKE2b-256 6c78e40619c92b2a572033e8d7576bd633e7149ced3b06fa89cf218f40e0b485

See more details on using hashes here.

File details

Details for the file mcp_web_tools-0.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_web_tools-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8948a187a25cf5491fc91ac64def6c4e4712dee97bda7ac745ac23ef2f445f42
MD5 7c77cafb9ca7cc7b65614e5ed4023fb9
BLAKE2b-256 36a02fac384e013f1044b8951b0c17af3a7a599edab51651fcfffb69cf9479bf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page