whitney-museum-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@whitney-museum-mcp-serversearch for artworks by Alexander Calder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
whitney-museum-mcp-server
An MCP server for the Whitney Museum's public API. Search the collection, artists, exhibitions, events and audio guides from Claude Desktop or any MCP client.
Not affiliated with the Whitney Museum of American Art. This is a third-party wrapper around their public API, documented at https://whitney.org/about/website/api.
You don't need an API key, as the Whitney's API is open and unauthenticated.
Install
npx whitney-museum-mcp-serverOr from source:
git clone https://github.com/mildlydiverting/whitney-museum-mcp-server.git
cd whitney-museum-mcp-server
npm install
npm run buildNode 20 or newer.
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"whitney": {
"command": "npx",
"args": ["-y", "whitney-museum-mcp-server"]
}
}
}From source, point at the build instead:
{
"mcpServers": {
"whitney": {
"command": "node",
"args": ["/absolute/path/to/whitney-museum-mcp-server/dist/index.js"]
}
}
}Quit and reopen Claude Desktop. The config doesn't expand ~, so use a full path.
Tools
Tool | What it does |
| Search 27,000+ works by title, artist, classification, medium, date, on-view status |
| Full record for one work — dimensions, credit line, description, image URLs |
| Search 7,000+ artists; filter by collection, Biennial, on view |
| Full artist record, including biography, Getty ULAN and Wikidata IDs |
| Works by a given artist |
| Exhibitions featuring a given artist |
| Exhibitions from 1931 onwards, with date filtering |
| One exhibition record |
| Talks, tours and programmes from 2008 onwards |
| Audio guides published since 2009 |
| Any endpoint, with raw Ransack predicates |
What to expect
Search returns slim records. Whitney records carry long HTML descriptions and biographies, so search gives you the basics and whitney_get_* gives you everything. Prose is truncated at 2,000 characters, whole responses at 25,000.
Pagination is 30 per page. That's the API's page size. page picks the page, limit trims it further — the default of 10 stops a broad search flooding your context.
Search syntax is Ransack. Predicates nest under q (_eq, _cont, _cont_all_split, _gteq and friends), sorting under q[s]. The typed tools map friendly arguments onto these. whitney_query exposes them raw, for anything the typed tools don't reach.
Artist and artwork fields are mapped explicitly. Exhibitions, events, guides and pages go through a generic summariser instead: HTML stripped, timestamps shortened to dates, relative URLs made absolute, internal foreign keys dropped. The Museum says its field set may change, so nothing is hard-coded that doesn't need to be. Run a search with limit: 1 to see the real field names, then use filters for anything specific.
Known quirks
These are the API's, not the wrapper's.
sort: "random"doesn't reliably randomise. Asking for three random works returned three consecutive accession numbers by the same artist. If you need genuine randomness, request a random page number instead.display_dateon artworks is free text — "1915–1931, printed 1976–1977" — so date ranges don't work there. Exhibitions and events have real timestamps, andstarts_on_or_after/starts_on_or_beforefilter on those.Living artists have
death_year: "0". Don't do arithmetic on it.Ransack ignores predicates it doesn't recognise rather than erroring, so a misspelled field silently returns everything. Check your result counts.
Bulk data
For anything at scale, don't page through the API. The Whitney publishes artist and artwork CSVs at https://github.com/whitneymuseum/open-access, released under CC0.
Fun things to do
Get your friendly robot to make connections between Whitney records and other museums using the Getty ULAN and Wikidata MCPs.
(I'm using all these to add links and richer info to my teaching / research notes.)
Licences
Code is released under MIT — see LICENSE.
The underlying data belongs to The Whitney. Material accessed through the API may be protected by copyright and other restrictions. The Whitney permits noncommercial educational and personal use, plus fair use, provided copyright notices are retained and the author and source cited. Read their terms at https://whitney.org/about/website/api before you build anything public on it.
Note the CSV datasets linked above are CC0, which is more permissive than the API terms. Same data, different door.
Thank you
To the Whitney's digital team for publishing an API at all, and for documenting it properly. You are most excellent darlings.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Art Institute of Chicago MCP — wraps the ARTIC public API (free, no auth)
Agentic search over your Dewey document collections from any MCP-compatible client.
Wikipedia MCP — wraps Wikipedia REST API (free, no auth)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mildlydiverting/whitney-mcp-ts'
If you have feedback or need assistance with the MCP directory API, please join our Discord server