jiro
Jiro Search API 🔍
ローカルファーストで、AIネイティブなWeb検索・スクレイピングAPI — 自己ホスト型SerpAPIのドロップイン代替であり、MCPサーバー、エージェント型リサーチ、組み込みの法的コンプライアンスを備えています。
Jiro は、Google、Bing、DuckDuckGo、Brave、YouTube、Amazon、eBay、Yandex、Baidu を直接スクレイピングします。サードパーティの検索API、クエリごとの課金、クラウドへのロックインは一切ありません。結果はSQLiteにローカルキャッシュされ(50ms未満のキャッシュ応答)、SerpAPI互換のREST APIとして公開されます。また、AIエージェントから呼び出せるように設計されています。つまり、OpenAI/Anthropic/Gemini向けのFunction Callingスキーマ、Model Context Protocol(MCP)サーバー、LangChain/LlamaIndexラッパー、そして「計画 → 検索 → ページ閲覧 → 引用付き回答の合成」を行う /ai/search エージェントループを備えています。プロキシ、CAPTCHAソルバー、LLMプロバイダーには、お持ちのキー(BYOK)を使えます。
ステータス: 本番利用可能なMVP(オープンソース、MIT)です。$0 で自己ホストするか、Jiro Cloud を契約して、マネージドプロキシ群、SLA、コンプライアンスダッシュボードを利用できます。 責任ある利用: 検索エンジンはボットに積極的に防御しています。住宅用IP(およびBYOKプロキシ)では Google/DuckDuckGo が動作します。データセンターIPでは、Jiro は自動的にエンジンを切り替えます(
google → bing → brave → duckduckgo)。各エンジンの利用規約とrobots.txtを尊重してください。
なぜJiroか(自己ホスト型SerpAPIの代替)
クローズドな検索APIの問題点 | Jiroのオープンソースによる解決策 |
💸 SerpAPIは10万リクエストにつき月額$200+ | 完全無料 — 自社インフラで実行(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) | Aero(Aqua) | AeroApi | ScrapeAPI | Bright Data |
| --- | :---: | :---: | :---: | :---: |
| Web検索(9エンジン) | ✅ | ✅ | ❌ | ❌ |
| 汎用Webスキャラー(markdown/text/html/JSON) | ✅ | ❌ | ✅ | ✅ |
| エージェント型リサーチ(/ai/search) | ✅ | ❌ | ❌ | ❌ |
| MCPサーバー(stdio + Streamable HTTP + SSE) | ✅ | ❌ | ❌ | ❌ |
| Function Calling スキーマ(ChatGPT/Anthropic/Gemini) | ✅ | ❌ | ❌ | ❌ |
| 法的コンプライアンスレイヤー(robots.txt、ToS、監査) | ✅ | ❌ | ❌ | ❌ |
| 自己ホスト/エアギャップ対応 | ✅ | ❌ | ❌ | ❌ |
| BYOKプロキシ+CAPTCHA対応 | ✅ | ❌ | 一部 | ✅ |
| オープンソース(MIT) | ✅ | ❌ | ❌ | ❌ |
| 料金 | 無料 | $200+/mo | $299+/mo | $500+/mo |
主な機能
分野 | 機能 |
検索エンジン | Google(Web/画像/ニュース/動画/ショッピング/プレイス)、Bing(Web/画像/ニュース/動画)、Brave(Web/動画)、DuckDuckGo(Web/画像)、YouTube、Amazon、eBay、Yandex、Baidu |
堅牢性 | 自動フォールバックチェーン、UAローテーション、リトライ+指数バックオフ、エンジン別サーキットブレーカー、ボット防止壁の検知、JSが多いページのためのオプションのPlaywrightフォールバック |
キャッシュ | SQLite(WAL)またはTTL付きRedis、 |
スクレイパー | URL→markdown/text/html/JSON、可読性抽出、OpenGraph・Twitter・JSON-LDメタデータ、リンクと画像、LLMスキーマ抽出、カスタムCSS/XPath/JSONパスレシピ |
AIネイティブ | OpenAI/Anthropic/Geminiのツールスキーマ、MCPサーバー( |
BYOK | プロキシ(HTTP/SOCKS5、リストまたはプリセット:BrightData/Oxylabs/ScraperAPI/ZenRows/Smartproxy)、CAPTCHAソルバー(2Captcha/CapSolver)、LLMキー(OpenAI、Anthropic、Gemini、OpenRouter、Ollama)— すべて設定または環境変数で指定可能 |
非同期ジョブ | 長時間のリサーチやスケイプのバッチは |
チーム機能 | ハッシュ化されたAPIキー、管理・ユーザーロール+スコープ、キーごとのレート制限、JWT、利用状況追跡( |
運用 | Prometheus対応の |
プライバシー | テレメトリなし、デフォルトでクエリをログしない、データはすべてローカルに残る |
軽量 | 非同期httpx+selectolax(Cパーサー)、依存は約15個、1秒以内に起動 |
Jiro vs SerpAPI、ScraperAPI、Bright Data
Jiroは、検索+スクレイピング+エージェント型AIリサーチ+MCPを1つのバイナリにまとめ、法的コンプライアンスを内蔵した、唯一のオープンソースで自己ホスト可能なプロジェクトです。クローズドな競合製品は、これらの一部だけの機能に月額$200〜$3,000を請求し、自己ホストを許しません。
→ 詳細な比較: vs SerpAPI・vs ScraperAPI・vs Bright Data
AIエージェント統合
Model Context Protocol (MCP)
Jiroには完全なMCPサーバー(stdio、Streamable HTTP、従来のSSE)が含まれており、AIエージェントにライブのWeb検索、ページスクレ、リサーチ機能を提供します。
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 (現行以降) / 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)でディープリサーチエージェントを構築する
APIリファレンス
インタラクティブドキュメントは http://localhost:8000/docs(Swagger)および http://localhost:8000/openapi.json にあります。
メソッド | パス | 説明 |
|
| SerpAPI互換 — |
|
| エイリアス / JSONボディ |
|
| 最大10件のクエリを並行実行 |
|
| SSEストリーム(単一または複数エンジン) |
|
|
|
|
| 最大50個のURL |
|
| 計画→検索→上位N件をスクレイプ→引用付き回答を生成 |
|
| SSEストリーム( |
|
| 多段階の自律リサーチ |
|
| URL/テキストからカスタムスキーマでLLM抽出 |
|
|
|
|
| 状態、エンジン一覧、Prometheusカウンター |
|
| ハッシュ化されたキー管理(管理者用) |
|
| 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)にあります。任意のものを環境変数で上書きできます: JIRO_SERVER__PORT=9000、JIRO_AUTH__ENABLED=true。シークレットは環境変数から展開されます: api_key: ${OPENAI_API_KEY}。
サービス | 設定 | 環境変数の例 |
プロキシ(カスタム) |
|
|
プロキシ(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ラボ |
私たちが収益化するのは利便性・コンプライアンス・サポートであり、コードではありません。コミュニティからのコントリビューションは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抽出、プラグインレジストリ、非同期ジョブ + Webhook。フェーズ4 — 部分対応: セマンティックキャッシュは導入。RAGパイプライン、水平スケーリング、コミュニティパーサー市場は今後の作業です。Helmチャートを提供しています。
ライセンスと責任ある利用
MIT。Jiroはスクレイピングツールです。各検索エンジンの利用規約とrobots.txtを尊守し、リクエストレートを自己節制し、プロキシ・CAPTCHAサービスの利用は自己の判断で行ってください。すべてのトラフィック発はあなたのネットワークから送信され、クエリはあなたが照会するエンジンにのみ表示されます。
コミュニティとサポート
💬 GitHub Discussions — 質問とアイデア
🐛 Issues — バグと機能リクエスト
🐦 ローンチをフォローする: @DevAnimecx
開発者: Adarsh Kush進 · 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