Art Institute Chicago
liveArtSearch artworks, get artwork and artist details, and browse exhibitions from the Art Institute of Chicago
Tools
search_artworksrequired: querySearch the Art Institute of Chicago collection by keyword. Returns a list of artworks with title, artist, date, medium, and image ID.
queryreqstringSearch query (e.g., "monet water lilies")limitoptnumberNumber of results to return (1-100, default 10)Try it
get_artworkrequired: idGet full details for a single artwork by its numeric ID. Returns title, artist, date, medium, dimensions, credit line, description, and image ID.
idreqnumberARTIC artwork ID (e.g., 27992)Try it
get_artistrequired: idGet an artist record by numeric ID. Returns name, birth/death dates, description, and a list of artwork IDs.
idreqnumberARTIC artist IDTry it
get_exhibitionsList current and recent exhibitions at the Art Institute of Chicago. Returns title, short description, and status for each exhibition.
limitoptnumberNumber of exhibitions to return (1-100, default 10)Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/artic/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/artic/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_artworks","arguments":{"query": "hello"}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_artworks", {"query":"example"});// Or ask in plain English:
const answer = await px.ask("search artworks, get artwork and artist details, and browse exhibitions from the art institute of chicago");