visual-hunt-mcp
visual-hunt-mcp
visual-hunt-mcp — это локальный TypeScript MCP-сервер для macOS, который подключается к вашему текущему сеансу Chrome через CDP и помогает Codex / Claude находить визуально сильные изображения для плакатов, обоев и досок вдохновения.
v0.4.0 · 11 инструментов · сквозной аудит · 15/15 пройденных поведенческих тестов · 108 изображений загружено в ходе стресс-теста по 10 темам · поставляется с набором для оценки и полной тестовой обвязкой.
Он разработан для того, чтобы:
использовать официальный
@modelcontextprotocol/sdkсMcpServerиregisterToolподключаться к локальному экземпляру Chrome через
chromium.connectOverCDP(...)повторно использовать ваш локальный профиль браузера, когда вы выбираете ручной просмотр
избегать обхода платных стен, экранов входа, CAPTCHA или ограничений платформы
возвращать метаданные кандидатов и при необходимости загружать файлы изображений в папку проекта, созданную в текущей рабочей директории MCP-сервера
Зачем нужен CDP
Этот проект использует протокол Chrome DevTools вместо запуска отдельного браузера для автоматизации, поэтому MCP-сервер может повторно использовать локальный профиль Chrome, который вы контролируете. Это делает рабочие процессы в Instagram и Xiaohongshu более практичными, так как сеанс браузера может быть уже авторизован, в то время как MCP-сервер остается локальным на вашем Mac.
Related MCP server: unsplash-mcp
Почему Instagram / Xiaohongshu требуют ручного участия
Instagram и Xiaohongshu часто требуют входа в систему, могут часто менять макет и скрывать контент за элементами управления платформы. Этот MCP намеренно открывает эти страницы в вашем подключенном локальном Chrome и извлекает только видимые общедоступные изображения, когда они доступны. Он не пытается обойти вход в систему, ограничения по частоте запросов или ограничения доступа.
Область загрузки
Этот проект теперь может загружать файлы изображений из таких источников, как Unsplash, Pexels, Pixabay, сайты с обоями, а также видимые URL-адреса изображений, полученные в ходе ручного просмотра, когда ваш подключенный сеанс Chrome имеет к ним доступ. По-прежнему действуют некоторые ограничения:
превью, размещенные на Google, и изображения Google Maps остаются заблокированными
Instagram и Xiaohongshu по-прежнему зависят от состояния вашего входа в Chrome и от того, какие URL-адреса изображений фактически отображаются на странице
вы по-прежнему несете ответственность за проверку лицензирования перед повторным использованием
save_candidates_jsonпо-прежнему работает только с метаданными, в то время какdownload_candidate_imagesзаписывает файлы изображений и манифест загрузки
Функции
Инструменты MCP (11)
Инструмент | Надежность | Примечания |
| ★★★★★ | Флагман. Набор из 6 проверенных источников (Unsplash, Pexels, Pixabay, Wikimedia, Wallhaven, Alpha Coders). 100% охват тем в стресс-тестах. |
| ★★★★★ | Флагман для тем путешествий/дизайна. 100% охват тем. |
| ★★★ | Ручное участие. Большинство изображений намеренно заблокированы для загрузки — используйте для визуального вдохновения. |
| ★★ | Ручное участие. Pinterest показывает модальное окно входа в большинстве поисковых запросов; войдите через Chrome, затем вызовите |
| ★★ | Ручное участие. Тот же шаблон с экраном входа, что и у Pinterest. |
| ★★ | Нестабильно из-за макета Google с ленивой загрузкой |
| ★★★★ | Универсальный экстрактор. Работает с Wikipedia, блогами, страницами брендов. |
| ★★★★★ | Повторное извлечение после ручной прокрутки/входа на открытой странице. |
| ★★★★★ | Очистка. Идемпотентно. |
| ★★★★★ | Сохранение только метаданных. |
| ★★★★★ | Загрузка с referer + user-agent из подключенного Chrome. Превью от Google заблокированы намеренно. |
Набор источников по умолчанию (v0.4.0)
Список источников по умолчанию для search_wallpaper_sites был сокращен в v0.4.0 с 13 до 6, которые возвращали загружаемых кандидатов для более чем 80% тем в ходе стресс-тестирования:
Unsplash — современная редакционная фотография
Pexels — современная редакционная фотография
Pixabay — современная редакционная фотография
Wikimedia Commons — достопримечательности, архитектура, общественное достояние
Wallhaven — лучшие бесплатные обои 4K/8K
Alpha Coders / Wallpaper Abyss — лучшие бесплатные обои 4K/8K
Адаптеры для удаленных источников по-прежнему поставляются — передавайте их явно, когда они вам нужны: sites: ["openverse.org", "loc.gov", "images.nasa.gov", "rawpixel.com", "publicdomainpictures.net", "wallpaperscraft.com", "hdqwalls.com"].
Оценка кандидатов
Каждый кандидат получает легкий scoreHint, основанный на:
размере изображения
близости соотношения сторон к распространенным форматам плакатов / обоев
ключевых словах в заголовке или alt-тексте, таких как
poster,cinematic,wallpaper,4k,8k,travel,filmиlandscape
Установка
cd /Users/lanston/Desktop/Codex/visual-hunt-mcp
npm installЗапуск Chrome для MCP
npm run chrome:debugЭтот помощник привязывает удаленную отладку Chrome только к 127.0.0.1. Он не открывает порт CDP публично.
Если вы предпочитаете исходный скрипт:
chmod +x scripts/start-chrome-mcp.sh
./scripts/start-chrome-mcp.shРабочий процесс проверки
Запустите детерминированный дымовой тест MCP после запуска Chrome:
npm run smokeДля комплексной проверки всех 11 инструментов (приведение схемы, оптимизация запросов, жизненный цикл ручных страниц, подавление экранов входа, фильтры ложных срабатываний, меры безопасности):
node scripts/full-test.mjs # 15 cases including live Chrome paths
node scripts/full-test.mjs --skip-live # 10 cases, fast, no browser depsЧто проверяет npm run smoke:
локальный MCP-сервер запускается через stdio из текущего вывода
dist/tools/listпредоставляет ожидаемый набор инструментовopen_url_and_extract_imagesможет извлекать видимых кандидатов с локальной страницы-фиксатораextract_manual_page_candidatesиclose_manual_pageдоступны для последующих действий с ручным участиемsave_candidates_jsonзаписывает метаданные кандидатов во временный корневой каталог выводаdownload_candidate_imagesзагружает разрешенное локальное изображение и пропускает заблокированного кандидата от Google с четким объяснением
Дымовой тест использует временный VISUAL_HUNT_OUTPUT_ROOT и очищает его после успешного завершения. Чтобы сохранить артефакты для проверки:
npm run smoke -- --keep-outputДля более уверенного прохождения, которое также затрагивает реальные потоки Google Images и поиска обоев через ваш подключенный сеанс Chrome:
npm run smoke:liveИспользуйте npm run validate в качестве стабильной команды проверки по умолчанию. Теперь она сначала запускает npm run build, а затем детерминированный дымовой тест.
Запуск MCP локально
npm run devДля использования в производственном режиме:
npm run build
node dist/index.jsКонфигурация Claude Desktop
{
"mcpServers": {
"visual-hunt": {
"command": "node",
"args": [
"/Users/lanston/Desktop/Codex/visual-hunt-mcp/dist/index.js"
],
"env": {
"CHROME_CDP_ENDPOINT": "http://127.0.0.1:9222"
}
}
}
}Примеры промптов
Use visual-hunt to search_google_images for "cinematic Oahu Hawaii sunset travel poster 8k", limit 10.Use visual-hunt to search_wallpaper_sites for "dark luxury black gold abstract 8k wallpaper", limit 15.Use visual-hunt to open_xiaohongshu_visual_search for "夏威夷 绝美 海报 壁纸 旅行 摄影", limit 10.Use visual-hunt to download_candidate_images for project "oahu-poster-board" using the candidates from the last search, limit 5.Use visual-hunt to extract_manual_page_candidates for the manualPageId from the Xiaohongshu search after I log in or scroll more.Примечания
Логи записываются только в
stderr, чтобы JSON-RPC MCP вstdoutоставался чистым.Chrome должен быть уже запущен с включенной удаленной отладкой.
Папки вывода по умолчанию создаются в текущей рабочей директории MCP-сервера. Пример:
/path/to/visual-hunt-mcp/<project>/images.Переопределите корневой каталог вывода с помощью
VISUAL_HUNT_OUTPUT_ROOT, если хотите сохранять загрузки в другом месте.save_candidates_jsonзаписывает метаданные в<output-root>/<project>/candidates.json.download_candidate_imagesзаписывает файлы изображений в<output-root>/<project>/imagesи манифест в<output-root>/<project>/downloads.json.scripts/smoke-test.mjs— самый быстрый способ проверить контракт MCP от начала до конца на локальном серверном процессе.scripts/smoke-test.mjsпроверяет локальный сервер через текущий выводdist/и использует временный корневой каталог вывода для артефактов.Сервер не хранит учетные данные.
Сервер не выполняет произвольные команды оболочки.
Переменные окружения
Переменная | По умолчанию | Эффект |
|
| Конечная точка удаленной отладки Chrome |
|
| Корневой каталог для загруженных изображений и манифестов |
|
| Тайм-аут навигации/извлечения для каждой страницы |
|
| TTL для записей в реестре ручных страниц; |
|
| Жесткое ограничение размера реестра ручных страниц; самые старые удаляются первыми |
| не задано | Установите |
Ручные проверки помимо дымового теста
Когда вы хотите проверить работоспособность частей продукта, требующих ручного участия, это самые ценные последующие действия после npm run smoke:
npm run smoke:liveopen_instagram_visual_searchс тем же профилем Chrome, который вы планируете использовать ежедневноopen_xiaohongshu_visual_searchс тем же профилем, если требуется вход в системуopen_google_maps_visual_search, чтобы подтвердить, что примечание о ручном просмотре и поведение без обхода по-прежнему выглядят корректно
Точные команды для Mac
cd /Users/lanston/Desktop/Codex/visual-hunt-mcp
npm install
npm run chrome:debug
npm run smoke
npm run smoke:liveMaintenance
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
- AlicenseBqualityDmaintenanceMCP server to search and download stock images from Pexels, Unsplash, and Pixabay2283MIT
- AlicenseAqualityDmaintenanceAn MCP server for searching and retrieving photos from Unsplash with proper attribution, designed for LLMs building content pages.316MIT
- AlicenseAqualityCmaintenanceMCP server that enables searching and downloading Unsplash photos and collections.4MIT
- AlicenseAqualityAmaintenanceProduction-ready Model Context Protocol (MCP) server for the Unsplash API — search photos, fetch details, and stay compliant with Unsplash attribution & download-tracking guidelines. Unofficial; not affiliated with or endorsed by Unsplash.21941MIT
Related MCP Connectors
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
A TypeScript MCP server for Home Assistant, enabling programmatic management of entities, automati…
MCP server for interacting with the Supabase platform
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/CTlanston/visual-hunt-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server