noapi-google-search-mcp
Subscribe to arXiv categories (e.g., machine learning, computer vision) and search across paper abstracts.
Upload files to Cloudflare R2 (S3-compatible storage).
Pre-configured subscription to CNN RSS feed for news articles.
Upload files to DigitalOcean Spaces (S3-compatible storage).
Convert media files between formats (e.g., video to audio, video to GIF).
Subscribe to GitHub repositories for new releases.
Fetch emails from Gmail via IMAP.
Perform Google searches (web, news, scholar, images, finance, weather, books, shopping, flights, hotels, translate, maps).
Search places, get reviews, ratings, and maps screenshots; get directions with step-by-step routes.
Search Google News with article thumbnails.
Search academic papers with citation information.
Translate text across 100+ languages.
Upload files to MinIO (S3-compatible storage).
Post text to a pastebin and receive a shareable link.
Subscribe to subreddits and search across stored posts.
Subscribe to any RSS feed (news, blogs, etc.) and search stored content.
Pre-configured subscription to TechCrunch RSS feed for tech news.
Look up Wikipedia articles in any language with summary support.
Subscribe to channels, auto-transcribe videos, full-text search across transcripts, and extract clips.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@noapi-google-search-mcpSearch for the latest breakthroughs in renewable energy"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
noapi-google-search-mcp
vincentkaufmann@protonmail.com
If you want to support noapi-google-mcp or gpt-oss-20B/120B-Vision and other open source models in the pipeline please add to my GPU compute fund: around $3000 are needed.
If you find this useful, consider supporting continued development and new features.BTC:
16DT4AHemLyn7C6P116YepjY518gu9wUUHETH:0x7287D1F9c77832cFF246937af0443622bFdACD04
38 tools. Zero API keys. Give any local LLM real Google search, live feeds, vision, OCR, and full video understanding.
An MCP server that turns your local LLM into a fully connected assistant. Real Google results, live news and social feeds, reverse image search, offline OCR, YouTube transcription and clip extraction — all running locally through headless Chromium and open-source ML models. No API keys, no usage limits, no cloud dependency.
Works with LM Studio, Claude Desktop, OpenClaw, Ollama, and any MCP-compatible client.
What's New in v0.3.1 — Anti-Bot Detection & Neural Net CAPTCHA Solver
Google started catching headless Chromium browsers and serving CAPTCHAs instead of search results (#2). Fixed it properly and then added a neural net CAPTCHA solver just for the hell of it.
Stealth patches:
JavaScript injection before every page load patches
navigator.webdriver, fake browser plugins,chrome.runtime, and removes Playwright fingerprintsFixed User-Agent mismatch (was
aarch64, now matches the actual Chromium binary)Cookie persistence between sessions so Google sees a returning browser, not a fresh bot
Human-like random delays between page interactions
Clear error messages when rate-limited instead of cryptic timeouts
Neural net CAPTCHA solver (MobileNetV2 + OpenCV):
When Google serves a reCAPTCHA image challenge ("Select all images with traffic lights"), the server now attempts to solve it automatically
Uses MobileNetV2 (ImageNet classifier, ~13MB ONNX model, auto-downloads on first encounter)
OpenCV splits the CAPTCHA grid into cells, each cell is classified by the neural net and matched against the prompt
Covers 22 common CAPTCHA categories: traffic lights, buses, bicycles, motorcycles, cars, bridges, boats, trains, trucks, fire hydrants, parking meters, tractors, and more
Human-like mouse movement for clicking cells and the verify button
Falls back gracefully if the challenge type isn't supported
Will it solve every CAPTCHA? No. But it'll get through some of them, and honestly we mostly built it because we could.
What's New in v0.3.0 — 16 New Tools
YouTube RAG — Subscribe, Transcribe, Search, Clip
A full local retrieval-augmented pipeline for YouTube. Subscribe to any channel, and when you check feeds the server automatically downloads the audio, transcribes it with Whisper, and stores the full transcript in SQLite with FTS5 full-text search. Every word from every video becomes searchable — ask your LLM a question and it pulls the answer from the right video.
Found something interesting? Ask the LLM to extract that segment as a clip. It reads the transcript, finds the exact timestamps, and cuts the video for you. This is the beginning of AI/LLM-powered video editing — your LLM understands the content and cuts clips based on what's being said, not just timestamps.
How it works:
subscribeto a YouTube channel — by handle (@3Blue1Brown), URL, or channel IDcheck_feeds— new videos are fetched and auto-transcribed locally with faster-whisper. Transcripts are written into the database for instant search. Up to 5 videos per check, cached so nothing gets re-downloaded.search_feeds— full-text search across all transcripts. Supports AND, OR, NOT, and quoted phrases. Your LLM finds the exact video and passage that answers your question.extract_video_clip— tell the LLM what you're interested in and it cuts the clip from the video. The LLM uses the transcript to find the right segment and extracts it automatically.
"Subscribe to @AndrejKarpathy on YouTube"
"Check my feeds"
"Search my feeds for backpropagation explained"
"What did Karpathy say about tokenization?"
"Extract the part where he explains gradient descent"
"Cut a clip of the hardware comparison section"No embeddings, no vector database, no API — just Whisper + SQLite FTS5 running on your machine.
Roadmap: The clip extraction is the first step toward full AI-driven video editing. Future releases will add music/audio overlay, video remixing, multi-clip compilation, vertical reformat for TikTok/Reels/Shorts, and automated highlight reels — all driven by your LLM understanding the content.
Live Feed Subscriptions
Subscribe to news, Reddit, Hacker News, YouTube channels, Twitter/X profiles, GitHub repos, arXiv papers, and podcasts. Content is fetched, stored locally in SQLite with full-text search, and available to your LLM instantly.
New Tool | What It Does |
| Add any source — news RSS, Reddit, HN, GitHub, arXiv, YouTube, podcasts, Twitter/X |
| Remove a subscription and its stored content |
| See all active feeds with item counts |
| Poll all subscriptions, fetch new content, auto-transcribe YouTube videos |
| Full-text search across everything your feeds have collected |
| Browse recent items, filtered by source or type |
Pre-configured news sources — subscribe with one word: bbc, cnn, nyt, guardian, npr, aljazeera, techcrunch, ars, verge, wired, reuters
arXiv shortcuts — ai, ml, cv, nlp, robotics, crypto, systems, hci
"Subscribe to BBC News, r/LocalLLaMA, and Hacker News"
"Follow @elonmusk on Twitter"
"Subscribe to the YouTube channel @3Blue1Brown"
"Watch anthropics/claude-code on GitHub for new releases"
"Subscribe to the machine learning arXiv category"
"Check my feeds"
"Search my feeds for transformer architecture"
"What's new in my Reddit feeds?"Local File Processing
Transcribe meetings, convert formats, read documents — all local, no cloud.
New Tool | What It Does |
| Transcribe any local audio or video file with Whisper (mp3, wav, mp4, mkv, etc.) |
| FFmpeg format conversion — video to audio, format to format, video to GIF |
| Extract text from PDF, DOCX, HTML, CSV, JSON, and 30+ text formats |
Email, Web Utilities & Cloud
Pull emails, generate QR codes, shorten URLs, archive pages, look up Wikipedia, upload to S3.
New Tool | What It Does |
| Pull emails via IMAP — Gmail, Outlook, Yahoo, any IMAP server |
| Post text to a pastebin and get a shareable link |
| Shorten any URL via TinyURL |
| Generate QR code images for URLs, Wi-Fi, contacts, any data |
| Save a webpage snapshot to the Wayback Machine |
| Look up any Wikipedia article, any language, with summary support |
| Upload files to MinIO, AWS S3, DigitalOcean Spaces, Cloudflare R2 |
"Transcribe this recording: ~/meeting.mp3"
"Convert video.mp4 to mp3"
"Read this PDF: ~/report.pdf"
"Check my email: user@gmail.com password: xxxx"
"Shorten this URL: https://very-long-url..."
"Generate a QR code for https://mysite.com"
"Archive this article: https://news.example.com/story"
"Wikipedia: quantum computing"
"Upload report.pdf to my MinIO bucket"Zero extra dependencies for feeds. Built entirely on Python stdlib — SQLite for storage, FTS5 for search, urllib for fetching, xml.etree for parsing. YouTube and Twitter use the existing Playwright browser. FFmpeg required for convert_media (commonly pre-installed).
All 38 Tools by Category
Live Feed Subscriptions
Tool | Description |
| Subscribe to news, Reddit, HN, GitHub, arXiv, YouTube, podcasts, Twitter/X |
| Remove a subscription and its stored content |
| List all active subscriptions with item counts |
| Fetch new content from all or specific sources |
| Full-text search across all stored feed content |
| Get recent items filtered by source or type |
Google Search & Web
Tool | Description |
| Web search with time filters, site filters, pagination, language/region |
| News search with article thumbnails inline |
| Academic papers with citations |
| Image search with results displayed inline in chat |
| Topic interest over time, related queries |
| Fetch any URL and extract readable text |
Travel & Commerce
Tool | Description |
| Product search with prices, stores, ratings, images |
| Flight search with prices and travel times |
| Hotel search with images, prices, ratings, booking URLs |
| Translation across 100+ languages |
| Places search with ratings, reviews, and map screenshots |
| Route directions with step-by-step and map screenshot |
Finance & Info
Tool | Description |
| Stock prices, market data, company info |
| Current conditions and multi-day forecast |
| Book search with author, ISBN, snippets |
Vision & OCR
Tool | Description |
| Reverse image search — identify objects, products, landmarks, text |
| Detect all objects in an image (OpenCV) and identify each via Lens |
| Extract text from images locally (RapidOCR, fully offline) |
| List image files in a directory for use with vision tools |
Video & Audio Intelligence — AI-Powered Video Editing
Tool | Description |
| Download and transcribe any video with timestamps (faster-whisper) |
| Transcribe local audio/video files (mp3, wav, m4a, mp4, mkv, etc.) |
| Search a transcribed video for topics by keyword |
| AI-powered clip extraction — tell the LLM what you want and it cuts the video using transcript context |
| Convert between audio/video formats via FFmpeg |
Documents & Data
Tool | Description |
| Extract text from PDF, DOCX, HTML, CSV, JSON, and 30+ formats |
Tool | Description |
| Pull emails via IMAP — Gmail, Outlook, Yahoo, iCloud, any IMAP server |
Web Utilities
Tool | Description |
| Post text to a pastebin and get a shareable URL |
| Shorten any URL via TinyURL |
| Generate QR code images (URLs, Wi-Fi, contacts, any data) |
| Archive a webpage on the Wayback Machine |
| Wikipedia article lookup in any language |
Cloud Storage
Tool | Description |
| Upload files to MinIO, AWS S3, DigitalOcean Spaces, Cloudflare R2, Backblaze B2 |
Supported File Formats
Documents (read_document)
Category | Formats |
Documents | PDF (with OCR fallback for scanned pages), DOCX |
Web | HTML, HTM |
Data | CSV, JSON, XML, YAML, YML, TOML |
Text | TXT, MD, LOG |
Config | INI, CFG, CONF, ENV |
Code | PY, JS, TS, GO, RS, C, CPP, H, JAVA, KT, RB, SQL, R, M, SWIFT |
Shell | SH, BASH, ZSH |
Audio & Video (transcribe_local, transcribe_video, convert_media)
Category | Formats |
Audio | MP3, WAV, M4A, FLAC, OGG, AAC, WMA, OPUS |
Video | MP4, MKV, WEBM, AVI, MOV |
Special | GIF (video-to-GIF output) |
Input | Any format FFmpeg can decode (hundreds of formats) |
Images (google_lens, google_lens_detect, ocr_image, list_images)
Category | Formats |
Standard | JPG, JPEG, PNG, GIF, BMP, WEBP |
Professional | TIFF, TIF, SVG |
Input methods | Local file path, public URL, base64 (drag-and-drop into chat) |
Why This Instead of API-Based Alternatives?
noapi-google-search-mcp | API-based MCP servers | OpenClaw built-in | |
API key required | No | Yes (Google CSE API) | Yes (Brave/Perplexity) |
Cost | Free | Paid after 100 queries/day | API fees |
Setup time | Create Cloud project, enable API, configure | Multiple API keys | |
Results quality | Real Google results | Custom Search Engine | Brave index |
JavaScript pages | Renders them (Chromium) | Cannot render JS | Cannot render JS |
Tools count | 38 | 1-3 | 2 (web_search, web_fetch) |
Google Search | Built-in (with filters) | Basic only | Not available |
Google Shopping | Built-in | Not available | Not available |
Google Flights | Built-in | Not available | Not available |
Google Hotels | Built-in | Not available | Not available |
Google Translate | Built-in | Separate API needed | Not available |
Google Maps | Built-in (with screenshots) | Not available | Not available |
Google Maps Directions | Built-in (with route map) | Not available | Not available |
Google Weather | Built-in | Not available | Not available |
Google Finance | Built-in | Not available | Not available |
Google News | Built-in | Usually not available | Not available |
Google Scholar | Built-in | Not available | Not available |
Google Books | Built-in | Not available | Not available |
Google Images | Built-in (inline in chat) | Separate API needed | Not available |
Google Lens | Built-in (reverse image search) | Not available | Not available |
Object detection | Built-in (OpenCV + Lens) | Not available | Not available |
Local OCR | Built-in (offline) | Not available | Not available |
Video transcription | Built-in (local Whisper) | Not available | Not available |
Video clip extraction | Built-in (AI/LLM-powered) | Not available | Not available |
YouTube RAG pipeline | Built-in (subscribe → transcribe → search) | Not available | Not available |
Google Trends | Built-in | Separate API needed | Not available |
Feed subscriptions | Built-in (8 source types) | Not available | Not available |
Full-text feed search | Built-in (SQLite FTS5) | Not available | Not available |
Auto-transcribe feeds | Built-in (YouTube → Whisper) | Not available | Not available |
Local file transcription | Built-in (any audio/video) | Not available | Not available |
Media format conversion | Built-in (FFmpeg) | Not available | Not available |
Document reader | Built-in (PDF, DOCX, etc.) | Not available | Not available |
Email integration | Built-in (IMAP) | Not available | Not available |
Pastebin | Built-in | Not available | Not available |
URL shortener | Built-in (TinyURL) | Not available | Not available |
QR code generation | Built-in (OpenCV) | Not available | Not available |
Web archiving | Built-in (Wayback Machine) | Not available | Not available |
Wikipedia | Built-in | Not available | Not available |
S3/MinIO upload | Built-in | Not available | Not available |
Page fetching | Built-in | Usually separate | Basic |
Tool Details & Parameters
Feed Subscription Tools
subscribe — Add a Content Source
Parameter | Description | Example |
| Source type (required) |
|
| Source identifier (required) |
|
| Display name (optional) |
|
Identifier formats by type:
news: preset name (
bbc,cnn,nyt,guardian,npr,aljazeera,techcrunch,ars,verge,wired,reuters) or any RSS URLreddit: subreddit name (e.g.
LocalLLaMA,programming)hackernews:
top,new, orbestgithub:
owner/repo(e.g.anthropics/claude-code)arxiv: shortcut (
ai,ml,cv,nlp,robotics,crypto) or category likecs.AIyoutube: channel handle (
@3Blue1Brown), URL, or channel ID (UCxxxx)podcast: RSS feed URL
twitter: username with or without
@
check_feeds — Fetch New Content
Parameter | Description | Example |
| Limit to one type (optional) |
|
search_feeds — Full-Text Search
Parameter | Description | Example |
| Search query (required) — supports FTS5: AND, OR, NOT, "quoted phrases" |
|
| Limit to one type (optional) |
|
| Max results (default 20) |
|
get_feed_items — Browse Recent Items
Parameter | Description | Example |
| Filter by source name (optional) |
|
| Filter by type (optional) |
|
| Max items (default 20) |
|
Google Search Tools
google_search — Web Search
Parameter | Description | Example |
| Search query (required) |
|
| Number of results (1-10, default 5) |
|
| Filter by recency |
|
| Limit to a domain |
|
| Results page (1-10, default 1) |
|
| Language code |
|
| Country/region code |
|
google_shopping — Product Search
Parameter | Description | Example |
| Product search query (required) |
|
| Number of results (1-10, default 5) |
|
google_flights — Flight Search
Parameter | Description | Example |
| Departure city or airport (required) |
|
| Arrival city or airport (required) |
|
| Departure date (optional) |
|
| Return date (optional) |
|

google_hotels — Hotel Search
Parameter | Description | Example |
| Hotel search with location (required) |
|
| Number of results (1-10, default 5) |
|

google_translate — Translation
Parameter | Description | Example |
| Text to translate (required) |
|
| Target language (required) |
|
| Source language (optional, auto-detected) |
|
google_maps — Places Search with Map Screenshot
Parameter | Description | Example |
| Place search query (required) |
|
| Number of results (1-10, default 5) |
|

google_maps_directions — Route Directions with Map
Parameter | Description | Example |
| Starting location (required) |
|
| Ending location (required) |
|
| Travel mode (default "driving") |
|

google_weather — Weather
Parameter | Description | Example |
| City or location (required) |
|
google_finance — Stock & Market Data
Parameter | Description | Example |
| Stock ticker or company name (required) |
|

google_news — News Search
Parameter | Description | Example |
| News search query (required) |
|
| Number of results (1-10, default 5) |
|

google_scholar — Academic Search
Parameter | Description | Example |
| Academic search query (required) |
|
| Number of results (1-10, default 5) |
|
google_books — Book Search
Parameter | Description | Example |
| Book search query (required) |
|
| Number of results (1-10, default 5) |
|
google_images — Image Search (inline in chat)
Parameter | Description | Example |
| Image search query (required) |
|
| Number of results (1-10, default 5) |
|


google_trends — Trends
Parameter | Description | Example |
| Topic (required) |
|
Vision & OCR Tools
google_lens — Reverse Image Search
Identify objects, products, brands, landmarks, and text. Supports URLs, local files, and base64 drag-and-drop.
Parameter | Description | Example |
| Image URL, file path, or base64 (required) |
|

google_lens_detect — Object Detection + Identification
Detect all objects (OpenCV), crop each one, identify individually via Lens.
Parameter | Description | Example |
| Local file path or base64 (required) |
|
ocr_image — Local OCR (offline)
Extract text from images using RapidOCR. No internet needed.
Parameter | Description | Example |
| Local file path or base64 (required) |
|

list_images — Image Discovery
Parameter | Description | Example |
| Folder to scan (default |
|
Video Intelligence Tools
transcribe_video — Video Transcription
Download and transcribe any YouTube video (or video URL) with timestamps using faster-whisper.
Parameter | Description | Example |
| YouTube or video URL (required) |
|
| Whisper model size (default: tiny) |
|
| Language code (optional, auto-detected) |
|
search_transcript — Transcript Search
Parameter | Description | Example |
| Same URL used with transcribe_video (required) |
|
| Keyword or phrase (required) |
|
| Surrounding segments (default: 2) |
|
extract_video_clip — Clip Extraction by Topic
Ask "extract the part about X" and the LLM finds timestamps from the transcript and cuts the clip.
Parameter | Description | Example |
| YouTube URL or local video (required) |
|
| Start time in seconds (required) |
|
| End time in seconds (required) |
|
| Extra seconds before/after (default: 3) |
|
| Custom filename (optional) |
|
Sample Prompts
Feed Subscriptions
What you type | Tool called |
"Subscribe to BBC News and CNN" |
|
"Follow r/LocalLLaMA on Reddit" |
|
"Monitor Hacker News top stories" |
|
"Watch anthropics/claude-code for new releases" |
|
"Subscribe to @3Blue1Brown on YouTube" |
|
"Follow @elonmusk on Twitter" |
|
"Subscribe to the ML arXiv category" |
|
"Check my feeds" |
|
"What's new in my subscriptions?" |
|
"Search my feeds for transformer architecture" |
|
"Show me the latest Reddit posts" |
|
"What are my subscriptions?" |
|
"Unsubscribe from BBC News" |
|
Web Search
What you type | Tool called | Parameters used |
"Search for the best Python web frameworks" |
|
|
"Find Reddit discussions about home lab setups" |
|
|
"Search Stack Overflow for async Python examples" |
|
|
"What's new in AI this week?" |
|
|
"Search Hacker News for posts about Rust" |
|
|
"Get page 2 of results for ML tutorials" |
|
|
"Search for restaurants in Tokyo in Japanese" |
|
|
Shopping & Travel
What you type | Tool called |
"Find the cheapest MacBook Air" |
|
"Find flights from New York to London" |
|
"Find hotels in Paris for next weekend" |
|
"Translate 'hello world' to Japanese" |
|
Maps & Directions
What you type | Tool called |
"Find Italian restaurants near Times Square" |
|
"Get directions from Berlin to Munich" |
|
"Walking directions from the Eiffel Tower to the Louvre" |
|
Finance, Weather & Info
What you type | Tool called |
"What's Apple's stock price?" |
|
"What's the weather in Dubai?" |
|
"What are today's top headlines?" |
|
"Find papers on transformer attention mechanisms" |
|
"Find books about machine learning" |
|
Images & Vision
What you type | Tool called |
"Show me images of the Northern Lights" |
|
"What is this product? /path/to/photo.jpg" |
|
"Detect all objects in this photo" |
|
"Read the text in this screenshot" |
|
Drag image into chat + "What is this?" |
|
Drag image into chat + "Read the text" |
|
Tip: To enable drag-and-drop images with text-only models in LM Studio, add a
model.yamlfile in the model directory withmetadataOverrides: { vision: true }. The image will be sent as base64 and the MCP tools handle it automatically.
Video Intelligence & AI-Powered Clip Extraction
What you type | Tool called |
| |
"What do they discuss in this video?" |
|
"Find where they talk about memory bandwidth" |
|
"Extract the part where they discuss pricing" |
|
"Cut a clip of the hardware comparison section" |
|
"Transcribe ~/meeting.mp3" |
|
"Convert video.mp4 to mp3" |
|
"Convert this video to a GIF" |
|
Documents & Email
What you type | Tool called |
"Read this PDF: ~/report.pdf" |
|
"Extract text from ~/contract.docx" |
|
"Read this article for me: https://..." |
|
| |
"Pull my latest 10 emails from Outlook" |
|
Web Utilities & Cloud
What you type | Tool called |
| |
| |
"Make a QR code for my Wi-Fi network" |
|
"Post this code to a pastebin" |
|
| |
"Wikipedia: quantum computing" |
|
"Look up the Apollo 11 mission on Wikipedia in German" |
|
"Upload report.pdf to my MinIO bucket" |
|
"Store backup.tar.gz in S3 bucket my-backups" |
|
Installation
Quick Install (pipx - recommended)
pipx install noapi-google-search-mcp
playwright install chromiumInstall in a Virtual Environment
python3 -m venv ~/.local/share/noapi-google-search-mcp
~/.local/share/noapi-google-search-mcp/bin/pip install noapi-google-search-mcp
~/.local/share/noapi-google-search-mcp/bin/playwright install chromiumConfiguration
LM Studio
Add to ~/.lmstudio/mcp.json:
{
"mcpServers": {
"google-search": {
"command": "noapi-google-search-mcp",
"env": {
"PYTHONUNBUFFERED": "1"
}
}
}
}If installed in a venv, use the full path: ~/.local/share/noapi-google-search-mcp/bin/noapi-google-search-mcp
Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"google-search": {
"command": "noapi-google-search-mcp"
}
}
}OpenClaw
Add to your agent configuration:
mcp_servers:
google-search:
command: "noapi-google-search-mcp"
env:
PYTHONUNBUFFERED: "1"This gives your OpenClaw agent access to all 38 tools — real Google search, live feeds, vision, OCR, and video intelligence — with zero API keys.
As a CLI
noapi-google-search-mcpOr:
python -m google_search_mcpDevelopment
git clone https://github.com/VincentKaufmann/noapi-google-search-mcp.git
cd google-search-mcp
pip install -e .
playwright install chromiumLicense
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/VincentKaufmann/noapi-google-search-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server