search
Pack: clevelandart · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search for the schema, then POST the same URL with its arguments for the data.
Search artworks. Optional filters: type, artist, has_image, cc0.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | no | Free-text search across title/description/artist. |
type | string | no | e.g. “Painting”, “Sculpture”, “Drawing” |
artist | string | no | |
has_image | boolean | no | Restrict to artworks with a web image. |
cc0 | boolean | no | Restrict to CC0-licensed images. |
limit | number | no | 1-1000 (default 25) |
skip | number | no | Offset (default 0) |
Example call
Arguments
{
"query": "portrait",
"type": "Painting",
"has_image": true,
"limit": 25
}
curl
curl -X POST https://gateway.pipeworx.io/clevelandart/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search","arguments":{"query":"portrait","type":"Painting","has_image":true,"limit":25}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search', {
"query": "portrait",
"type": "Painting",
"has_image": true,
"limit": 25
});
More examples
{
"query": "impressionist landscape",
"artist": "Monet",
"cc0": true,
"limit": 50
}
Response shape
Full JSON Schema
{
"type": "object",
"description": "Search results for artworks from Cleveland Museum of Art"
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the clevelandart pack
{
"mcpServers": {
"clevelandart": {
"url": "https://gateway.pipeworx.io/clevelandart/mcp"
}
}
}
See Getting Started for client-specific install steps.