Promas
Promas (제품 이미지 스크래퍼)
Promas는 AI 에이전트를 위한 자동화된 제품 이미지 스크래퍼이자 Model Context Protocol (MCP) 서버입니다.
HTML 구조가 바뀔 때마다 깨지는 취약한 사이트별 스크래퍼를 작성하는 대신, Promas는 플러그형 검색 기반 디스커버리와 범용 시맨틱 추출 파이프라인, 확장 가능한 CDN 인식 업스케일링을 결합합니다. Apple, Nike, Sony, Amazon, Target, B&H, Best Buy, eBay, Shopify 스토어 및 임의의 제품 URL 등 모든 브랜드 또는 소매 사이트에서 마스터 해상도 제품 사진을 안정적으로 추출합니다.
1. 빠른 시작
옵션 A: PyPI에서 설치 (권장)
pip install promas
playwright install chromium어디서든 즉시 실행:
promas "iPhone 16 Pro"옵션 B: Docker로 실행 (로컬 Python / Playwright 설정 불필요)
# Build the Docker image
docker build -t promas .
# Run the FastMCP Server for your AI Agent
docker run -i --rm promas
# Or run the standalone CLI scraper
docker run --rm promas promas "Sony FX3"Related MCP server: Universal Shopping Agent MCP Server
2. 아키텍처 및 파이프라인
graph TD
User([AI Agent / CLI Request]) --> Cache{TTL Disk Cache}
Cache -- "Cache Hit (<0.1s)" --> Return([Return Verified Master Assets])
Cache -- "Cache Miss" --> SearchRouter{Pluggable Discovery}
SearchRouter -->|BRAVE_API_KEY| BraveAPI[Brave Search API]
SearchRouter -->|SERPAPI_API_KEY| SerpAPI[SerpAPI Google]
SearchRouter -->|Default: Free / Zero Keys| BrowserSearch[Stealth Browser Discovery]
BraveAPI --> Scorer[E-Commerce Candidate Scorer]
SerpAPI --> Scorer
BrowserSearch --> Scorer
Scorer --> ParallelScraper[Parallel Multi-Page Scraper]
subgraph Scraping Pipeline
ParallelScraper --> RateLimiter[Domain Rate Limiter]
RateLimiter --> Parser[Universal Extractor: Schema.org, OG, Microdata, DOM]
Parser --> CDNUpscaler[CDN Master Upscalers: Scene7, Nike, Shopify, Amazon...]
end
CDNUpscaler --> Verifier[Async HTTP Verification & pHash Dedup]
Verifier --> CacheStore[(Save to Disk Cache)]
CacheStore --> Return3. 왜 Promas인가? (비교)
기능 | 원시 스크립트 ( | 유료 API ( | Promas |
비용 | 무료 | 월 $50–$500+ 반복 비용 | 100% 무료 및 오픈소스 (MIT) |
설정 및 유지보수 | 사이트별 선택자가 취약함; 리디자인 시 깨짐 | 일반 HTML 응답; 사용자 정의 파서 필요 | 검색 기반 + 시맨틱 스키마 + CDN 업스케일러 |
안티봇 및 속도 제한 | Cloudflare/Akamai에 의해 빠르게 차단됨 | 클라우드에서 처리됨 | 도메인별 속도 제한기 + 스텔스 + Tenacity 재시도 |
이미지 검증 | 없음; 깨진 링크 및 1x1 픽셀 반환 | 기본 상태 확인 | 비동기 HTTP 검증 + pHash 지각 중복 제거 |
검색 백엔드 | 하드코딩된 스크래퍼 | 사용자 정의 API 스크래퍼 | 플러그형 (Brave API / SerpAPI / 브라우저 폴백) |
캐싱 | 없음 | 추가 비용 | 내장 TTL 디스크 캐시 (반복 쿼리 시 서브초) |
이미지 품질 | 일반적으로 저해상도 UI 썸네일 캡처 | 원본 페이지 이미지만 | 마스터 CDN 디캡 (최대 2500px+) |
AI 에이전트 네이티브 | 수동 래퍼 필요 | REST API 전용 | 네이티브 FastMCP 도구 프로토콜 + Docker 지원 |
4. 검색 백엔드 및 구성
Promas는 구성이나 API 키 없이도 100% 즉시 작동합니다.
검색 디스커버리 작동 방식:
무료 / 기본 (설정 불필요): Promas는 내장된 Playwright Stealth 브라우저 엔진을 사용하여 Bing 및 DuckDuckGo를 통해 전자상거래 후보를 무료로 발견합니다.
Brave Search API (프로덕션 권장):
BRAVE_API_KEY가 설정되면 Promas는 공식적이고 ToS를 준수하는 서브초 API 디스커버리로 전환합니다.무료 키 받기 (월 2,000회 무료 쿼리): Brave Search API
SerpAPI (대안):
SERPAPI_API_KEY가 설정되면 Promas는 SerpAPI를 통해 Google Search를 쿼리합니다.무료 키 받기 (월 100회 무료 쿼리): SerpAPI
환경 변수 참조:
변수 | 기본값 | 설명 |
| 없음 | Brave Search용 선택적 API 키 |
| 없음 | SerpAPI Google Search용 선택적 API 키 |
|
| 최대 동시 브라우저 컨텍스트 수 |
|
| 대상 스토어당 최대 동시 요청 수 |
|
| 동일 도메인에 대한 요청 간 정중한 지연 |
|
| 디스크 캐싱 토글 ( |
|
| 캐시 만료 시간 (초) |
|
| 비동기 HTTP MIME 및 픽셀 크기 확인 |
|
| pHash 근사 중복 크롭 제거 |
|
| pHash 중복 제거 민감도 임계값 |
5. 사용법
A. 독립형 CLI
제품 이름으로 검색:
promas "iPhone 16 Pro"직접 URL에서 추출:
promas "https://www.apple.com/iphone-16-pro/"특정 도메인 필터링 및 개수 제한:
promas "Sony FX3" --max-images 5 --site bhphotovideo.com캐시 우회 또는 검증 비활성화:
promas "Nike Air Jordan 1" --no-cache --no-verifyB. FastMCP 서버
독립형 MCP 서버 실행:
promas-mcpC. 에이전트 통합 (mcp_config.json)
네이티브 Python 설치:
{
"mcpServers": {
"promas": {
"command": "promas-mcp",
"env": {
"BRAVE_API_KEY": "optional-key-here"
}
}
}
}Docker 컨테이너 (의존성 제로 설정):
{
"mcpServers": {
"promas": {
"command": "docker",
"args": ["run", "-i", "--rm", "promas"]
}
}
}6. 다중 도구 MCP 스위트
Promas는 AI 에이전트에게 전용 세분화 도구를 제공합니다:
도구 | 목적 | 설명 |
| 전체 파이프라인 | 쿼리 문자열 또는 URL -> 자동 디스커버리 -> 병렬 스크래핑 -> HTTP 검증 -> pHash 중복 제거 -> 마스터 사진 링크. |
| 디스커버리 전용 | 쿼리 문자열 -> 전자상거래 제품 페이지 후보의 빠른 순위 (이미지 스크래핑 없이 URL 반환). |
| 추출 전용 | 특정 직접 URL -> 해당 페이지에서 제목 및 마스터 이미지 자산만 추출. |
7. 에이전트 시스템 프롬프트 가이드라인
AI 에이전트의 시스템 프롬프트에 다음 지침을 추가하세요:
You have access to the `fetch_product_images` tool (Promas), which universally retrieves high-resolution product imagery and official product links from across the web.
GUIDELINES FOR USING PROMAS:
1. When asked for product images, photos, or visual references, call `fetch_product_images(query=<specific product name or direct URL>)`.
2. Do not invent or hallucinate image URLs; strictly return the verified URLs returned by Promas.
3. Render primary high-res images as markdown (e.g. ``) and provide source product links for reference.
4. If a specific store is desired by the user, you can supply `site_filter` (e.g. `site_filter="apple.com"`).8. 출력 스키마
{
"status": "success",
"query": "iPhone 16 Pro",
"title": "Apple iPhone 16 Pro",
"sources_scraped": [
"https://www.target.com/p/apple-iphone-16-pro/-/A-93597960",
"https://www.amazon.com/Apple-iPhone-Version-256GB-Titanium/dp/B0DHJDPYYR",
"https://www.apple.com/shop/buy-iphone/iphone-16"
],
"images": [
"https://target.scene7.com/is/image/Target/GUEST_7c0750b4-ee18-41d4-9309-d08e41619229",
"https://target.scene7.com/is/image/Target/GUEST_4e1ce623-313f-4193-93a4-61dc0fc9da14"
],
"error_message": null
}9. 기여
기여는 언제나 환영합니다! 새로운 전자상거래 플랫폼 또는 CDN에 대한 마스터 업스케일링 지원을 추가하는 것은 데코레이터 플러그인 레지스트리로 10줄 미만의 코드만 필요합니다.
👉 새 CDN 규칙 추가에 대한 단계별 지침은 CONTRIBUTING.md를 참조하세요.
10. 테스트 및 품질 보증
Promas는 순수 파싱 함수에 대한 단위 테스트, 타입 검사, 카나리아 통합 테스트를 포함합니다:
# Run unit tests
pytest -v
# Run linting
ruff check .
# Run type checker
mypy promas/ tests/
# Run live golden canary integration tests (hits live sites)
pytest -v --run-integration11. 법적 및 윤리적 사용
공개 액세스 전용: Promas는 공개적으로 접근 가능한 웹 페이지만 액세스합니다. 인증, 페이월 또는 개인 로그인을 우회하지 않습니다.
서비스 약관: 자동 액세스는 개별 사이트의 서비스 약관의 적용을 받을 수 있습니다. 대규모 스크래핑 전에 항상 대상 도메인의 ToS 및 로봇 정책을 검토하거나, ToS를 준수하는 디스커버리를 위해 공식 검색 API 키 (
BRAVE_API_KEY/SERPAPI_API_KEY)를 제공하세요.이미지 저작권 및 출처 표시: Promas는 직접 이미지 URL을 해석하고 반환합니다. 미디어 파일을 저장, 재호스팅 또는 복사하지 않습니다. 검색된 이미지의 다운스트림 표시, 저장 또는 상업적 사용은 사용자의 책임입니다.
12. 라이선스
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다.
Maintenance
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
- AlicenseAqualityDmaintenanceKlarna-style product discovery for AI shopping agents. Makes product catalogs machine-readable so AI agents can search, compare, and purchase products programmatically.6MIT
- FlicenseAqualityDmaintenanceEnables AI-powered shopping assistance by analyzing natural language shopping queries and automating product searches on multiple e-commerce platforms.12
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to perform web searches, extract webpage content, and conduct end-to-end search-and-extract operations using multiple search providers and content extraction methods.

dentro MCPofficial
AlicenseAqualityDmaintenanceProvides structured commerce data for AI agents, enabling real-time product searches and brand discovery across 22,000+ DTC brands without scraping or hallucination.531MIT
Related MCP Connectors
Agent-native product catalog for AI shopping agents. 296M+ products, 28 countries.
Product discovery for AI agents: ranked products and bundles from the open merchant web.
Web search, page extraction and structured commerce, social and business data for AI agents
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/szqiel/promas'
If you have feedback or need assistance with the MCP directory API, please join our Discord server