Rijksmuseum · Capability
Rijksmuseum Usersets API — User Generated Content
Usersets — User Generated Content. 2 operations. Lead operation: List Rijksstudio User Sets. Self-contained Naftiko capability covering one Rijksmuseum business surface.
What You Can Do
GET
Listusersets
— List Rijksstudio User Sets.
/v1/cultures/{culture}/usersets
GET
Getuserset
— Get Rijksstudio User Set Details.
/v1/cultures/{culture}/usersets/{set-id}
MCP Tools
list-user-sets
List Rijksstudio User Sets.
read-only
idempotent
get-user-set
Get Rijksstudio User Set Details.
read-only
idempotent
Capability Spec
naftiko: "1.0.0-alpha2"
info:
label: "Rijksmuseum Usersets API — User Generated Content"
description: >-
Usersets — User Generated Content. 2 operations. Lead operation: List
Rijksstudio User Sets. Self-contained Naftiko capability covering one
Rijksmuseum business surface.
tags:
- Rijksmuseum
- User Generated Content
- Rijksstudio
created: "2026-05-29"
modified: "2026-05-29"
binds:
- namespace: env
keys:
RIJKSMUSEUM_API_KEY: RIJKSMUSEUM_API_KEY
capability:
consumes:
- type: http
namespace: "user-sets-ugc"
baseUri: "https://www.rijksmuseum.nl/api"
description: "Rijksmuseum Usersets API — User Generated Content business capability. Self-contained, no shared references."
authentication:
type: apikey
key: key
value: "{{env.RIJKSMUSEUM_API_KEY}}"
placement: query
resources:
- name: "usersets"
path: "/{culture}/usersets"
operations:
- name: "listUserSets"
method: GET
description: "List paginated Rijksstudio user sets."
inputParameters:
- name: "culture"
in: path
type: string
required: true
description: "Locale: `nl` or `en`."
- name: "format"
in: query
type: string
required: false
description: "Response format."
- name: "page"
in: query
type: integer
required: false
description: "Result page (0-based). page * pageSize <= 10,000."
- name: "pageSize"
in: query
type: integer
required: false
description: "Results per page (1-100)."
outputRawFormat: json
outputParameters:
- name: result
type: object
value: "$."
- name: "userset"
path: "/{culture}/usersets/{setId}"
operations:
- name: "getUserSet"
method: GET
description: "Return a single Rijksstudio user set with its items."
inputParameters:
- name: "culture"
in: path
type: string
required: true
description: "Locale: `nl` or `en`."
- name: "setId"
in: path
type: string
required: true
description: "Composite set identifier `{userId}-{slug}`."
- name: "format"
in: query
type: string
required: false
description: "Response format."
- name: "page"
in: query
type: integer
required: false
description: "Result page (0-based) for the embedded setItems list."
- name: "pageSize"
in: query
type: integer
required: false
description: "Items per page."
outputRawFormat: json
outputParameters:
- name: result
type: object
value: "$."
exposes:
- type: rest
namespace: "user-sets-ugc-rest"
port: 8080
description: "REST adapter for Rijksmuseum Usersets API — User Generated Content."
resources:
- path: "/v1/cultures/{culture}/usersets"
name: "usersets"
description: "REST surface for Rijksstudio user sets."
operations:
- method: GET
name: "listUserSets"
description: "List Rijksstudio User Sets."
call: "user-sets-ugc.listUserSets"
with:
culture: "rest.culture"
format: "rest.format"
page: "rest.page"
pageSize: "rest.pageSize"
outputParameters:
- type: object
mapping: "$."
- path: "/v1/cultures/{culture}/usersets/{set-id}"
name: "userset"
description: "REST surface for a single Rijksstudio user set."
operations:
- method: GET
name: "getUserSet"
description: "Get Rijksstudio User Set Details."
call: "user-sets-ugc.getUserSet"
with:
culture: "rest.culture"
setId: "rest.set-id"
format: "rest.format"
page: "rest.page"
pageSize: "rest.pageSize"
outputParameters:
- type: object
mapping: "$."
- type: mcp
namespace: "user-sets-ugc-mcp"
port: 9090
transport: http
description: "MCP adapter for Rijksmuseum Usersets API — User Generated Content."
tools:
- name: "list-user-sets"
description: "List Rijksstudio User Sets."
hints:
readOnly: true
destructive: false
idempotent: true
call: "user-sets-ugc.listUserSets"
with:
culture: "tools.culture"
format: "tools.format"
page: "tools.page"
pageSize: "tools.pageSize"
outputParameters:
- type: object
mapping: "$."
- name: "get-user-set"
description: "Get Rijksstudio User Set Details."
hints:
readOnly: true
destructive: false
idempotent: true
call: "user-sets-ugc.getUserSet"
with:
culture: "tools.culture"
setId: "tools.setId"
format: "tools.format"
page: "tools.page"
pageSize: "tools.pageSize"
outputParameters:
- type: object
mapping: "$."