Unsplash · Capability
Unsplash API — Search
Unsplash API — Search. 3 operations. Lead operation: Search Collections. Self-contained Naftiko capability covering one Unsplash business surface.
What You Can Do
GET
Searchcollections
— Search Collections
/v1/search/collections
GET
Searchphotos
— Search Photos
/v1/search/photos
GET
Searchusers
— Search Users
/v1/search/users
MCP Tools
search-collections
Search Collections
read-only
idempotent
search-photos
Search Photos
read-only
idempotent
search-users
Search Users
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Unsplash API — Search
description: 'Unsplash API — Search. 3 operations. Lead operation: Search Collections. Self-contained Naftiko capability
covering one Unsplash business surface.'
tags:
- Unsplash
- Search
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
UNSPLASH_API_KEY: UNSPLASH_API_KEY
capability:
consumes:
- type: http
namespace: unsplash-search
baseUri: https://api.unsplash.com
description: Unsplash API — Search business capability. Self-contained, no shared references.
resources:
- name: search-collections
path: /search/collections
operations:
- name: searchcollections
method: GET
description: Search Collections
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: query
in: query
type: string
description: Search query
required: true
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Results per page
- name: search-photos
path: /search/photos
operations:
- name: searchphotos
method: GET
description: Search Photos
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: query
in: query
type: string
description: Search query string
required: true
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Results per page
- name: order_by
in: query
type: string
description: How to order results
- name: collections
in: query
type: string
description: Comma-separated collection IDs to search within
- name: content_filter
in: query
type: string
description: Content safety filter level
- name: color
in: query
type: string
description: Filter by dominant color
- name: orientation
in: query
type: string
description: Filter by orientation
- name: lang
in: query
type: string
description: Language code for multi-language search (beta)
- name: search-users
path: /search/users
operations:
- name: searchusers
method: GET
description: Search Users
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: query
in: query
type: string
description: Search query
required: true
- name: page
in: query
type: integer
description: Page number
- name: per_page
in: query
type: integer
description: Results per page
authentication:
type: bearer
token: '{{env.UNSPLASH_API_KEY}}'
exposes:
- type: rest
namespace: unsplash-search-rest
port: 8080
description: REST adapter for Unsplash API — Search. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/search/collections
name: search-collections
description: REST surface for search-collections.
operations:
- method: GET
name: searchcollections
description: Search Collections
call: unsplash-search.searchcollections
with:
query: rest.query
page: rest.page
per_page: rest.per_page
outputParameters:
- type: object
mapping: $.
- path: /v1/search/photos
name: search-photos
description: REST surface for search-photos.
operations:
- method: GET
name: searchphotos
description: Search Photos
call: unsplash-search.searchphotos
with:
query: rest.query
page: rest.page
per_page: rest.per_page
order_by: rest.order_by
collections: rest.collections
content_filter: rest.content_filter
color: rest.color
orientation: rest.orientation
lang: rest.lang
outputParameters:
- type: object
mapping: $.
- path: /v1/search/users
name: search-users
description: REST surface for search-users.
operations:
- method: GET
name: searchusers
description: Search Users
call: unsplash-search.searchusers
with:
query: rest.query
page: rest.page
per_page: rest.per_page
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: unsplash-search-mcp
port: 9090
transport: http
description: MCP adapter for Unsplash API — Search. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: search-collections
description: Search Collections
hints:
readOnly: true
destructive: false
idempotent: true
call: unsplash-search.searchcollections
with:
query: tools.query
page: tools.page
per_page: tools.per_page
outputParameters:
- type: object
mapping: $.
- name: search-photos
description: Search Photos
hints:
readOnly: true
destructive: false
idempotent: true
call: unsplash-search.searchphotos
with:
query: tools.query
page: tools.page
per_page: tools.per_page
order_by: tools.order_by
collections: tools.collections
content_filter: tools.content_filter
color: tools.color
orientation: tools.orientation
lang: tools.lang
outputParameters:
- type: object
mapping: $.
- name: search-users
description: Search Users
hints:
readOnly: true
destructive: false
idempotent: true
call: unsplash-search.searchusers
with:
query: tools.query
page: tools.page
per_page: tools.per_page
outputParameters:
- type: object
mapping: $.