jiro
Jiro Search API 🔍
로컬 우선(Local-first), AI 네이티브 웹 검색 & 스크래핑 API — 즉시 대체 가능한(drop-in) 자체 호스팅 SerpAPI 대안으로, MCP 서버, 에이전트형 리서치, 내장된 법적 규정 준수를 제공합니다.
Jiro는 Google, Bing, DuckDuckGo, Brave, YouTube, Amazon, eBay, Yandex, Baidu를 직접 스크래핑합니다 — 서드파티 검색 API가 필요 없고, 쿼리별 요금도 없으며, 클라우드 종속도 없습니다. 결과는 SQLite에 로컬로 캐시되고(캐시 응답 50ms 미만), SerpAPI 호환 REST API로 노출되며, AI 에이전트가 호출하기 좋게 설계되었습니다: OpenAI/Anthropic/Gemini용 함수 호출 스키마, Model Context Protocol(MCP) 서버, LangChain/LlamaIndex 래퍼, 그리고 계획 → 검색 → 페이지 읽기 → 출처가 포함된 답변 합성을 수행하는 에이전트형 /ai/search 루프를 제공합니다. 프록시, CAPTCHA 솔버, LLM 프로바이더는 자체 키(BYOK)를 가져와 사용하면 됩니다.
상태: 프로덕션 준비 완료 MVP(오픈소스, MIT). $0로 자체 호스팅하거나, 관리형 프록시 팜, SLA, 규정 준수 대시보드를 제공하는 Jiro Cloud를 구독할 수 있습니다. 책임 있는 사용: 검색 엔진은 봇에 적극적으로 대응합니다. 가정용 IP(그리고 BYOK 프록시 포함)에서는 Google/DuckDuckGo가 동작합니다. 데이터센터 IP에서는 Jiro가 자동으로 엔진을 폴백합니다(
google → bing → brave → duckduckgo). 각 엔진의 ToS와robots.txt를 준수하세요.
왜 Jiro인가요? (자체 호스팅 SerpAPI 대안)
폐쇄형 검색 API의 문제점 | Jiro의 오픈소스 해결책 |
💸 SerpAPI는 10만 건 요청에 $200+/mo | 평생 무료 — 내 인프라에서 실행 (MIT) |
⚡ 클라우드 종속, 요청이 네트워크 밖으로 나감 | 100% 로컬 우선 — 내 요청, 내 데이터, 내 규정 준수 |
🤖 네이티브 AI 에이전트 통합 없음 | MCP + Function Calling + LangChain/LlamaIndex 네이티브 |
⚖️ 법적 회색지대 (robots.txt, ToS) | 규정 준수 내장: robots.txt 파서, ToS 추적, 변경 불가 감사 로그 |
🔧 취약한 파서는 UI 변경에 깨짐 | 자가 치유 셀렉터 + 9개 엔진 자동 폴백 체인 |
Related MCP server: Scout MCP Server
명령 하나로 시작하기
pip install jiro-search # or: uv tool install jiro-search
jiro serve # API on http://localhost:8000 (docs: /docs)이것이 전부입니다 — 한 번의 명령으로 동작하는 자체 호스팅 검색 API가 준비됩니다.
# Search (SerpAPI-compatible endpoint)
curl "http://localhost:8000/search.json?engine=google&q=python+web+scraping&num=5"
# Scrape a page into clean markdown
curl -X POST http://localhost:8000/scrape \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com","format":"markdown"}'
# Agentic research with citations
curl -X POST http://localhost:8000/ai/search \
-H "Content-Type: application/json" \
-d '{"query":"What is the best Python web scraping library in 2026?","max_sources":5}'기능 매트릭스
기능 | Jiro (OSS) | Les Serp | ScraperAPI | Bright Data |
웹 검색 — 9개 엔진 | ✅ | ✅ | ❌ | ❌ |
범용 웹 스크래퍼 (markdown/text/html/JSON) | ✅ | ❌ | ✅ | ✅ |
에이전트형 리서치 ( | ✅ | ❌ | ❌ | ❌ |
MCP 서버 (stdio + Streamable HTTP + SSE) | ✅ | ❌ | ❌ | ❌ |
Function Calling 스키마 (OpenAI/Anthropic/Gemini) | ✅ | ❌ | ❌ | ❌ |
법적 규정 준수 레이어 (robots.txt, ToS, 감사) | ✅ | ❌ | ❌ | ❌ |
자체 호스팅 / Air-Gapped | ✅ | ❌ | ❌ | ❌ |
BYOK 프록시 + CAPTCHA | ✅ | ❌ | 부분 | ✅ |
오픈소스 (MIT) | ✅ | ❌ | ❌ | ❌ |
가격 | 무료 | $200+/mo | $299+/mo | $500+/mo |
제공 기능
영역 | 기능 |
엔진 | Google (web/images/news/videos/shopping/places), Bing (web/images/news/videos), Brave (web/videos), DuckDuckGo (web/images), YouTube, Amazon, eBay, Yandex, Baidu |
복구성 | 자동 엔진 폴백 체인, UA 순환, 재시도 + 지수 백오프, 엔진별 서킷 브레이커, 봇 벽 탐지, JavaScriptheavy 사이트용 선택형 Playwright 브라우저 폴백 |
Cache | SQLite(WAL) 또는 TTL 기반 Redis, |
스크래퍼 | URL → markdown/text/html/JSON, 그 밖의본문 추출, OpenGraph/Twitter/JSON-LD 메타데이터, 링크와 이미지, LLM 스키마 추출, custom CSS/XPath/JSONPath recipes |
AI 네이티브 | OpenAI/Anthropic/Gemini 도구 스키마, MCP 서버( |
BYOK | 프록시(HTTP/SOCKS5, 단일 목록 또는 프리셋: BrightData/Oxyautolabs/ScraperAPI/ZenRows/Smartproxy), CAPTCHA 솔버(2Captcha/CapSolver), API 프로바이더 키(OpenAI, Anthropic, Gemini, OpenRouter, Ollama) — 모두 config/env로 |
고비용 작업 |
|
팀 | 해시 API 키, admin/user 역할 + 스코프, 키별 속도 제한, JWT, 사용량 추적( |
운영 |
|
프라이버시 | 텔레메트리 없음, 기본적으로 쿼리 기록 없음, 모든 데이터 로컬 |
경량 | Async httpx + selectolax에서도(C 파서), 코어 의존성 15개, 1초 미만 시작 |
Jiro vs SerpAPI, ScraperAPI & Bright Data
Jiro는 검색 + 스크래핑 + AI 리서치 + MCP를 이진(binary) 하나에 결합하고, 법적 규정 준수가 내장된 유일한 오픈소스이자 자체 호스팅이 가능한 프로젝트입니다. 클로즈드 경쟁 업체들은 이 기능의 일부에 월 $200–$3,000를 청구하며 자체 호스팅은 허용하지 않습니다.
→ 전체 비교: vs SerpAPI · vs ScrAPI · [등 여러:docs/comparisons/bright-data.md)
AI 에이전트 통합
Model Context Protocol (MCP)
Jiro는 컴플리트 MCP 서버(stdio, Streamable HTTP, 이전 SSE)를 제공합니다 — AI 에이전트에 실시간 웹 검색,, 페이지 스크래핑, 조사를 제공합니다.
jiro mcp # MCP server over stdio
jiro mcp --transport http # Streamable HTTP + SSE on :8000/mcp도구: search (9개 엔진, 6가 검색) · scrape (markdown/text/html/JSON) · ai_search (인용을 포함한 에이전트형 리서치 ).
프롬프트: search_and_summarize, compare_engines. 자동완성: 엔진 이름, 검색 유형, 시간 범위, 형식.
Claude Desktop
{
"mcpServers": {
"jiro": {
"command": "jiro",
"args": ["mcp"],
"env": { "JIRO_CONFIG": "~/.jiro/config.yaml" }
}
}
}Cursor / Continue.dev / Zed / Cline
MCP 클라이언트에서 서버 명령어로 jiro mcp를 지정해 연결하세요 (자세한 내용: docs/mcp).
Function Calling (OpenAI / Anthropic / Gemini)
from jiro.ai.tools import openai_tools, anthropic_tools, gemini_tools
tools = openai_tools() # OpenAI / OpenRouter / OllamaLangChain / LlamaIndex
from jiro.ai.tools import langchain_tools, ToolSpec
tools = langchain_tools(search_fn=my_search, scrape_fn=my_scrape, ai_fn=my_ai_search)→ 튜토리얼: Jiro + Claude(MCP)로 Deep Research 에이전트 만들기
API 참조
인터랙티브 개요는 http://localhost:8000/docs (Swagger) 및 http://localhost:8000/openapi.json에 있습니다.
메서드 | 경로 | 설명 |
|
| SerpAPI와 호환 — |
|
| 영역어 / JSON body |
|
| 병렬로 최대 10개 쿼리 |
|
| SSE 스트림 (단일 또는 다중 엔진) |
|
|
|
|
| 최대 50개 URL |
|
| 세대 분석 → 검색 → 상위 N개 스크래핑 → 인용 출처를 포함한 정리 |
|
| SSE 스트림 ( |
|
| 다단계 자율 조사 |
|
| 커스텀 스키마로 URL/텍스트에서 LLM 추출 |
|
| 웹훅이 있는 |
|
| 상태, 엔진, Promethus 카운터 |
|
| 해시 키 관리 (admin) |
|
| API 키를 JWT로 교환 |
인증: X-API-Key: jsk_... 헤더, ?api_key=... 파라미터, 또는 Authorization: Bearer <jwt>. auth.enabled: false(기본값)일 때 로컬 사용을 위해 API 가 개방됩니다.
CLI
jiro serve # start the API server
jiro search web "python scraping" --engine bing --num 5 --json
jiro scrape "https://example.com" --format markdown
jiro ask "best python scraping library?" --max-sources 5
jiro mcp # MCP server over stdio
jiro config init # write ~/.jiro/config.yaml
jiro config show
jiro keys create --name "ci" --role user # prompts for admin key
jiro keys list
jiro keys revoke key_abc123
jiro usage --days 7
jiro plugins create myengine --author "Your Name" # scaffold a new engine설정 및 BYOK
설정은 ~/.jiro/config.yaml(또는 $JIRO_CONFIG)에 둡니다. 무엇이든 env로 재지정할 수 있습니다: JIRO_SERVER__PORT=9000, JIRO_AUTH__ENABLED=true. 비밀값은 env에서 대입됩니다: api_key: ${OPENAI_API_KEY}.
서비스 | 설정(Configuration) | 환경 변수 예시 |
프록시 (custom) |
|
|
프록시 (BrightData) |
|
|
프록시 (Oxylabs/ScraperAPI/ZenRows/Smartproxy) |
|
|
CAPTCHA (2Captcha / CapSolver) |
|
|
LLM (OpenAI/Anthropic/Gemini/OpenRouter) |
|
|
LLM (Ollama, 로컬) |
| — |
Redis 캐시 |
|
|
배포
Docker
docker compose up -d # http://localhost:8000Helm (Kubernetes)
helm install jiro ./helm \
--set config.env.JIRO_AUTH__ENABLED=true \
--set config.envFromSecret=jiro-secretsDeployment, Service, PVC(SQLite 데이터), 선택적 Ingress 및 선택적 Redis 캐시(--set redis.enabled=true)가 포함되어 있습니다.
팀 구성 (인증 활성화)
export JIRO_AUTH__ENABLED=true JIRO_JWT_SECRET=$(openssl rand -hex 32)
jiro keys create --name admin --role admin --admin-key "$ADMIN"
jiro keys create --name "alice" --role user --rate-limit 30💡 오픈 코어 & 수익화
Jiro는 **오픈소스(MIT)**이며 자체 호스팅은 항상 무료입니다. 지속 가능한 모델은 다음과 같습니다:
에디션 | 제공 사항 | 타이선스 | 대상 |
Jiro OSS | 전체 검색/스크레이핑/AI/MCP, 모든 엔진, 플러그인, 규정 준수 | MIT | 모든 사람 — $0 |
Jiro Cloud (로드맵) | 관리형 호스팅, 자동 확장, 글로벌 리지던셜 프록시 풀, SLA, SSO, 규정 준수 대시보드 | SaaS | 팀 및 에이전트 |
Jiro Enterprise (로드맵) | 에어갭 라이선스(BSL-1.0), SOC 2 인증 검토, 전담 지원, 프라이빗 엔진 플러그인 | 소스-사용 가능 | Fintech/Legal/Gov/AI Labs |
저희는 편의성, 규제 준수, 지원에 대해 수익화하며, 코드는 절대 수면화하지 않습니다. 커뮤니티 기여는 계속 MIT로 유지됩니다.
→ 로드맵: docs/ROADMAP.md
문서
성능
측정 항목 | 값 |
시작 | < 1 초 |
캐시된 검색 (SQLite) | ~1–3 ms 인-프로세스 왕복 시간 |
실시간 Bing 검색 | ~0.3–0.8 초 (데이터센터 IP 기준) |
작은 페이지 | 첫 요청 ~0.3–0.9 초, 이후 캐시됨 |
테스트 스위트 | 380개의 테스트 확인 |
프로젝트 구조
jiro/
├── ai/ LLM providers, tool schemas, agentic loop (research + multi-step agent + SSE)
├── scraping/ HTTP client (UA rotation, retries, circuit breaker, proxy manager, browser fallback),
│ engines: google/bing/brave/duckduckgo/youtube/amazon/ebay/yandex/baidu
├── server/ FastAPI app: routers (search, scrape, ai, stream, jobs, admin, ops, system)
├── auth.py API keys (SHA-256 hashed), JWT, rate limiting
├── browser.py Playwright browser fallback (lazy, graceful degradation)
├── cache.py SQLite / memory cache manager
├── captcha.py BYOK CAPTCHA solvers (2Captcha, CapSolver)
├── config.py YAML + env config with ${VAR} interpolation
├── db.py SQLite (WAL): cache, api_keys, usage, jobs, semantic_cache, tos_acknowledgments
├── extract.py readability + metadata + HTML→Markdown
├── jobs.py async job queue + webhooks (HMAC-signed)
├── mcp.py MCP server (stdio): tools, prompts, resources, autocompletion
├── models.py Pydantic contracts
├── proxy.py BYOK proxy manager (provider presets, rotation, cooldown)
├── recipes.py CSS / XPath / JSONPath extraction recipes
├── redis_cache.py Redis cache backend
├── semantic.py embedding-based semantic cache
└── cli.py Typer CLI
tests/ parser fixtures + unit/API/integration/chaos/property tests개발
git clone https://github.com/DevAnimecx/jiro.git && cd jiro
pip install -e ".[dev,browser,redis,recipes]"
pytest -m "not network" # skip network-dependent tests
jiro serve --reload로드맵 상태
1단계 (MVP) — ✅ CLI, 설정, FastAPI 서버, google/bing/ddg 웹 엔진, SerpAPI 호환 JSON, SQLite 캐시, API 키 인증, OpenAI 도구 스키마,
/ai/search, Dockerfile.2단계 — ✅ Brave + Bing 비디오, 이미지/뉴스 유형, 팀 키, MCP 서버, LangChain/LlamaIndex 래퍼, 일괄 스크레이핑,
/metrics, Playwright 폴백, BYOK 프록시 + CAPTCHA, SSE, Redis.3단계 — ✅
/ai/agent다단계 리서치, CSS/XPath/JSONPath 레시피, LLM 추출, 플러그인 레지스트리, 비동기 작업 + 웹훅.4단계 — 일부 진행: 시맨틱 캐시 포함 완료. RAG 파이프라인, 수평 확장, 커뮤니티 파서 마켓플레이스는 향후 작업으로 남아 있습니다. Helm 차트 제공됨.
라이선스 및 책임 있는 사용
MIT. Jiro는 스크레이핑 도구입니다: 각 검색 엔진의 이용약관 및 robots을 준수하고, 요청률을 예의있게 유지하며, 프록시/CAPTCHA 서비스는 자신의 재량에 따라 사용하세요. 모든 트래픽은 여러분의 네트워크에서 발생해야 하며, 쿼리는 여러분이 검색한 엔진에서만 표시됩니다.
커뮤니티 & 지원
💬 GitHub Discussions — 질문 및 아이디어
🐛 Issues — 버그 제보 및 기능 요청
🐦 출시 소식 팔로우하기: @DevAnimecx
개발자: Adaresh Kushwah · Blackvault Technology 로컬 우선, AI 네이티브 검색 및 스크레이핑—무료이면서 오픈소스, 그리고 라이프사이클을 직접 결정할 수 있습니다.
This server cannot be installed
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
- FlicenseNot gradedqualityCmaintenanceProvides 42+ MCP tools for browser automation, web scraping, and search, enabling AI agents like Claude and Cursor to browse, extract data, and run research agents on the live web.8

Scout MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceEnables web search, scraping, extraction, and crawling through an MCP interface, allowing coding agents to access real-time web data.1MIT- AlicenseAqualityBmaintenanceEnables AI agents to perform multi-engine web search, fetch web pages, and extract clean Markdown content via MCP, with no API keys required.35MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web searches with full content retrieval and multi-engine provenance, including trust scoring and local corpus persistence, via MCP integration.42Apache 2.0
Related MCP Connectors
Web research for agents: quality-scored Google search, webpage extraction, and deep research.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
The best web search for your AI Agent
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/DevAnimecx/jiro'
If you have feedback or need assistance with the MCP directory API, please join our Discord server