Changelog
What changed, when, and what it means for your integration.
19 August 2026 — Image search#
Blopus could already attach a page’s hero image to a web result. That is not image search, and it showed: a query for blue birds ran a web search, matched Blue Bird Corporation, and returned stock‑ticker articles whose “images” were site logos. There is now a dedicated endpoint that searches the image index itself.
New — POST /v1/images
Parameters: query, count (default 10),
and max_syndication (default 30) — a cap on how many pages an
image may appear on, which suppresses stock photography and site furniture. Lower it when you
want something distinctive.
Each result carries url, width,
height, caption, title,
page_url, page_title,
domain, is_hero and
seen_on_pages.
Billing is identical to search: one credit per block of ten, and you are charged for the blocks actually returned, not the blocks requested.
Also available as the search_images tool on the MCP server, and as
client.images() in the Python SDK from 0.6.0.
New — caption
title is the image’s raw alt attribute, and it is unusable on
roughly a quarter of indexed images — empty, or filename‑derived like
pn/fa b b dd deb. caption falls back to the
page title in those cases. Use caption for anything a person
reads; title is unchanged, so existing code is unaffected.
Changed — total on image responses
The index stops counting at 10,000. Responses now carry
total_is_lower_bound so you can tell an exact count from a floor,
rather than seeing 10000 and believing it.
Quality
Measured across twelve queries, eight results each, scored by image/text similarity:
- Relevant results: 63% → 90%
- Dead image URLs: 11% → 1% — domains that refuse third‑party image requests are now excluded
- Duplicate URLs in a page of results: 9 → 0
- Responses short of the requested count: 3% → 0%
Framework integrations
langchain-blopus 0.4.0 adds a BlopusImages
tool; llama-index-tools-blopus 0.4.0 adds
blopus_images to the tool spec. Both require
blopus>=0.6.0.
Python SDK 0.6.0
client.images() on both the sync and async clients, returning
ImageSearchResponse / ImageResult.