AlexLin1234/chicago-art-museum-mcp-server
If you are the rightful owner of chicago-art-museum-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
An MCP server for the Art Institute of Chicago API provides a structured way to access and interact with the museum's extensive collection data.
Art Institute of Chicago MCP Server
A Model Context Protocol (MCP) server that provides access to the Art Institute of Chicago's public API. This server enables AI assistants like Claude to search and retrieve information about artworks, artists, exhibitions, galleries, and more from one of the world's premier art museums.
Features
- Artwork Search: Search the museum's extensive collection with full-text queries
- Artwork Details: Get comprehensive information about specific artworks including images, provenance, and exhibition history
- Artist Information: Search for and retrieve biographical information about artists and cultural agents
- Exhibition Data: Access current, past, and upcoming exhibition information
- Gallery Information: Browse museum galleries and their locations
- Universal Search: Search across all content types simultaneously
Available Tools
search_artworks
Search for artworks with support for pagination and field filtering.
{
"query": "Monet water lilies",
"limit": 10,
"page": 1,
"fields": "title,artist_display,image_id"
}
get_artwork
Get detailed information about a specific artwork by ID.
{
"artwork_id": 27992,
"fields": "title,artist_display,date_display,medium_display,dimensions,description,image_id"
}
search_agents
Search for artists, creators, and cultural agents.
{
"query": "Pablo Picasso",
"limit": 5
}
get_agent
Get detailed information about a specific artist or agent by ID.
{
"agent_id": 36198
}
search_exhibitions
Search for museum exhibitions.
{
"query": "impressionism",
"limit": 10
}
get_exhibition
Get detailed information about a specific exhibition by ID.
{
"exhibition_id": 9328
}
list_galleries
List museum galleries with location and status information.
{
"limit": 20,
"page": 1
}
get_gallery
Get information about a specific gallery by ID.
{
"gallery_id": 2147483649
}
search_all
Search across all content types (artworks, agents, exhibitions, etc.).
{
"query": "Renaissance",
"limit": 15
}
Installation
Prerequisites
- Python 3.10 or higher
- Claude Desktop or another MCP-compatible client
- pip (Python package manager)
Setup Steps
-
Clone the repository
git clone https://github.com/yourusername/chicago-art-museum-mcp-server.git cd chicago-art-museum-mcp-server -
Create a virtual environment (recommended)
python -m venv venv # On Windows: venv\Scripts\activate # On macOS/Linux: source venv/bin/activate -
Install dependencies
pip install -e . -
Test the installation
python server.pyThe server should start without errors. Press
Ctrl+Cto stop.
Configuration for Claude Desktop
Windows
-
Open or create the Claude Desktop configuration file:
%APPDATA%\Claude\claude_desktop_config.json -
Add the MCP server configuration:
{ "mcpServers": { "art-institute-chicago": { "command": "python", "args": [ "C:\\path\\to\\chicago-art-museum-mcp-server\\server.py" ] } } } -
Important: Replace
C:\\path\\to\\chicago-art-museum-mcp-serverwith the actual path to where you cloned the repository. Use double backslashes (\\) for Windows paths.
macOS
-
Open or create the Claude Desktop configuration file:
~/Library/Application Support/Claude/claude_desktop_config.json -
Add the MCP server configuration:
{ "mcpServers": { "art-institute-chicago": { "command": "python3", "args": [ "/path/to/chicago-art-museum-mcp-server/server.py" ] } } } -
Replace
/path/to/chicago-art-museum-mcp-serverwith the actual path to where you cloned the repository.
Using Virtual Environment (Recommended)
If you created a virtual environment, you should use the Python interpreter from within that environment:
Windows:
{
"mcpServers": {
"art-institute-chicago": {
"command": "C:\\path\\to\\chicago-art-museum-mcp-server\\venv\\Scripts\\python.exe",
"args": [
"C:\\path\\to\\chicago-art-museum-mcp-server\\server.py"
]
}
}
}
macOS/Linux:
{
"mcpServers": {
"art-institute-chicago": {
"command": "/path/to/chicago-art-museum-mcp-server/venv/bin/python",
"args": [
"/path/to/chicago-art-museum-mcp-server/server.py"
]
}
}
}
Restart Claude Desktop
After updating the configuration file, restart Claude Desktop for the changes to take effect.
Usage Examples
Once configured, you can interact with the Art Institute of Chicago API through Claude. Here are some example prompts:
Searching for Artworks
Search for artworks by Vincent van Gogh in the Art Institute of Chicago collection.
Getting Artwork Details
Get detailed information about artwork ID 27992 from the Art Institute of Chicago.
Exploring Exhibitions
What exhibitions at the Art Institute of Chicago feature impressionist art?
Finding Artist Information
Tell me about the artist Georgia O'Keeffe using the Art Institute of Chicago database.
Gallery Information
List the galleries at the Art Institute of Chicago and their locations.
API Information
This server uses the Art Institute of Chicago's public API. The API:
- Requires no authentication
- Has no rate limiting for reasonable use
- Provides access to over 117,000 artworks
- Includes high-resolution images via IIIF
- Updates regularly with new content
For more detailed API documentation, visit: https://api.artic.edu/docs/
Troubleshooting
Server doesn't start in Claude Desktop
- Verify the path to
server.pyis correct in your configuration - Check that Python is installed and accessible from the command line
- Ensure all dependencies are installed (
pip install -e .) - Look at the Claude Desktop logs for error messages
Import errors
Make sure you've installed the package:
pip install -e .
Connection errors
- Check your internet connection
- Verify that
api.artic.eduis accessible - The API requires HTTPS; ensure your firewall allows outbound HTTPS connections
No results returned
- Try broader search terms
- Check that the artwork/agent/exhibition ID is correct
- Some resources may have limited metadata
Development
Running Tests
Install development dependencies:
pip install -e ".[dev]"
Run tests:
pytest
Code Formatting
This project uses Black and Ruff for code formatting and linting:
# Format code
black .
# Lint code
ruff check .
Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
License
This project is licensed under the MIT License - see the file for details.
Acknowledgments
- Data provided by the Art Institute of Chicago via their public API
- Built using the Model Context Protocol
- Powered by the MCP Python SDK
Support
If you encounter any issues or have questions:
- Check the Troubleshooting section above
- Review the API documentation
- Open an issue in this repository
API Terms of Service
Please review the Art Institute of Chicago's Terms and Conditions when using this server. The data is provided for educational and personal use.