Skip to main content
Glama

Jiro Search API 🔍

本地优先、AI 原生网页搜索与抓取 API —— 一个可直接替换的、自托管的 SerpAPI 替代方案,内置 MCP 服务器智能体研究法律合规能力

GitHub stars GitHub forks PyPI version Docker License: MIT Tests Python

Jiro 直接抓取 Google, Bing, DuckDuckGo, Brave, YouTube, Amazon, eBay, Yandex 和 Baidu —— 无需第三方搜索 API、不按查询计费、无云锁定。结果本地缓存于 SQLite(缓存响应 < 50 ms),通过 与 SerpAPI 兼容的 REST API 提供,并专为 AI 智能体 调用而设计:为 OpenAI/Anthropic/Gemini 提供函数调用模式,一个 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)。请遵守每个引擎的 ToS 和 robots.txt


为什么选择 Jiro?(自托管 SerpAPI 替代方案)

封闭式搜索 API 的问题

Jiro 的开源解决方案

💸 SerpAPI 100k 次请求需 $200+/月

永久免费 —— 部署在你自己的基础设施上(MIT)

☁️ 云锁定,你的查询离开你的网络

100% 本地优先 —— 你的查询、你的数据、你的合规性

🤖 无原生 AI 代理集成

原生支持 MCP + 函数调用功能 + LangChain/LlamaIndex

⚖️ 法律灰区(robots.txt、ToS 等)

内置合规性:robots.txt 解析器、ToS 跟踪、不可篡改的审计日志

🔧 易碎解析器,界面稍动就挂

自我修复选择器 + 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)

SerpAPI

ScraperAPI

Bright Data

9 个引擎的网页搜索

通用网页抓取器(markdown/text/HTML/JSON)

智能研究/ai/search agent)

MCP 服务器(stdio + Streamable HTTP + SSE)

函数调用 Schemas(OpenAI / Anthropic / Gemini)

法律合规层(robots.txt、ToS、审计)

自托管 / 可离线部署

BYOK 代理 + CAPTCHA

部分支持

开源(MIT)

价格

免费

$200+/月

$299+/月

$500+/月


你得到什么

区域

功能

引擎

Google(网页/图片/新闻/购物/地图),Bing(网页/图片/新闻/视频),Brave(网页/视频),DuckDuckGo(网页/图片),YouTube, Amazon, eBay, Yandex, Baidu

韧性

引擎自动回退链、UA 轮换、重试 + 指数退避、引擎级熔断器、机器人墙检测、可选 Playwright 浏览器回退(针对 JS 渲染页面)

缓存

SQLite(WAL)或 Redis 带 TTL,fresh=true 跳过缓存;内存模式;语义缓存(基于嵌入的模糊复用);缓存 p95 < 50 ms

抓取

URL → markdown/text/html/JSON,可读性提取,OpenGraph/Twitter/JSON-LD 元数据,链接和图片,LLM schema 提取,自定义 CSS/XPath/JSONPath 菜谱

AI 原生

OpenAI/Anthropic/Gemini 工具 schemas,MCP 服务器jiro mcp),LangChain 与 LlamaIndex 封装,/ai/search 代理循环,/ai/agent 多步研究,SSE 流式输出,无 LLM 密钥时的提取式降级方案

BYOK

代理(HTTP/SOCKS5,单个列表或预设:Support/meta)· CAPTCHA 求解(2Captcha、Cap Searcher)· LLM keys(OpenAI、LSP、Gemini、OpenRouter、Ollama)——一切均通过配置/环境变量

异步任务

POST /jobs 用于长耗时的研究/批量抓取,GET /jobs/{id} 状态,webhook 投递 + HMAC 签名

团队

哈希式 API 密钥、管理员/用户角色 + 作用域、按密钥限速、JWT、用量跟踪(/usage/metrics

运维

Prometheus /metrics、代理状态 /proxy/status、验证码状态 /captcha/status、结构化 JSON 日志、Helm Chart

隐私

无遥测,查询默认不记录,所有数据留在本地

轻量

异步 httpx + selectolax(C 解析器),约 15 个核心依赖,启动 < 1 秒


Jiro vs SerpAPI、ScraperAPI 与 Bright Data

Jiro 是唯一一个 开源、可自托管 的项目,能将 搜索 + 抓取 + 智能体 AI 研究 + MCP 整合在一个二进制中,并内置法律合规能力。闭源对手往往要为此其中一部分功能收取每月 $200–$3,000,而且从不允许自托管。

→ 完整对比:vs SerpAPI · vs ScraperAPI · vs Bright Data


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

Tools: search(9 引擎,可高亮) · scrape(markdown/text/html/json) · ai_search(带引用的智能研究)。 Prompts: 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)。

函数调用(OpenAI / Anthropic / Gemini)

from jiro.ai.tools import openai_tools, anthropic_tools, gemini_tools
tools = openai_tools()           # OpenAI / OpenRouter / Ollama

LangChain / 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 构建深度研究 Agent(MCP)


API 参考

交互式文档在 http://localhost:8000/docs(Swagger)和 http://localhost:8000/openapi.json

方法

路径

说明

GET

/search.json

SerpAPI 兼容 —— engine, q , num, start, hl, gl, api_key, …

GET / POST

/search

别名 / JSON 请求体

POST

/search/batch

并行最多 10 个查询

GET

/search/stream

SSE 流(单个或多个搜索引擎)

POST

/scrape

{ "url": , "format": , "include_metadata": , "extract_schema": , "recipe": }

POST

/scrape/batch

最多 50 个 URL

POST

/ai/search

计划 → 搜索 → 抓取前 N 个 → 综合生成带引用的回答

GET

/ai/search/stream

SSE 流(plan|search|source|synthesize|answer

POST

/ai/agent

多步自主研究

POST

/ai/extract

从 URL/文本中使用自定义 schema 进行 LLM 提取

POST

/jobs

ai_search / ai_agent / batch_scrape,支持 webhook

GET

/health , /engines , /metrics

状态、引擎列表、Prometheus 计数器

POST / GET / DELETE

/api-keys

哈希式密钥管理(管理员)

POST

/auth/token

用 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=9000JIRO_AUTH__ENABLED=true。敏感信息从环境变量插值:api_key: ${OPENAI_API_KEY}

服务

配置

环境变量示例

代理(自定义)

scraping.proxy.url(逗号分隔,自动轮换)

http://user:pass@proxy.example:22225

代理(BrightData)

scraping.proxy.provider: brightdata + api_key

${BRIGHTDATA_API_KEY}

代理(Oxylabs/ScraperAPI/ZenRows/Smartproxy)

scraping.proxy.provider + api_key

${OXYLABS_API_KEY}

验证码(2Captcha / CapSolver)

scraping.captcha.provider + api_key

${CAPSOLVER_API_KEY}

LLM(OpenAI/Anthropic/Gemini/OpenRouter)

llm.provider/api_key/model

${OPENAI_API_KEY}

LLM(Ollama,本地)

llm.provider: ollama, base_url: http://localhost:11434/v1

Redis 缓存

cache.type: redis, cache.url

JIRO_CACHE__TYPE=redis


部署

Docker

docker compose up -d            # http://localhost:8000

Helm (Kubernetes)

helm install jiro ./helm \
  --set config.env.JIRO_AUTH__ENABLED=true \
  --set config.envFromSecret=jiro-secrets

包含 Deployment、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 合规路径、专属支持、私有引擎插件

源码可得(Source-available)

金融科技/法律/政府/AI 实验室

我们通过便利性、合规性与支持盈利——而绝不是代码本身。社区贡献始终保持 MIT 许可。

→ 路线图:docs/ROADMAP.md


文档


性能

指标

启动

< 1 s

缓存搜索(SQLite)

约 1–3 ms 进程内往返

实时 Bing 搜索

约 0.3–0.8 s(数据中心 IP)

/scrape 小页面

约 0.3–0.9 s 首次命中,之后走缓存

测试套件

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 提取、插件注册表、异步任务 + webhooks。

  • 阶段 4 — 部分完成:语义缓存已内置;RAG 流水线、水平扩展以及社区解析器市场仍是后续工作。已提供 Helm chart。


许可证与负责任使用

MIT。Jiro 是一个搜索与抓取工具:请尊重每个搜索引擎的服务条款和 robots.txt,合理控制请求频率,并根据自身情况选择是否使用代理/CAPTCHA 服务。所有流量均来自你自己的网络;查询内容只会对你请求的搜索引擎可见。


社区与支持


开发者 Adarsh Kushwah · Blackvault Technology

本地优先、AI 原生的搜索与抓取——免费、开放、由你自己掌控。

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

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

  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides 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
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to perform web searches with full content retrieval and multi-engine provenance, including trust scoring and local corpus persistence, via MCP integration.
    4
    2
    Apache 2.0

View all related MCP servers

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

View all MCP Connectors

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/DevAnimecx/jiro'

If you have feedback or need assistance with the MCP directory API, please join our Discord server