mcpField
O
octen-image-search

octen-image-search

github.com/octen-teamCreative & media1056 installsUpdated 4w ago
Repository

About octen-image-search

octen-image-search is a skill for finding web images from a text query or a reference image. It is intended for general image searches and returns image details such as thumbnails, source pages, dimensions, and descriptions; access is in invite-only beta.

Key features

  1. 01Search by text or reference image
  2. 02Return thumbnails and source pages
  3. 03Provide image dimensions and descriptions
  4. 04Filter results by domain
  5. 05Configure SafeSearch

Use cases

  1. 01Finding images for a subject using text
  2. 02Finding visually related images from a reference
  3. 03Restricting image results to selected domains

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/octen-team/octen-skills --skill octen-image-search

After installing, type/octen-image-searchin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

Octen Image Search

Find images on the web by a text query or a reference image (the API accepts exactly one input per request). Each result includes a thumbnail, the source page, dimensions, and a description.

In Beta. Contact us to request beta access. Octen Image Search is in invite-only beta — request access via https://octen.ai (or [email protected]). Calls will fail without access; if so, tell the user it's in beta and how to reach Octen.

Not for UI design refs. For reference screenshots + structured style tokens

  • HTML/CSS snippets to build/restyle a frontend, use the octen-design skill (it queries the same endpoint with topic=design). This skill is general image search.

API Key Setup

Before searching, ensure OCTEN_API_KEY is set. On 401, stop and tell the user a key is required (https://octen.ai). On 403, the key is valid but the request was refused — this means either no beta access or insufficient account balance; relay both possibilities and how to request beta access.

Configure the key for the relevant agent (same as other Octen skills):

  • Claude Code — add { "env": { "OCTEN_API_KEY": "your-key" } } to ~/.claude/settings.json
  • Cursor / generic shell — export OCTEN_API_KEY="your-key" in ~/.zshrc or ~/.bashrc
  • Codex — ~/.codex/config.toml → [shell_environment_policy], set = { OCTEN_API_KEY = "your-key" }
  • OpenClaw — add OCTEN_API_KEY=your-key to ~/.openclaw/.env

Endpoint

POST https://api.octen.ai/image-search

Authentication: X-Api-Key: <API_KEY> header · Content-Type: application/json

Quick Start (cURL)

By text
curl -s -X POST "https://api.octen.ai/image-search" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${OCTEN_API_KEY}" \
  -d '{
    "inputs": [{"type": "text", "data": "red sports car"}],
    "count": 5
  }'
By reference image (URL or base64)
curl -s -X POST "https://api.octen.ai/image-search" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: ${OCTEN_API_KEY}" \
  -d '{
    "inputs": [{"type": "image", "url": "https://example.com/car.jpg"}],
    "count": 5
  }'

inputs accepts exactly one entry per request — one text query OR one image, not both (a second input is rejected with 400). For a local image, send {"type": "image", "data": "<base64>"} (≤5MB after base64 encoding; JPEG/PNG/etc.).

Parameters

ParameterTypeRequiredDefaultDescription
inputsarrayYes-Exactly ONE input: {"type":"text","data":"<query≤500>"} or {"type":"image","url":"<url>"} or {"type":"image","data":"<base64>"}
topicstringNogeneralgeneral (web images) or design (UI design corpus — prefer the octen-design skill)
countintegerNo5Number of results (1–10)
include_domainsstring[]No-Only include images from these domains
exclude_domainsstring[]No-Exclude images from these domains
safesearchstringNostrictAdult content filter: off or strict
html_snippetobjectNo{"enable": false}{enable, max_tokens (def 5000, 100–100000)} — design-oriented HTML/CSS snippet (mainly useful with topic=design)

There are no time filters on this endpoint. time_range, start_time and end_time are silently dropped here — they return 200 with unfiltered results rather than an error, so a time-scoped image search fails quietly. Use them on octen-search and octen-video-search, which do honour them.

Response Format

FieldTypeDescription
request_idstringUnique request identifier
data.results[]arrayList of image results
data.results[].titlestringImage / page title
data.results[].urlstringFull-resolution image URL
data.results[].thumbnailstring?Thumbnail URL
data.results[].source_pagestring?Page the image was found on
data.results[].descriptionstring?Description / alt text
data.results[].widthinteger?Image width (px)
data.results[].heightinteger?Image height (px)
data.results[].summarystring?Structured style summary (mainly topic=design)
data.results[].html_snippetstring?HTML/CSS snippet (mainly topic=design)
data.results[].time_publishedstring?Publish time, ISO 8601
data.results[].time_last_crawledstring?Last crawl time, ISO 8601
meta.latencynumberResponse time in milliseconds
meta.warningstring?Warning message, if any

Error Codes

HTTP StatusDescription
400Missing or invalid parameter
401Invalid or missing API key
403Insufficient balance, or no beta access
413Input too large (image > 5MB base64-encoded)
429Rate limited
500Internal server error

Notes

  • count is capped at 10.
  • For UI design references, use the octen-design skill instead — it wraps this endpoint with topic=design, downloads the reference images, and writes the design summary / html_snippet for you.

Comments

Markdown supported