Jina image search
Find and scrape images from the web using Jina AI. Use this skill when the user asks to find images, search for photos, get pictures from Unsplash/Pexels/Pixabay, needs stock photos for presentations, websites, or designs, or mentions finding images online.From its SKILL.md
npx -y skills add adamjali/claude-skills --skill jina-image-searchAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
5 things to look at
- skips confirmationTells the agent to proceed without asking first, 1 time: "🟢 Auto-execute: search, scrape, parse, return URLs".
- reads credentialsReads from 1 credential source: `JINA_API_KEY`.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 2 commands, including `curl "https://s.jina.ai/?q=unsplash+mountains+landscape" -H "Authorization: Bearer $JINA_API_KEY" -H "X-Respond-With: no-content" -H "X-With-Favicons: true"` and 1 more.
- fetches URLsInstructs the agent to fetch 2 URLs, including https://s.jina.ai/ and 1 more.
SKILL.md
4.7 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it
Jina AI Image Search & Web Scraping
<objective> Find high-quality images from the web using Jina AI's search (s.jina.ai) and reader (r.jina.ai) APIs. Stateless one-shot tool — search, scrape, return URLs. Useful for presentations, web design, visual art, and documents. </objective><execution_context>
- 🟢 Auto-execute: search, scrape, parse, return URLs
- Stateless — no history file, no recovery
- Auth: Bearer token read from the
JINA_API_KEYenvironment variable </execution_context>
Overview
Jina AI provides two endpoints:
- s.jina.ai - Search the web and return structured results
- r.jina.ai - Scrape any URL and convert to GitHub-flavored markdown with embedded images
Authentication
This skill reads your Jina key from the JINA_API_KEY environment variable. Get a free key at https://jina.ai (no credit card; a new email address gets a fresh free token grant). Then set it in your shell profile:
export JINA_API_KEY="your-key"
Send it as a Bearer token:
Authorization: Bearer $JINA_API_KEY
Free no-key fallback (verified 2026-06)
If the key returns 402 (InsufficientBalanceError = balance exhausted), or to avoid spending it:
- Reader
r.jina.aiworks WITHOUT a key — drop theAuthorizationheader (free, per-IP rate-limited). Use it to scrape/read a page; its clean-markdown output often beats Claude Code's built-inWebFetch, so prefer it (or use both). - Search
s.jina.aiREQUIRES a key (keyless = 401). When the key is dead, do the search half with Claude Code's built-inWebSearchtool (no key, no cost), then scrape the chosen URLs with keylessr.jina.ai. - The 402 is tied to the key's balance, not your IP, so keyless Reader works even when the key is broke.
Recovery order: (1) reads → keyless Reader; (2) search → built-in WebSearch, or mint a fresh free key at https://jina.ai and update JINA_API_KEY; (3) pay to top up only as a last resort.
Image Search Workflow
Step 1: Search for Images
Use s.jina.ai to search image sites:
curl "https://s.jina.ai/?q=unsplash+mountains+landscape" \
-H "Authorization: Bearer $JINA_API_KEY" \
-H "X-Respond-With: no-content" \
-H "X-With-Favicons: true"
Returns JSON with URLs to image pages on Unsplash, Pexels, etc.
Step 2: Scrape Image URLs
Use r.jina.ai to extract actual image URLs from the pages:
curl "https://r.jina.ai/https://unsplash.com/s/photos/mountains" \
-H "Authorization: Bearer $JINA_API_KEY" \
-H "X-Engine: browser" \
-H "X-With-Generated-Alt: true" \
-H "X-With-Images-Summary: true" \
-H "X-With-Links-Summary: true"
Returns markdown with embedded image URLs like:
[](https://unsplash.com/photos/ID)
Step 3: Extract and Use Images
Parse the markdown output to extract direct image URLs (images.unsplash.com, etc.) for use in:
- Presentations (pptx)
- Web pages (HTML/React)
- Documents (docx)
- Visual designs (canvas)
Common Image Sources
| Source | Search Query | License |
|---|---|---|
| Unsplash | unsplash+KEYWORD | Free, no attribution required |
| Pexels | pexels+KEYWORD | Free, no attribution required |
| Pixabay | pixabay+KEYWORD | Free, attribution appreciated |
API Headers Reference
s.jina.ai (Search)
| Header | Value | Purpose |
|---|---|---|
X-Respond-With | no-content | Return metadata only, not full content |
X-With-Favicons | true | Include site favicons |
r.jina.ai (Reader)
| Header | Value | Purpose |
|---|---|---|
X-Engine | browser | Use browser rendering for JS-heavy pages |
X-With-Generated-Alt | true | Generate alt text for images |
X-With-Images-Summary | true | Include summary of all images |
X-With-Links-Summary | true | Include summary of all links |
Quick Reference Scripts
For scripted image searches, see:
${CLAUDE_SKILL_DIR}/scripts/search-images.sh- Search and scrape imagesreferences/api-details.md- Full API documentation
Integration Examples
For Presentations (pptx)
curl "https://s.jina.ai/?q=unsplash+business+meeting+office" ...
For Web Design
curl "https://s.jina.ai/?q=unsplash+abstract+gradient+background" ...
For Visual Art
curl "https://s.jina.ai/?q=unsplash+marble+texture+minimal" ...
What ships with it: 3 files
6.0 KB alongside SKILL.md, 1 of them executable
.claude-plugin/
- plugin.json426 B
references/
- api-details.md3.8 KB
scripts/
- search-images.shruns1.7 KB