open-museum-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
> One search across open-access museum collections worldwide, with strict per-museum rights verification and ready-to-use citations.
The Met, Rijksmuseum, the Smithsonian, Cleveland Museum of Art, the Art Institute of Chicago, SMK (National Gallery of Denmark), the Walters, Wellcome Collection, Wikimedia Commons, and Europeana — searched together, returned in one normalized shape, with the rights gate enforced per museum so you never receive a record whose open-access status is missing or ambiguous. The list keeps growing.
**See it in action first → pramod.ch/open-museum-mcp** — three worked examples (cross-tradition pairing, date-windowed scan, counterpoint discovery), real records, real citations, no install required.
Who this is for
- **Art-history students and researchers** who need cited references and rights-cleared images for papers, slides, and theses — across institutions, in one query.
- **Writers, educators, and journalists** who want reuse-safe artwork to pair with essays, lessons, or articles, with pre-formatted attributions.
- **MCP / agent builders** who want a small set of high-value tools (search_artworks, get_artwork, cite) with consistent schemas across sources, instead of installing one MCP per museum.
Why I built this
I kept wanting reuse-safe artwork for my writing, and every museum's rights model is different. So I built one MCP interface that only returns records that pass per-museum verification rules, with strict deny on ambiguity. It lets me search by artist, period, region, and other fields, and pulls the image and description back in one normalized shape.
If anyone else is exploring open-access art, I hope this helps. The plan is to keep adding museums from around the world.
How this is different from single-museum MCPs
There are excellent single-museum servers (metmuseum-mcp, rijksmuseum-mcp, smithsonian-mcp). This one is the **multi-museum entry point**: install once, query across all sources at the same time, get a single normalized schema across them, with a license gate you can audit per museum in src/licenseGate.ts. If you only ever need one collection, install that museum's MCP. If you want comparisons across institutions, citations across periods, or rights-verified breadth — install this.
What you get
- **Many museums, one query.** The Met, Rijksmuseum (direct), the Smithsonian, Cleveland, the Art Institute of Chicago, SMK (National Gallery of Denmark), the Walters, Wellcome Collection, the National Gallery of Art (Washington), Harvard Art Museums, the J. Paul Getty Museum, Wikimedia Commons, and Europeana are live — keyless where the museum allows it, opt-in via a free API key where required — and the list keeps growing.
- **Strict deny on ambiguity.** Records are validated against per-museum rights rules in code. Missing or unclear indicators drop the record; nothing is defaulted to "open".
- **Catalog-grade metadata.** A dynasty-aware date parser handles Tang, Edo, Safavid, Mughal and the rest. Regions normalize across museums. Attribution separates named artists from anonymous, workshop, "after", and attributed works. Date-range filter on search_artworks for queries like *Dutch genre painting 1640–1680*.
- **Citation-ready output.** Three citation styles (full, caption, short) generated deterministically from the same record — paste straight into a paper, a slide caption, or an inline reference.
- **Listable resources.** museum://{code}/{id} resources let you bookmark interesting IDs across a session.
Quick example
A search call returns license-verified results in one normalized shape:
Install
> **Want to see it work before installing?** pramod.ch/open-museum-mcp walks through the three core workflows with real records and citations.
One-click
For supported clients, no JSON, no Node, no npm — pick your client:
- **Claude Desktop:** Download open-museum-mcp.mcpb from the latest release and double-click it. Claude Desktop opens the bundle and installs the server in one step.
- **VS Code:** Install in VS Code — opens VS Code with the install dialog prefilled (requires the GitHub Copilot Chat extension).
- **Cursor:** Install in Cursor — same idea, Cursor-flavoured (MCP support is built in).
JSON config (any MCP client)
For ChatGPT with MCP, Cline, Goose, Continue, Zed, or anything else: paste this into your client's MCP config and restart. npx fetches and runs the server on first launch.
From source (for contributors)