artic-mcp
The artic-mcp server provides AI models with tools to interact with the Art Institute of Chicago's art collection through natural language queries. It offers the following capabilities:
Search By Title: Search for artworks by their title, with pagination support.
Get Artwork By ID: Retrieve detailed information and images of a specific artwork.
Full Text Search: Search artworks whose metadata contains specific terms.
Search For Artist: Search for artists in the collection.
Get Artwork By Artist: Find artworks by a specific artist using their ID.
Art Gallery Prompt: Generate an interactive HTML art gallery for a specific artist (requires Claude Desktop app).
This server enhances AI-driven exploration of the Art Institute of Chicago's collection.
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., "@artic-mcpshow me paintings by Edward Hopper"
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.
Art Institute of Chicago MCP Server
A Model Context Protocol (MCP) server that provides access to the Art Institute of Chicago Collection through natural language interactions. This server allows AI models to search the art collection at the Art Institute of Chicago and have artworks available as a Resource.
Features
This server provides AI models with the following tools for interacting with the art collection. The server also includes a prompt, art-gallery that will generate an interactive art gallery for a specific artist.
1. Search By Title (search-by-title)
Search for artworks by title in the Art Institute of Chicago
Inputs:
title(string) The title of the artwork to search for.limit(number, optional, default 10) The number of resources to return per page.page(number, optional, default 1) The page of results to return. Used for pagination.
Outputs:
Title: Nighthawks Artwork ID: 111628 Thumbnail alt text: Scene in a diner, viewed through wrap-around glass windows, at night on an empty urban street. A light-skinned man and woman, he in a suit and she in a red dress, sit together at a triangular wood bar, eyes downcast. At left sits another man, his back to the viewer. Behind the counter is a light-skinned man in a white uniform. The interior lights cast a yellow glow that spills onto the street in pale green. Above the diner a sign reads, "Phillies." Score: 1055.3839 ----- Title: Nighthawks Artwork ID: 118165 Thumbnail alt text: A work made of chromogenic print. Score: 57.28689 Pagination Info Total: 2 Total Pages: 1 Current Page: 1
2. Get a specific artwork (get-artwork-by-id)
Gets additional information, including the image if available, for a piece of art based on it's id.
Inputs:
id(number) The ID of the artwork to retrieve.includeImage(boolean, optional, default true) Whether to include the artwork image in the response.
Outputs:
Title: Nighthawks Artist: Edward Hopper (American, 1882–1967) Artist ID: 34996 Description: <p>About <em>Nighthawks</em> Edward Hopper recollected, “unconsciously, probably, I was painting the loneliness of a large city.” In an all-night diner, three customers sit at the counter opposite a server, each appear to be lost in thought and disengaged from one another. The composition is tightly organized and spare in details: there is no entrance to the establishment, no debris on the streets. Through harmonious geometric forms and the glow of the diner’s electric lighting, Hopper created a serene, beautiful, yet enigmatic scene. Although inspired by a restaurant Hopper had seen on Greenwich Avenue in New York, the painting is not a realistic transcription of an actual place. As viewers, we are left to wonder about the figures, their relationships, and this imagined world.</p> Image ID: 831a05de-d3f6-f4fa-a460-23008dd58dda Place of Origin: United States Dimensions: 84.1 × 152.4 cm (33 1/8 × 60 in.) Medium: Oil on canvas Credit Line: Friends of American Art Collection Department: Arts of the Americas Is On View: Yes Main Reference Number: 1942.51 Has not been viewed much: No Date Start: 1942 Date End: 1942 Date: 1942 Fiscal Year: 1942 Is Public Domain: No Gallery: Gallery 262 Artwork Type: Painting Artist Title: Edward Hopper Artist Titles: Edward Hopper Style Title: Modernism**image encoded in base64 if available and includeImage is true
3. Full text search (full-text-search)
Performs a full text search of artworks whose metadata contains the search query.
Inputs:
query(string) The term to search the metadata for.limit(number, optional, default 10) The number of resources to return per page.page(number, optional, default 1) The page of results to return. Used for pagination.
Outputs:
Title: Untitled Artwork ID: 62290 Thumbnail alt text: A work made of oil and enamel on paper, mounted on composition board. Score: 108.70728 ----- ... ... ----- Title: Homage to the Square: Light Passage Artwork ID: 5569 Thumbnail alt text: Painting of overlapping squares in grey, yellow, gold, and orange. Score: 104.18398 Pagination Info Total: 8399 Total Pages: 840 Current Page: 1
4. Artist search (search-for-artist)
Search for a specific artist
Inputs:
name(string) The name of the artist to search for.limit(number, optional, default 10) The number of resources to return per page.page(number, optional, default 1) The page of results to return. Used for pagination.
Outputs:
Title: Vincent van Gogh Artist ID: 40610 Score: 55.865852 ----- Title: Imitator of Vincent van Gogh Artist ID: 47301 Score: 48.782307 Pagination Info Total: 2 Total Pages: 1 Current Page: 1
5. Find artwork by artist (get-artwork-by-artist)
Find works of art by an artist
Inputs:
id(number) The id of the artist to search for artworks. Should be the Artist ID of thesearch-for-artisttool.limit(number, optional, default 10) The number of resources to return per page.page(number, optional, default 1) The page of results to return. Used for pagination.
Outputs:
Title: The Bedroom Artwork ID: 28560 Thumbnail alt text: Painting of bedroom, blue walls, green window, tan bed, red bedding. Score: 11473.843 ----- . . . ----- Title: Weeping Tree Artwork ID: 52733 Thumbnail alt text: A work made of reed pen and black-brown ink, with black chalk on off-white wove paper. Score: 11.8061 Pagination Info Total: 18 Total Pages: 2 Current Page: 1
6. Find artwork by medium (search-by-medium)
Search for artworks by medium in the Art Institute of Chicago
Inputs
medium(string) The medium to search for (e.g., "oil on canvas", "acrylic on panel", "watercolor on paper").limit(number, optional, default 10) The number of resources to return per page.page(number, optional, default 1) The page of results to return. Used for pagination.
Outputs:
Title: The Bedroom Artwork ID: 28560 Thumbnail alt text: Painting of bedroom, blue walls, green window, tan bed, red bedding. Score: 56644.137 ----- Title: Starry Night and the Astronauts Artwork ID: 129884 Thumbnail alt text: Abstract painting composed of small vertical dabs of multiple shades of blue with a small area of similar strokes of red, orange, and yellow in the upper right. Score: 44797.906 -----
7. Art Gallery Prompt (art-gallery)
In the Claude Desktop app, use this prompt—along with your chosen artist’s name—to generate an interactive HTML art gallery showcasing their work.
Images are not displayed in the Claude Desktop app due to security reasons. You can download the HTML from Claude Desktop and view the images in the browser.
Claude Desktop Example
The Generated Gallery in a browser
Related MCP server: Museum MCP Server
Usage
Usage with Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcp-servers": {
"artic-museum": {
"command": "npx",
"args": [
"-y",
"artic-mcp"
]
}
}
}Installing via Smithery
To install artic-mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @mikechao/artic-mcp --client claudeExample queries
Here some questions you can ask the AI model when this server in connected:
Can you show me the painting titled "Nighthawks"?
Can you find art done by Vincent van Gogh in 1890 that is on display?
Can you find art by the artist Jackson Pollock?Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Disclaimer
This MCP Server is not officially associated with The Art Institute of Chicago. It is a third-party implementation of the The Art Institute of Chicago's API with a MCP Server.
Available Tools
6 toolsfull-text-searchA
Search for artworks in the Art Institute of Chicago collection whose metadata contains mention of the query term.Pagination is supported with the page parameter
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The term to search the metadata for. | |
| limit | No | The number of resources to return per page. | |
| page | No | The page of results to return. Used for pagination. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses pagination behavior ('Pagination is supported with the page parameter'), which is valuable. However, it doesn't mention rate limits, authentication requirements, error conditions, or what the search results look like (format, fields returned).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste - the first states the core purpose and scope, the second adds crucial behavioral information about pagination. The description is appropriately sized and front-loaded with the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with 3 parameters and no output schema, the description provides adequate basic information about purpose and pagination. However, without annotations or output schema, it should ideally mention more about the search behavior (case sensitivity, partial matching), result format, or limitations. The description is minimally complete but could be more comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents all three parameters. The description adds minimal value beyond the schema - it mentions the 'page' parameter for pagination but doesn't provide additional context about query syntax, search behavior, or result ordering that isn't already in the parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Search for artworks') and resource ('Art Institute of Chicago collection'), with precise scope ('metadata contains mention of the query term'). It distinguishes from siblings like 'search-by-title' or 'search-by-medium' by specifying full-text metadata search rather than field-specific searches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for searching metadata with query terms, but doesn't explicitly state when to use this tool versus alternatives like 'search-by-title' or 'search-by-medium'. No guidance is provided about when NOT to use this tool or about prerequisites for effective searching.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-artwork-by-artistC
Get artworks by artist id in the Art Institute of Chicago collection. Pagination is supported with the page parameter.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The id of the artist to search for artworks. Should be the Artist ID of the `search-for-artist` tool. | |
| limit | No | The number of resources to return per page. | |
| page | No | The page of results to return. Used for pagination. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions pagination support, which is useful context, but doesn't describe other important behaviors like whether this is a read-only operation (implied by 'Get'), error handling, rate limits, authentication needs, or what the response format looks like. For a tool with no annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with two sentences. The first sentence states the core purpose, and the second adds important behavioral context about pagination. No wasted words, though it could be slightly more structured with clearer separation of purpose versus guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose and pagination behavior, but doesn't address response format, error cases, or differentiation from sibling tools. With no output schema, the description should ideally provide more information about what gets returned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds minimal value beyond the schema: it mentions pagination with the page parameter (already in schema) and implies the artist id comes from 'search-for-artist' (hinted in schema description). No additional syntax, format, or usage details are provided beyond what's in the structured fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get artworks by artist id in the Art Institute of Chicago collection.' It specifies the verb ('Get'), resource ('artworks'), and scope ('Art Institute of Chicago collection'), but doesn't explicitly differentiate it from sibling tools like 'get-artwork-by-id' or 'search-for-artist' beyond the artist focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal usage guidance. It mentions pagination support with the page parameter, but doesn't specify when to use this tool versus alternatives like 'search-for-artist' or 'full-text-search'. No exclusions, prerequisites, or context for tool selection are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-artwork-by-idB
Get additional information, including an image if available, about a specific artwork by its ID from the Art Institute of Chicago. Using the value of Artwork ID from the 'search-by-title' tool.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The ID of the artwork to retrieve. | |
| includeImage | No | Whether to include the artwork image in the response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions retrieving 'additional information' and an image 'if available', which hints at data retrieval but doesn't cover aspects like rate limits, authentication needs, error handling, or response format. For a read operation tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose and includes a practical note about the ID source. It avoids unnecessary details, though it could be slightly more structured by separating the workflow hint into a second sentence for better clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (simple read operation with 2 parameters), 100% schema coverage, and no output schema, the description is adequate but incomplete. It covers the basic purpose and parameter context but lacks details on behavioral traits like response format or error handling, which are important for a tool with no annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters ('id' and 'includeImage') fully. The description adds minimal value by referencing the ID from 'search-by-title' tool, but it doesn't provide additional syntax, format details, or usage examples beyond what the schema specifies. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get additional information, including an image if available') and resource ('about a specific artwork by its ID from the Art Institute of Chicago'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'get-artwork-by-artist' or 'search-by-title' beyond mentioning the ID parameter, which slightly reduces clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by referencing the 'search-by-title' tool for obtaining the ID, suggesting a workflow, but it doesn't explicitly state when to use this tool versus alternatives like 'get-artwork-by-artist' or 'search-by-medium'. It provides some context but lacks clear exclusions or direct comparisons to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-by-mediumB
Search for artworks by medium in the Art Institute of Chicago. Pagination is supported with the page parameter
| Name | Required | Description | Default |
|---|---|---|---|
| medium | Yes | The medium to search for (e.g., "oil on canvas", "acrylic on panel", "watercolor on paper"). | |
| limit | No | The number of resources to return per page. | |
| page | No | The page of results to return. Used for pagination. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions pagination support, which is useful context beyond basic functionality, but doesn't cover other important aspects like rate limits, authentication needs, error handling, or what the response format looks like. The description doesn't contradict any annotations (since there are none), but it's incomplete for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with two sentences that directly state the tool's purpose and a key feature (pagination). There's no wasted text, and it's front-loaded with the main functionality. It could be slightly improved by integrating the pagination note more seamlessly, but it's efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search with pagination), no annotations, and no output schema, the description is minimally adequate. It covers the basic purpose and pagination but lacks details on response format, error cases, or how results are structured. Without annotations or output schema, more behavioral context would be helpful for the agent to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents all three parameters (medium, limit, page). The description adds no additional meaning about parameters beyond what's in the schema—it mentions the 'page' parameter for pagination, but the schema already describes this. Baseline 3 is appropriate when the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('search') and resource ('artworks by medium in the Art Institute of Chicago'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'search-by-title' or 'full-text-search', which would require mentioning that this tool focuses specifically on medium-based filtering rather than other search criteria.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'search-by-title' or 'full-text-search'. It mentions pagination support, which is a technical feature, but doesn't help the agent decide between this and other search tools based on use case or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-by-titleB
Search for artworks by title in the Art Institute of Chicago. Pagination is supported with the page parameter
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | The title of the artwork to search for. | |
| limit | No | The number of resources to return per page. | |
| page | No | The page of results to return. Used for pagination. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses pagination behavior ('Pagination is supported with the page parameter'), which is useful context beyond the schema. However, it doesn't cover other behavioral traits like rate limits, authentication needs, error handling, or what the search returns (e.g., partial matches, case sensitivity). The description doesn't contradict annotations since there are none.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, and the second adds key behavioral context (pagination). Both sentences earn their place with no wasted words, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search with pagination), no annotations, and no output schema, the description is somewhat complete but has gaps. It covers the basic purpose and pagination, but lacks details on search behavior (e.g., fuzzy matching), result format, or error cases. For a search tool with 3 parameters, it's adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (title, limit, page) with descriptions and defaults. The description adds minimal value beyond this: it mentions pagination with the page parameter, which is already in the schema. No additional semantics or usage examples are provided, so it meets the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search for artworks by title in the Art Institute of Chicago.' It specifies the verb ('search'), resource ('artworks'), and scope ('by title'), distinguishing it from siblings like search-by-medium or get-artwork-by-artist. However, it doesn't explicitly differentiate from full-text-search, which might also search titles, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like full-text-search or search-by-medium. It mentions pagination support but doesn't clarify if this is the preferred tool for title searches over other search methods. No exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-for-artistC
Search for artists in the Art Institute of Chicago collection
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The name of the artist to search for. | |
| limit | No | The number of resources to return per page. | |
| page | No | The page of results to return. Used for pagination. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the search function but doesn't mention whether it's read-only, if there are rate limits, authentication needs, or what the return format looks like (e.g., paginated results). This leaves significant gaps for a tool with three parameters and no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and wastes no space, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is insufficiently complete. It doesn't explain what the search returns (e.g., artist details, IDs), how results are structured, or any behavioral traits like pagination handling, which are critical for a search tool with three parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with clear descriptions for 'name', 'limit', and 'page' parameters. The description doesn't add any additional semantic context beyond what the schema provides, such as search behavior or result formatting, but the schema adequately covers the basics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search for artists') and the resource domain ('Art Institute of Chicago collection'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'full-text-search' or 'search-by-title', which might also involve searching the same collection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get-artwork-by-artist' or 'search-by-title'. It lacks any mention of prerequisites, exclusions, or comparative context with sibling tools, leaving the agent to infer usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have distinct purposes: full-text-search covers general metadata, while search-by-title, search-by-medium, and search-for-artist target specific fields. However, full-text-search and search-by-title could be confused since titles are part of metadata, but descriptions clarify the distinction. Get-artwork-by-artist and get-artwork-by-id are clearly different operations.
The naming is mixed: search-by-title, search-by-medium, and search-for-artist follow a consistent verb-noun pattern, but full-text-search uses a hyphenated adjective-noun style, and get-artwork-by-artist/get-artwork-by-id use a verb-noun-by-noun pattern. This inconsistency makes the set less predictable, though all names remain readable and descriptive.
With 6 tools, this is well-scoped for querying an art collection. It covers key search dimensions (title, medium, artist, full-text) and specific retrieval (by ID, by artist), without being overwhelming. Each tool earns its place by addressing a distinct aspect of the domain.
The toolset provides strong coverage for searching and retrieving artworks and artists, with pagination support across most tools. A minor gap is the lack of tools for filtering by other common attributes like date, genre, or location, but agents can work around this using the existing search tools. Core workflows for exploration and lookup are well-supported.
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)
MCP server for searching Airweave collections with natural language queries.
AI-native art catalogue. Catalogue works, parse provenance, and generate signed RAIs.
The HubSpot MCP Server acts as a bridge that enables AI assistants and Large Language Models to securely interact with HubSpot CRM data through natural conversation, without requiring users to understand complex API structures. It provides read-only access to standard CRM objects (contacts, companies, deals, tickets, products, invoices, and more) and their associations, secured via OAuth 2.0, allowing AI agents to perform tasks like summarizing deals, fetching company updates, and looking up record changes.
Related MCP Servers
- AlicenseAqualityCmaintenanceA MCP Server that lets user ask AI models to discover the collection of the Metropolitan Museum of Art. Adds the discovered art works as Resources on the server.42,26433MIT
- AlicenseBqualityDmaintenanceEnables AI agents to search and explore over 570,000 artworks from the Metropolitan Museum of Art and Art Institute of Chicago without needing an API key.9MIT
- FlicenseNot gradedqualityDmaintenanceMCP server that lets AI assistants manage an art catalogue — find paintings, post to social media, upload to galleries, schedule posts, and update metadata.
- FlicenseAqualityCmaintenanceThis server enables AI models to access the Städel Museum's digital collection via OAI-PMH, allowing harvesting of records, retrieval of multilingual metadata, and fetching of high-resolution images.42
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/mikechao/artic-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server