๐ผ๏ธ Unveiling Art's Secrets: A Model Context Protocol Server for the Rijksmuseum Collection
This document details a powerful Model Context Protocol (MCP) server designed to unlock the vast artistic treasures of the Rijksmuseum. By providing a seamless interface between Large Language Models (LLMs) and the museum's extensive collection, this server empowers AI applications to explore, analyze, and interact with art in unprecedented ways.

Core Capabilities: Bridging the Gap Between AI and Art
This MCP server offers a suite of specialized tools, each meticulously crafted to facilitate deep engagement with the Rijksmuseum's artworks:
1. Intelligent Artwork Discovery (search_artwork
)
Go beyond simple keyword searches. This tool allows for nuanced filtering based on a rich set of criteria:
- Semantic Search: Leverage natural language to find artworks based on themes, concepts, or descriptions.
- Metadata-Driven Filtering: Precisely target artworks by artist, type (painting, sculpture, etc.), materials, techniques, historical period, color palettes, and more.
- Combined Queries: Seamlessly blend semantic and metadata filters for highly specific searches (e.g., "Find Impressionist paintings with a dominant blue color").
2. In-Depth Artwork Analysis (get_artwork_details
)
Retrieve comprehensive information that goes far beyond basic descriptions:
- Core Metadata: Access essential details like title, artist, creation date, and dimensions.
- Physical Properties: Explore information about materials, techniques, conservation history, and current condition.
- Historical Context: Delve into the artwork's provenance, historical significance, and cultural influences.
- Visual Analysis: Obtain insights into composition, style, symbolism, and artistic techniques.
- Curatorial Insights: Access expert commentary, interpretations, and scholarly analyses from Rijksmuseum curators.
- Exhibition History: Trace the artwork's journey through various exhibitions and its impact on the art world.
3. High-Fidelity Image Access (get_artwork_image
)
Enable AI models to "see" art with unparalleled clarity:
- Deep Zoom Functionality: Explore artworks at microscopic levels, revealing brushstrokes, textures, and hidden details.
- Tile-Based Loading: Efficiently handle massive image datasets, ensuring smooth and responsive zooming.
- Full Resolution Support: Access the highest possible resolution images for detailed analysis and AI-powered restoration projects.
- Position Information: Precisely map image coordinates to physical locations on the artwork, facilitating detailed annotation and analysis.
4. Curated Collection Exploration (get_user_sets
& get_user_set_details
)
Uncover hidden connections and thematic groupings within the Rijksmuseum's collection:
- Browse User-Created Sets: Discover collections curated by art enthusiasts, scholars, and educators.
- Thematic Analysis: Identify recurring themes, motifs, and artistic styles across different collections.
- Pattern Recognition: Analyze the composition of collections to understand curatorial choices and artistic trends.
- Detailed Set Information: Access descriptions, annotations, and contextual information for each curated collection.
5. Direct Image Viewing (open_image_in_browser
)
Seamlessly integrate with web browsers for interactive exploration:
- One-Click Access: Open artwork images directly in a web browser for detailed viewing and sharing.
- Enhanced User Experience: Leverage browser-based tools for zooming, panning, and annotation.
6. Artist Timeline Generation (get_artist_timeline
)
Visualize the evolution of an artist's career:
- Chronological Ordering: Generate timelines of an artist's works, ordered by creation date.
- Artistic Development Tracking: Analyze the progression of an artist's style, techniques, and thematic interests.
- Period and Style Analysis: Identify distinct periods and stylistic shifts in an artist's oeuvre.
- Career Trajectory Visualization: Gain insights into the artist's professional journey and key milestones.
Real-World Applications: Empowering AI-Driven Art Exploration
This MCP server unlocks a wide range of exciting possibilities for AI-powered art applications:
Artwork Discovery
- "Show me all portraits painted by Rembrandt during his early career."
- "Find artworks that prominently feature symbolism related to Dutch maritime history."
- "What are the most iconic examples of Dutch Golden Age landscape painting in the collection?"
- "Search for still life paintings that incorporate elements of vanitas."
Artwork Analysis
- "Provide a detailed analysis of the composition and symbolism in The Night Watch."
- "What are the specific pigments and materials used in Van Gogh's Self-Portrait?"
- "Show me high-resolution details of the impasto technique in The Potato Eaters."
- "Compare the use of light and shadow in different versions of Vermeer's The Milkmaid."
Artist Research
- "Create a timeline of Rembrandt's etchings, highlighting his experimentation with different techniques."
- "How did Van Gogh's color palette evolve during his time in Arles?"
- "Show me all works by Frans Hals that depict members of the Haarlem civic guard."
- "What innovative techniques did Jan Steen employ to create his humorous and genre scenes?"
Thematic Exploration
- "Find all artworks depicting scenes from the Dutch East India Company's history."
- "Show me paintings of Amsterdam canals during the 17th century."
- "What artworks feature allegorical representations of the five senses?"
- "Find portraits that include musical instruments and analyze their symbolic significance."
Collection Analysis
- "Show me the most popular user-curated collections focusing on Dutch portraiture."
- "Find sets that explore the theme of religious symbolism in Dutch art."
- "What are the most recent acquisitions related to 18th-century Dutch decorative arts?"
- "Show me collections featuring works from multiple artists who were members of the Guild of Saint Luke."
Visual Details
- "Let me examine the intricate details of the lace collar in The Jewish Bride."
- "Show me a close-up of the pearl earring in Vermeer's famous painting, analyzing its luminosity and texture."
- "Can you display the highest resolution version of The Syndics, allowing me to study the individual expressions of each figure?"
- "I want to study the brushstrokes and color blending techniques used in the background of The Night Watch."
Implementation Guide: Connecting to the Rijksmuseum's Artistic Universe
This server can be deployed using two convenient methods:
1. Streamlined Installation via Claude Desktop and NPM
-
Configure Claude Desktop: Modify your Claude configuration file (~/Library/Application Support/Claude/claude_desktop_config.json
) to integrate the Rijksmuseum MCP server:
{
"mcpServers": {
"rijksmuseum-server": {
"command": "npx",
"args": [
"-y",
"mcp-server-rijksmuseum"
],
"env": {
"RIJKSMUSEUM_API_KEY": "your_api_key_here"
}
}
}
}
-
Obtain API Key: Retrieve your unique API key from the Rijksmuseum API Portal.
-
Replace Placeholder: Substitute "your_api_key_here"
with your actual Rijksmuseum API key in the configuration file.
2. Flexible Deployment from Source Code
-
Clone Repository: Obtain the server's source code by cloning the repository.
-
Install Dependencies: Navigate to the cloned directory and install the necessary dependencies using npm install
.
-
Configure Environment:
- Create a
.env
file by copying the example file: cp .env.example .env
.
- Add your Rijksmuseum API key to the
.env
file: RIJKSMUSEUM_API_KEY=your_api_key_here
.
-
Update Claude Configuration: Modify your Claude configuration file as follows:
{
"mcpServers": {
"rijksmuseum-server": {
"command": "node",
"args": [
"/path/to/rijksmuseum-server/build/index.js"
],
"env": {
"RIJKSMUSEUM_API_KEY": "your_api_key_here"
}
}
}
}
- Replace
/path/to/rijksmuseum-server
with the actual path to your local installation.
- Ensure your Rijksmuseum API key is correctly placed in the
env
section.
-
Restart Claude Desktop: After modifying the configuration, restart Claude Desktop to activate the changes.
Server Configuration: Tailoring the Server to Your Needs
The server's behavior can be customized through environment variables:
RIJKSMUSEUM_API_KEY
: (Required) Your unique API key from the Rijksmuseum.
PORT
: The port on which the server will listen for connections (default: 3000).
LOG_LEVEL
: The level of detail in the server's logs (default: 'info'). Options include 'debug', 'info', 'warn', 'error'.
API Reference: Diving Deeper into the Rijksmuseum API
For comprehensive details about the Rijksmuseum API endpoints used by this server, consult the official documentation: Rijksmuseum API Documentation.
Contributing: Shaping the Future of AI and Art
We encourage contributions from the community! Submit pull requests to address bugs, enhance functionality, or propose new features. Open issues to report problems or suggest improvements.