@pipeworx/rijksmuseum
Connect: https://gateway.pipeworx.io/rijksmuseum/mcp · Install: one-click buttons
No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.
Tools: 3
The Rijksmuseum’s ~800,000-object collection — Dutch Golden Age paintings, prints, drawings, photographs, Delftware and Asian art — from the museum’s open Data Services API, with IIIF images and mostly public-domain rights.
Tools
rijks_search(...)— search by title, creator, type, material, technique, object number or image availability; returns hydrated records, not bare ids.rijks_object(id | object_number)— one object in full, including the museum’s own curatorial description.rijks_object_image(id, width)— IIIF service, full-resolution dimensions, full/scaled/thumbnail JPEG URLs and the rights statement.
Auth
Keyless.
There are two Rijksmuseum APIs and only this one is open. The legacy
www.rijksmuseum.nl/api needs a key issued per Rijksstudio account;
data.rijksmuseum.nl (used here) needs no credential.
Data sources
- https://data.rijksmuseum.nl/search/collection — field-scoped search, returns identifiers only.
- https://data.rijksmuseum.nl/{id}?_profile=dc — Dublin Core record (~4 KB).
- https://data.rijksmuseum.nl/{id} — full Linked Art JSON-LD (~95 KB).
Notes the next person would otherwise rediscover:
- Search returns bare URIs. A page is 100
https://id.rijksmuseum.nl/<n>strings plus a total — no titles, no images.rijks_searchhydrates each returned hit with one extra fetch, which is whylimitis capped at 25. - Use
_profile=dc, not the default Linked Art. Linked Art buries the title three levels insideidentified_byand the image behind ashows→ VisualItem →digitally_shown_by→ DigitalObject chain (three more fetches). Dublin Core has all of it flat, including the IIIF URL inrelation, at ~1/20th the size. - Unknown query parameters are rejected by name (
{"detail":"Unsupported query parameter: q"}). There is no free-textq. Verified accepted:title,creator,type,material,technique,objectNumber,imageAvailable.subjectis NOT accepted, despitesubjectexisting as a field on the record. - Titles are catalogued in Dutch.
title=Nachtwachtfinds The Night Watch;title=Night Watchdoes not. objectNumberresolves exactly (SK-C-5→ 200107928), sorijks_objectaccepts a museum object number and resolves it through search.- Images are IIIF Image API 3, level 2, served from
iiif.micr.io— any region/size/rotation is requestable fromiiif_service.
Tools
- rijks_search — Search the Rijksmuseum’s ~800,000-object collection — Dutch Golden Age paintings, prints, drawings, photographs, Delftware, Asian art — by title, maker, object type, material, technique or object numb
- rijks_object — One Rijksmuseum object in full: title, maker, date, object type, materials, place, depicted subjects, the museum’s own curatorial description, object number, rights statement and image URL. Accepts th
- rijks_object_image — Image URLs for one Rijksmuseum object: the IIIF Image API 3 service, full-resolution pixel dimensions, a full-size JPEG, a scaled JPEG at a width you choose, a thumbnail, and the object’s rights state
Tools
rijks_object— One Rijksmuseum object in full: title, maker, date, object type, materials, place, depicted subjects, the museum's own curatorial description, object number, rights statement and image URL. Accepts thrijks_object_image— Image URLs for one Rijksmuseum object: the IIIF Image API 3 service, full-resolution pixel dimensions, a full-size JPEG, a scaled JPEG at a width you choose, a thumbnail, and the object's rights staterijks_search— Search the Rijksmuseum's ~800,000-object collection — Dutch Golden Age paintings, prints, drawings, photographs, Delftware, Asian art — by title, maker, object type, material, technique or object numb