Skip to main content
Glama
Sonesh-2202

mcp-internet

by Sonesh-2202

🌐 MCP Internet Server v3.0

Python 3.10+ MCP License: MIT Multi-Platform LM Studio

Give your local LLMs the power of the internet β€” with real data extraction, not just links! πŸš€

An open-source Model Context Protocol (MCP) server providing 25 internet tools for local Large Language Models. The v3.0 upgrade adds intelligent search with auto-extraction, multi-source aggregation, result caching, and structured output β€” making your AI return actual data instead of raw links.

Seamlessly deployable across Windows, macOS, and Linux. No API keys required!


πŸ†• What's New in v3.0

Feature

Before (v2.0)

After (v3.0)

Search Results

Links + snippets only

Full data extraction from pages

Tool Calls Needed

5-10+ per query

1-2 per query

Output Format

Plain text

Markdown tables, bullet points

Caching

None

SQLite with TTL (30min-24h)

Rate Limiting

None

Per-domain throttling

Multi-Source

Manual per source

Auto-aggregation from top results

Content Extraction

Generic text only

Domain-aware (Wikipedia, IMDb, LinkedIn)

New Tools

  • smart_search β€” 🌟 Searches + scrapes + extracts + formats in one call

  • deep_search β€” Like smart_search but examines more sources

  • clear_cache β€” Manage the result cache


Related MCP server: WebFetch.MCP

✨ Key Features

  • 🧠 Smart Search: One tool call returns extracted data β€” movie lists, profiles, technical docs β€” not just links.

  • πŸ”„ Auto-Extraction: Automatically scrapes top results and extracts structured data (JSON-LD, tables, meta tags).

  • πŸ“Š Structured Output: Results come as markdown tables, bullet points, and organized sections.

  • ⚑ Cached Results: Repeated queries are served from SQLite cache in milliseconds.

  • πŸ›‘οΈ Rate Limiting: Per-domain request throttling prevents IP bans.

  • πŸ”€ UA Rotation: Pool of 7 browser user-agents for stealth.

  • 🌐 Domain-Aware: Special extractors for Wikipedia, IMDb, LinkedIn, and more.

  • πŸ”’ Zero Config: No API keys, no external subscriptions, no setup hassle.


πŸ› οΈ Available Tools (25 Total)

Category

Tools

🌟 Smart Search

smart_search, deep_search

πŸ” Basic Search

search_web, quick_lookup, search_site

πŸ“„ Reading

read_webpage, read_pdf

πŸ“° News/Social

get_news, search_reddit, search_twitter

🎬 YouTube

search_youtube, get_video_info

πŸ’» GitHub

search_github, get_repo_info

🌀️ Info / Utils

get_weather, get_current_time, translate_text, calculate

πŸ”— URLs/IP

shorten_url, get_my_ip, geolocate_ip

πŸ“± Generation

generate_qr, generate_wifi_qr, send_email

πŸ—„οΈ Cache

clear_cache


πŸš€ Quick Start

Prerequisites

Installation

# 1. Clone the repository
git clone https://github.com/Sonesh-2202/mcp-internet.git
cd mcp-internet

# 2. Install dependencies
uv sync

LM Studio Configuration

Add to your LM Studio mcp.json:

{
  "mcpServers": {
    "mcp-internet": {
      "command": "uv",
      "args": ["run", "mcp-internet"],
      "cwd": "/absolute/path/to/mcp-internet"
    }
  }
}

(Replace /absolute/path/to/mcp-internet with your actual project path)

πŸ“– Detailed OS Guides

For complete, step-by-step instructions for Windows, macOS, and Linux, see the πŸ‘‰ Multi-Platform Usage Guide.


πŸ’‘ How It Works: smart_search vs search_web

Before (v2.0): Multiple tool calls, manual scraping

User: "What are the upcoming Bollywood movies in 2026?"

Tool call 1: search_web("upcoming Bollywood movies 2026")
β†’ Returns 10 links with snippets

Tool call 2: read_webpage("https://www.imdb.com/...")
β†’ Returns raw text

Tool call 3: read_webpage("https://www.wikipedia.org/...")
β†’ Returns raw text

AI must manually piece together the answer from raw text.

After (v3.0): One tool call, structured data

User: "What are the upcoming Bollywood movies in 2026?"

Tool call 1: smart_search("upcoming Bollywood movies 2026")
β†’ Returns:
  - Extracted movie list with titles, dates, genres
  - Markdown tables with ratings
  - Data from multiple sources combined
  - All in one response, ready to present

πŸ—οΈ Architecture

mcp-internet/
β”œβ”€β”€ pyproject.toml              # Dependencies & Config
β”œβ”€β”€ README.md                   # This file
β”œβ”€β”€ MULTI_PLATFORM_GUIDE.md     # OS-specific setup guide
└── src/mcp_internet/
    β”œβ”€β”€ server.py               # Entry point β€” 25 MCP tools
    β”œβ”€β”€ tools/
    β”‚   β”œβ”€β”€ smart_search.py     # 🌟 Intelligent search + extraction
    β”‚   β”œβ”€β”€ search.py           # Basic DuckDuckGo search
    β”‚   β”œβ”€β”€ webpage.py          # Page reader with structured extraction
    β”‚   β”œβ”€β”€ news.py             # News headlines
    β”‚   β”œβ”€β”€ youtube.py          # YouTube search & video info
    β”‚   β”œβ”€β”€ github.py           # GitHub repos & users
    β”‚   β”œβ”€β”€ reddit.py           # Reddit search
    β”‚   β”œβ”€β”€ twitter.py          # Twitter/X via Nitter
    β”‚   └── ...                 # weather, time, translate, math, etc.
    └── utils/
        β”œβ”€β”€ http_client.py      # Async HTTP with UA rotation & rate limiting
        β”œβ”€β”€ cache.py            # SQLite TTL cache
        └── extractors.py       # Domain-specific data extractors

Data Flow

User Query β†’ smart_search
    β”œβ”€β”€ 1. Check cache (return if fresh)
    β”œβ”€β”€ 2. Optimize query & classify (person/movie/news/tech/general)
    β”œβ”€β”€ 3. Search DuckDuckGo (HTML scraping + ddgs fallback)
    β”œβ”€β”€ 4. Prioritize results by domain authority
    β”œβ”€β”€ 5. Scrape top 3 pages in parallel (asyncio.gather)
    β”œβ”€β”€ 6. Apply domain-specific extractors
    β”‚       β”œβ”€β”€ Wikipedia β†’ infobox, summary, key facts
    β”‚       β”œβ”€β”€ IMDb β†’ titles, ratings, cast, genres
    β”‚       β”œβ”€β”€ LinkedIn β†’ name, role, skills, experience
    β”‚       └── Generic β†’ JSON-LD, OpenGraph, tables
    β”œβ”€β”€ 7. Aggregate & format as structured markdown
    β”œβ”€β”€ 8. Cache result
    └── 9. Return comprehensive response

πŸ”§ Supported Data Sources

Source

What's Extracted

Extractor Type

Wikipedia

Infobox, summary, key facts

Domain-specific

IMDb

Movie/show details, ratings, cast, genres

Domain-specific (JSON-LD)

LinkedIn

Name, role, skills, experience, education

Domain-specific (Googlebot UA)

GitHub

Repos, stars, forks, languages, topics

API-based

Reddit

Posts, scores, comments, subreddit info

JSON API

YouTube

Video titles, channels, views, duration

HTML parsing

Any website

JSON-LD, OpenGraph, HTML tables, main text

Generic fallback


⚑ Performance

Metric

Value

Cache hit

< 50ms

Simple search

1-3 seconds

Smart search (3 sources)

3-8 seconds

Deep search (5+ sources)

5-15 seconds

Rate limiting

2 req/sec per domain

UA rotation

7 browser user-agents


πŸ§ͺ Testing

# Run the integration test suite
uv run python test_v3.py
  1. "What are the upcoming Bollywood movies in 2026?" β€” Should return movie lists

  2. "Search the web for Sundar Pichai" β€” Should return profile data

  3. "Latest albums by Taylor Swift" β€” Should return music data

  4. "Python asyncio tutorial" β€” Should return technical content


πŸ“„ License & Contributing

This project is licensed under the MIT License - See LICENSE for details.

Contributions, bug reports, and feature requests are highly welcome!


Made with ❀️ for the Local Developer & LLM community

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables local LLMs to search the web and fetch clean content from URLs without API keys, using SearxNG and Mozilla Readability.
    Last updated
    2
    35
    MIT
  • A
    license
    -
    quality
    A
    maintenance
    Enables privacy-first web scraping and structured data extraction using a local headless browser and your own LLM key. Supports tools for scraping, batch scraping, data extraction with prompts or schemas, and screenshots.
    Last updated
    19
    2
    MIT

View all related MCP servers

Related MCP Connectors

  • LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.

  • Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.

  • Enable language models to perform advanced AI-powered web scraping with enterprise-grade reliabili…

View all MCP Connectors

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/Sonesh-2202/mcp-internet'

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