What this does
Provides two complementary capabilities:
- Web search - Privacy-focused meta-search via SearXNG (aggregates Google, Bing, DuckDuckGo, etc.)
- URL content reading - Fetch and extract content from any URL with heading/paragraph/section filtering
Setup
mcpc connect ~/.mcpc/mcp.json:searxng @searxng
Tools
searxng_web_search
Search the web using the SearXNG meta-search engine.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
query |
string | yes | Search query |
pageno |
number | no | Page number, starts at 1 (default: 1) |
time_range |
enum | no | Filter by time: day, month, year |
language |
string | no | Language code (e.g., en, fr, de). Default: all |
safesearch |
enum | no | Filter level: 0=None, 1=Moderate, 2=Strict (default: 0) |
Example:
mcpc @searxng tools-call searxng_web_search query:="Go generics best practices 2025" time_range:="month" language:="en"
web_url_read
Read and extract content from a URL. Supports heading-based section extraction and paragraph filtering.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | yes | URL to read |
startChar |
number | no | Starting character position (default: 0) |
maxLength |
number | no | Max characters to return |
section |
string | no | Extract content under a specific heading |
paragraphRange |
string | no | Paragraph ranges: 1-5, 3, 10- |
readHeadings |
boolean | no | Return only headings instead of full content |
Examples:
mcpc @searxng tools-call web_url_read url:="https://go.dev/blog/go1.24" readHeadings:=true
mcpc @searxng tools-call web_url_read url:="https://docs.example.com/api" section:="Authentication"
mcpc @searxng tools-call web_url_read url:="https://example.com/long-article" paragraphRange:="1-10"
Workflow
Research a topic
1. mcpc @searxng tools-call searxng_web_search query:="topic keywords" → find relevant URLs
2. mcpc @searxng tools-call web_url_read url:=<result_link> → read full content
3. mcpc @searxng tools-call web_url_read url:=<link> section:="Specific Section" → read specific part
Check recent news
1. mcpc @searxng tools-call searxng_web_search query:="Kubernetes release" time_range:="month"
2. mcpc @searxng tools-call web_url_read url:=<result_link> readHeadings:=true → scan structure
3. mcpc @searxng tools-call web_url_read url:=<link> section:="What's New" → read relevant section
Read documentation
1. mcpc @searxng tools-call searxng_web_search query:="library name docs" → find official docs
2. mcpc @searxng tools-call web_url_read url:=<docs_url> readHeadings:=true → get table of contents
3. mcpc @searxng tools-call web_url_read url:=<docs_url> section:="Getting Started" → read specific section
Best practices
- Use
time_rangefor recent results:dayfor breaking news,monthfor recent updates - Use
readHeadings:=truefirst to scan a page structure before reading content - Use
sectionparameter to extract only relevant sections from long pages - Use
paragraphRangeto paginate through very long articles - Combine with
maxLengthto avoid token overload from large pages - For non-English content, set
languageparameter for better results