WahooArt Art Search & Quotation
MCP server by WahooArt
Search a catalog of artworks, artists and museums and get prices for hand-painted oil reproductions and prints.
Connect to WahooArt Art Search & Quotation
No sign-in needed. Connect with WahooArt Art Search & Quotation’s own URL:
Paste it into any client that supports remote MCP servers. Your client talks to WahooArt directly, not through mcp.tc.
Share this server
Opens this page, with the URL and setup steps.
mcp.tc/i/wahooart-art-search-quotationAbout
Connects to the WahooArt catalog of about 645,000 artworks, 52,000 artists and 5,400 museums. You can run full-text and semantic searches, read details for artworks, artists, museums and articles, check whether an artwork is for sale now, and get price quotations for prints or hand-painted oil reproductions, including custom reproductions from your own image.
It runs as a hosted streamable HTTP endpoint at https://direct.wahooart.com/mcp/. No account, API key or sign-in is needed. The server cannot place orders or take payments; it returns links to complete a purchase on the website.
What you can do
- Search artworks, artists, museums and articles by text
- Find passages and objects by meaning with semantic search
- Read full details and related page links for one object
- Get print or oil reproduction quotations by size, currency and frame
- Quote custom reproductions from a customer's own image
- Check stock, auction, original and collectible availability
Tools 15
search_artworksRead-onlyFull-text search of artworks by title, artist name and description.
search_museumsRead-onlySearch museums by name, optionally by city and country.
search_artistsRead-onlySearch artists by name and biography, with place and alive-in-year filters.
search_articlesRead-onlyFull-text search of website articles, optionally by category.
search_sections_semanticallyRead-onlySemantic search returning whole passages from articles, museums, artists and artworks.
search_objects_semanticallyRead-onlyFind artworks, artists, museums or articles closest in meaning to a text.
search_ftsRead-onlyFull-text search across all four models at once, up to 10 results each.
get_detail_artworkRead-onlyFull data and useful page links for one artwork by pk.
get_detail_artistRead-onlyFull data and biography for one artist by pk.
get_detail_museumRead-onlyFull data and links for one museum by pk.
get_detail_articleRead-onlyFull content and links for one article by pk.
get_quotationRead-onlyGet a reproduction price quotation
Show 3 more tools
get_custom_reproduction_quotationRead-onlyGet a custom reproduction price quotation (no catalog artwork needed)
get_artwork_availabilityRead-onlyShow stock, auction, original and collectible availability and prices for an artwork.
find_artwork_in_catalogRead-onlyIs this artwork in the catalog? (title from memory, artist, description)
Read from the live server on 12 Nov 2026. Read-only, Writes and Can delete are hints the server declares; your client decides whether to ask before running a tool.
Example prompts
Find paintings by Claude Monet with water lilies
How much is a 60x90 cm hand-painted oil reproduction of Starry Night in USD?
Which museums in Florence hold Renaissance works?
Is this artwork available in stock right now, and at what price?
Set up
Every client connects to direct.wahooart.com. Pick yours; the page remembers your choice.
Claude Code
- Run this in a terminal, in your project folder:
claude mcp add --transport http wahooart-art-search-quotation https://direct.wahooart.com/mcp/- Start Claude Code and type
/mcp. wahooart-art-search-quotation should show as connected.
Add --scope user to make it available in every project, not just this one.
Claude Desktop
- Open Customize → Connectors, click + Add, then Add custom connector.
- Name it WahooArt Art Search & Quotation and paste this URL:
https://direct.wahooart.com/mcp/- Click Add. Its tools appear in the chat’s tools menu.
Claude Desktop’s JSON config file only starts local servers. Remote servers go through Connectors, and connectors you add on claude.ai show up here too.
claude.ai
- Open the connector form on claude.ai. This button fills in the name and URL for you:
Add to claude.ai (opens in a new tab)
- Check that the URL reads
https://direct.wahooart.com/mcp/and click Add. - Turn it on in a chat from the tools menu.
Free plans allow one custom connector. On Team and Enterprise plans an owner adds it under Organization settings → Connectors.
ChatGPT
- On chatgpt.com, go to Plugins, select +, then Add custom MCP server.
- Enter a name for the server.
- Under Connection, paste
https://direct.wahooart.com/mcp/as the server URL, then for authentication choose No authentication. - Check I understand and want to continue, then select Create as a plugin.
Whether you can add a custom MCP server depends on your ChatGPT plan and your workspace permissions (in Business workspaces, admins and owners can).
Cursor
Add to Cursor (opens in a new tab)
Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):
{
"mcpServers": {
"wahooart-art-search-quotation": {
"url": "https://direct.wahooart.com/mcp/"
}
}
}VS Code
Install in VS Code (opens in a new tab)
Or from a terminal:
code --add-mcp '{"name":"wahooart-art-search-quotation","type":"http","url":"https://direct.wahooart.com/mcp/"}'Or commit it to the repo in .vscode/mcp.json:
{
"servers": {
"wahooart-art-search-quotation": {
"type": "http",
"url": "https://direct.wahooart.com/mcp/"
}
}
}Devin Desktop
- Add it to
~/.config/devin/mcp_config.json(macOS and Linux) or%APPDATA%\devin\mcp_config.json(Windows):
{
"mcpServers": {
"wahooart-art-search-quotation": {
"serverUrl": "https://direct.wahooart.com/mcp/"
}
}
}- Refresh the MCP server list in Cascade.
Devin Desktop is the new name for Windsurf. It reads serverUrl (or url) for remote servers.
Codex
codex mcp add wahooart-art-search-quotation --url https://direct.wahooart.com/mcp/Or edit ~/.codex/config.toml directly:
[mcp_servers.wahooart-art-search-quotation]
url = "https://direct.wahooart.com/mcp/"Gemini CLI
gemini mcp add --transport http wahooart-art-search-quotation https://direct.wahooart.com/mcp/This adds it to the current project. Add -s user to use it everywhere.
Any client
Most clients accept this shape. Some name the URL field differently: serverUrl in Devin Desktop, httpUrl in Gemini CLI’s settings file.
{
"mcpServers": {
"wahooart-art-search-quotation": {
"type": "http",
"url": "https://direct.wahooart.com/mcp/"
}
}
}Zed puts servers under context_servers in its settings. Cline needs "type": "streamableHttp", or it assumes SSE.
Client only starts local servers? Bridge it with npx -y mcp-remote https://direct.wahooart.com/mcp/.
Embed
Show WahooArt Art Search & Quotation in a README or on your site. Each embed links to this page, uses the server’s own URL, and sets no cookies. How embeds work
The card, the iframe and the JSON are in English. Add ?lang=it, fr, de or es to their address for another language.
README badge
[](https://mcp.tc/i/wahooart-art-search-quotation)<a href="https://mcp.tc/i/wahooart-art-search-quotation"><img src="https://mcp.tc/i/wahooart-art-search-quotation/badge.svg" alt="WahooArt Art Search & Quotation on mcp.tc" height="20"></a>It follows the reader’s light or dark mode. Add ?theme=light or ?theme=dark to fix it, or ?style=compact to show the mark without the word.
Website card
<script src="https://mcp.tc/w/wahooart-art-search-quotation.js" async></script>The card appears where the tag is. Add data-theme="dark" or data-size="compact" to the tag to change it. The file holds everything it needs, so it makes no other requests and sets no cookies.
iframe
<iframe src="https://mcp.tc/embed/wahooart-art-search-quotation" title="WahooArt Art Search & Quotation on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>Use it on pages that don’t allow scripts. Add ?theme=light or ?theme=dark to the address to fix the colors.
JSON
The listing as data for your own pages and tools: name, tagline, the server’s own URL, tools and the “Add to” links. Any site can read it (CORS is open).
https://mcp.tc/i/wahooart-art-search-quotation.jsonAI prompt
Paste this into an AI coding assistant, such as Claude Code or Cursor, and it adds the WahooArt Art Search & Quotation card to your site.
Add the mcp.tc card for WahooArt Art Search & Quotation, an MCP server, to my website. It is one static script: no build step, no package to install, no cookies.
Put this tag where the card should appear. The card renders right before it:
```html
<script src="https://mcp.tc/w/wahooart-art-search-quotation.js" async></script>
```
To show the card somewhere else, put this placeholder there and load the same script once, for example before `</body>`. Keep the link inside: visitors without JavaScript see it.
```html
<div data-mcptc="wahooart-art-search-quotation"><a href="https://mcp.tc/i/wahooart-art-search-quotation">WahooArt Art Search & Quotation on mcp.tc</a></div>
```
Options:
- `data-theme="light"` or `"dark"` on the tag or the placeholder fixes the colors. Without it, the card follows the visitor’s light or dark mode.
- `data-size="compact"` gives a smaller card without the tagline.
- The CSS variable `--mcptc-max-width` on the placeholder or a parent sets the width (default `520px`).
- `?lang=` on the script URL sets the card’s language: `en`, `it`, `fr`, `de` or `es`.
If the site has a Content Security Policy, allow `script-src https://mcp.tc` and `img-src data:` (the icon is inline).
For a README or other Markdown docs, use the badge instead:
```markdown
[](https://mcp.tc/i/wahooart-art-search-quotation)
```
Reference: https://mcp.tc/embedChange history
We read this server’s tool list every 3 hours and record what changes. Last read 12 Nov 2026, 05:48 UTC.
-
1 tool added and 1 tool changed.
Details, 11 Nov 2026, 11:47 UTC
Added 1
find_artwork_in_catalogRead-onlyONE call that says whether a work is in our catalog, for a visitor who cannot name it exactly: a half-remembered or translated title, an artist, a description of the picture — or several of them. It matches the title words against EVERY work of the artist (not only 10 search results) and runs the full-text search in the visitor's language and English; a description goes through the meaning index. Returns verdict ("found", "candidates", "possible_matches_by_meaning", "artist_works_listed" or "not_in_catalog"), next_step (what to do now — follow it), candidates (at most 5, best first: pk, artist_name, title, year, url, image_url), and, when an artist was recognised, artist (pk, url, artworks_count, all_artworks_page) and artist_works (the titles of his works, to spot the same work under another title). Use it FIRST, instead of a series of search_artworks with title variants. When you learn the work's real title (from the encyclopedia or the visitor), call it once more with alternative_t…
Changed 1
search_artworksdescription and input schemaBeforeKeyword search of ONE model, the artworks: words of the title, the artist name and the description. Use it when you are looking for a work (a painting, a drawing, a sculpture). When the words may name an artist, a museum or an article instead, use search_fts, which searches the four models in one call; when you have a sentence or a paragraph and no name, use search_objects_semantically. Returns only good-confidence matches with pk, artist_name, title, url, image_url (absolute URL of the large artwork image, null when the artwork has no image) and relevance score.
AfterKeyword search of ONE model, the artworks: words of the title, the artist name and the description. Use it when you are looking for a work (a painting, a drawing, a sculpture). When the words may name an artist, a museum or an article instead, use search_fts, which searches the four models in one call; when you have a sentence or a paragraph and no name, use search_objects_semantically. Optional artist: only the works of that artist, the query words matched against ALL of them (artist_artworks_count says how many) - without query, his most popular works. To find out whether a half-remembered work is in the catalog, use find_artwork_in_catalog (one call) rather than many searches with title variants. Returns only good-confidence matches with pk, artist_name, title, url, image_url (absolute URL of the large artwork image, null when the artwork has no image) and relevance score.
- New parameters:
artist - No longer required:
query - Description of
queryBeforeWords from the artwork title, artist name and/or
description.AfterWords from the artwork title, artist name and/or description (optional when artist is given).
- New parameters:
-
New version 1.1.0 (was 1.0.0). Reported by the server.
-
2 tools added, 2 tools removed and 8 tools changed. Server instructions changed.
New server instructions
Details, 10 Nov 2026, 20:46 UTC
Added 2
get_custom_reproduction_quotationRead-onlyPrice quotation for a CUSTOM reproduction — one made from an image the customer supplies (their own photo, or an artwork that is not in the catalog) — as an art print or a hand-painted oil painting. No artwork identification is needed or accepted: the price depends only on the size, the reproduction type and the currency. Use this whenever the artwork cannot be found in the catalog (the search tools return nothing relevant, or get_quotation fails with artwork_not_found), or the customer wants their own picture reproduced. Optional frame_code ("WhiteWrap" = stretched on stretcher bars, "default" = a decorative frame chosen for you, or a catalog code) adds the frame price to quotation_price; optional senior_artist (oil painting only) adds the "Elite Senior Artist" upgrade — more detail and finesse, extra production time. Each side must be 25-250 cm (about 10-98 inches). Returns quotation_price (the base price: options chosen on the order form, like varnish or urgent delivery, cost extra…
get_quotationRead-onlyPrice quotation for a reproduction of an artwork, as an art print or a hand-painted oil painting, at a given size and in a given currency. Leave type out to get BOTH in one call: the result then holds "quotations" (one full quotation per type the artwork sells, each with its own price, buy_url and offer_text) and "types_not_available". Every quotation carries offer_text, one ready-to-paste line (type, size, frame, price, order link): give it to the user as is, translating its words if needed but never changing its numbers or link. Optional frame_code adds the frame price to quotation_price ("WhiteWrap" = stretched on stretcher bars, "default" = a decorative frame chosen for the artwork, or a catalog code); optional senior_artist (oil painting only) adds the "Elite Senior Artist" upgrade — more detail and finesse, extra production time — to quotation_price. Identify the artwork by pk, or by title and/or artist_name (an exact title match wins; otherwise the first good-confidence search…
Removed 2
get_a_custom_reproduction_quotationPrice quotation for a CUSTOM reproduction — one made from an image the customer supplies (their own photo, or an artwork that is not in the catalog) — as an art print or a hand-painted oil painting. No artwork identification is needed or accepted: the price depends only on the size, the reproduction type and the currency. Use this whenever the artwork cannot be found in the catalog (the search tools return nothing relevant, or get_a_quotation fails with artwork_not_found), or the customer wants their own picture reproduced. Optional frame_code ("WhiteWrap" = stretched on stretcher bars, "default" = a decorative frame chosen for you, or a catalog code) adds the frame price to quotation_price; optional senior_artist (oil painting only) adds the "Elite Senior Artist" upgrade — more detail and finesse, extra production time. Each side must be 25-250 cm (about 10-98 inches). Returns quotation_price (the base price: options chosen on the order form, like varnish or urgent delivery, cost ext…
get_a_quotationPrice quotation for a reproduction of an artwork, as an art print or a hand-painted oil painting, at a given size and in a given currency. Leave type out to get BOTH in one call: the result then holds "quotations" (one full quotation per type the artwork sells, each with its own price, buy_url and offer_text) and "types_not_available". Every quotation carries offer_text, one ready-to-paste line (type, size, frame, price, order link): give it to the user as is, translating its words if needed but never changing its numbers or link. Optional frame_code adds the frame price to quotation_price ("WhiteWrap" = stretched on stretcher bars, "default" = a decorative frame chosen for the artwork, or a catalog code); optional senior_artist (oil painting only) adds the "Elite Senior Artist" upgrade — more detail and finesse, extra production time — to quotation_price. Identify the artwork by pk, or by title and/or artist_name (an exact title match wins; otherwise the first good-confidence search…
Changed 8
get_artwork_availabilitydescriptionBeforeEvery way to buy ONE artwork right now, on every sales channel it sells: the physical objects first — a ready-made oil painting in stock ("Stock Discount Oil Painting", a real canvas that ships within 48 hours), an auction lot (current bid, minimum next bid, closing time), an original sold by its owner, a studio collectible — each with available_now, stock_quantity, price (fixed, shipping included) in your currency, size, buy_url and offer_text (one ready-to-paste line: give it to the customer as is, numbers and link untouched); then the made-to-order channels (hand-painted oil reproduction, art print: price by size through
get_a_quotation)and the digital image licence. available_now is true only when the artwork ITSELF can be bought or bid on today; available_now_summary says it in one sentence. Call it whenever a customer asks whether something is available, in stock, ready to ship, discounted, on auction, or what it costs as a real object — and before any "yes, it is available".I…AfterEvery way to buy ONE artwork right now, on every sales channel it sells: the physical objects first — a ready-made oil painting in stock ("Stock Discount Oil Painting", a real canvas that ships within 48 hours), an auction lot (current bid, minimum next bid, closing time), an original sold by its owner, a studio collectible — each with available_now, stock_quantity, price (fixed, shipping included) in your currency, size, buy_url and offer_text (one ready-to-paste line: give it to the customer as is, numbers and link untouched); then the made-to-order channels (hand-painted oil reproduction, art print: price by size through get_quotation) and the digital image licence. available_now is true only when the artwork ITSELF can be bought or bid on today; available_now_summary says it in one sentence. Call it whenever a customer asks whether something is available, in stock, ready to ship, discounted, on auction, or what it costs as a real object — and before any "yes, it is available". Ide…
search_articlesdescriptionBeforeFull-textsearch ofwebsite articles, optionally filtered bycategorycode.Returns pk, title, url, image_url (absolute URL of the large article image, null when there is none), category_code, meta_description and relevance score.AfterKeyword search of ONE model, the articles of the website, with a category filter no other keyword search has. Use it to LIST the articles on a subject; to get the passages that answer a question, use search_sections_semantically. Returns pk, title, url, image_url (absolute URL of the large article image, null when there is none), category_code, meta_description and relevance score.
search_artistsdescriptionBeforeFull-textsearch ofartistsby name and biography,optionally narrowed bybirthcity/countryandbya year the artist was alive (born <= year <= died, or born + 80 years when the death year is unknown). Returns pk, artist_name, url, image_url (absolute URL of the large artist portrait, null when there is none), city, country, date_born, date_death and score.AfterKeyword search of ONE model, the artists, by name and biography, with three filters no other search tool has: birth city, birth country and a year the artist was alive (born <= year <= died, or born + 80 years when the death year is unknown). Use it when you are looking for a person; when the words may name a work, a museum or an article, use search_fts. Returns pk, artist_name, url, image_url (absolute URL of the large artist portrait, null when there is none), city, country, date_born, date_death and score.
search_artworksdescriptionBeforeFull-textsearch of theartwork catalog bytitle, artist name and description. Returns only good-confidence matches with pk, artist_name, title, url, image_url (absolute URL of the large artwork image, null when the artwork has no image) and relevance score.AfterKeyword search of ONE model, the artworks: words of the title, the artist name and the description. Use it when you are looking for a work (a painting, a drawing, a sculpture). When the words may name an artist, a museum or an article instead, use search_fts, which searches the four models in one call; when you have a sentence or a paragraph and no name, use search_objects_semantically. Returns only good-confidence matches with pk, artist_name, title, url, image_url (absolute URL of the large artwork image, null when the artwork has no image) and relevance score.
search_ftsdescriptionBeforeFull-textsearchacrossartworks, artists, museums and articlesat once(maximum 10 results per model, merged byrelevance). Use itwhen youknowa name or keywords andwanttheobjects; toanswer aquestion from what our texts say, use search_sections_semantically.Each result carries pk, model, title, artist_name, city, country, date_born, date_death, url, image_url (absolute URL of the large image, null when there is none), meta_description and score.AfterKeyword search of the FOUR models in one call: artworks, artists, museums and articles (maximum 10 results per model, merged by relevance; each result names its model). It is the first search to try when you have a name or keywords and do not know which kind of object they name ("Monet", "Orsay", "Water Lilies"). It has no filter: once you know the model, search_artworks / search_artists / search_museums / search_articles search that model alone, with its filters (city, country, year alive, category). It matches WORDS: for a sentence or a paragraph without a name, use search_objects_semantically (the objects a text is about) or search_sections_semantically (the passages that answer a question). Each result carries pk, model, title, artist_name, city, country, date_born, date_death, url, image_url (absolute URL of the large image, null when there is none), meta_description and score.
search_museumsdescriptionBeforeFull-textsearch ofmuseumsby name,optionally narrowed bycity and country. Returns only good-confidence matches with pk, name, url, image_url (absolute URL of the large museum image, null when there is none), city, country and relevance score.AfterKeyword search of ONE model, the museums, by name, with two filters no other search tool has: city and country. Use it when you are looking for a museum or for the museums of a place; when the words may name something else than a museum, use search_fts. Returns only good-confidence matches with pk, name, url, image_url (absolute URL of the large museum image, null when there is none), city, country and relevance score.
search_objects_semanticallydescriptionBeforeSemantic search returningOBJECTS, not passages: the artworks, artists, museums or articles whose texts are closest in meaning to a text (aquestion,a paragraph, a section of anarticle).Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, best_score (cosine of the object's single best passage; higher is closer), score_sum (its matching passages added up) and matched_vectors_count. rank_by "score_sum" (default) favours objects matching in many passages; "best_score" favours the one passage closest to the text - use it to find the exact work a text is about. Any language works (the texts are in English). Use it when you have a text and want the objects it is about; with a name or keywords, use search_fts; for the passages that answer a question, use search_sections_semantically. Error index_unavailable: fall back to the search_*full-text tools.AfterSearch by MEANING that returns OBJECTS, not passages: the artworks, artists, museums or articles whose texts are closest in meaning to a text (a description, a paragraph, a section of an article), e.g. "a woman reading by a window in soft morning light". The query is a text, not a name. Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, best_score (cosine of the object's single best passage; higher is closer), score_sum (its matching passages added up) and matched_vectors_count. rank_by "score_sum" (default) favours objects matching in many passages; "best_score" favours the one passage closest to the text - use it to find the exact work a text is about. Any language works (the texts are in English). Use it when you have a text and want the objects it is about; with a name or keywords, use search_fts; for the passages that answer a question, use search_sections_semantically. Error index_unavailable: fall back to the search_* full-text…
search_sections_semanticallydescriptionBeforeSemantic search ofthetextsof oursite: returns the sectionsthat answerthequestion best,by meaning rather than shared words,each WHOLE (section_text is never cut), from the requested models - "article" (our articles: how reproductions are made, policies, art history), "museum", "artist", "artwork" (their descriptions / biographies); default all models indexed on this server. Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, category_code (articles), section_heading, section_text, is_faq_question, score (cosine; higher is closer). Ask in a full sentence; any language works (the texts are in English). Sections are packed best first into about 9,000 characters: sections_omitted_for_size says how many more matched. Use it to answer a question from what our texts say; to find a work, artist or museum by name or keywords, use search_fts; to find the objects a text is about, use search_objects_semantically. Errorindex_unavailable: f…AfterSearch by MEANING that returns TEXT PASSAGES, not objects: the sections of our texts that answer a question best, whatever words they use, each WHOLE (section_text is never cut), from the requested models - "article" (our articles: how reproductions are made, policies, art history), "museum", "artist", "artwork" (their descriptions / biographies); default all models indexed on this server. Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, category_code (articles), section_heading, section_text, is_faq_question, score (cosine; higher is closer). Ask in a full sentence; any language works (the texts are in English). Sections are packed best first into about 9,000 characters: sections_omitted_for_size says how many more matched. Use it to answer a question from what our texts say; to find a work, artist or museum by name or keywords, use search_fts; to find the objects a text is about, use search_objects_semantically. Error index_unavai…
Server instructions
BeforeSearch the WahooArt art catalog and get reproduction price quotations. Tools: search_artworks (artwork title / artist name / description), search_artists (name, place, optionally a year the artist was alive), search_museums (name, city, country), search_articles (text, optional category), search_fts (a name or keywords across all four models at once, max 10 results each), get_detail_artwork / get_detail_artist / get_detail_museum / get_detail_article (the full data of one object by pk, with useful page links — call after a search),
get_a_quotation(price for a print or hand-painted oil reproduction of an artwork at a given size and currency; optional frame_code includes the frame in the price), andget_a_custom_reproduction_quotation(same price quotation from only size, type and currency — for the customer's own image, or an artwork the catalog does not have), and get_artwork_availability (is this artwork itself for sale NOW, and at what price: ready-made oil paintings in stock, auction lots, originals sold by their owner, studio collectibles — with stock quantity, size and order link; or list the objects of one of those channels). All URLs returned are absolute on the website you are querying; each search result carries a "score" relevance value. search_sections_semantically returns the whole passages of our texts (articles, and the museum / artist / artwork descriptions indexed on this server) closest in meaning to a question - use it to ground an answer in what our site says.AfterSearch the WahooArt art catalog and get reproduction price quotations. Tools: search_artworks (artwork title / artist name / description), search_artists (name, place, optionally a year the artist was alive), search_museums (name, city, country), search_articles (text, optional category), search_fts (a name or keywords across all four models at once, max 10 results each), get_detail_artwork / get_detail_artist / get_detail_museum / get_detail_article (the full data of one object by pk, with useful page links — call after a search), get_quotation (price for a print or hand-painted oil reproduction of an artwork at a given size and currency; optional frame_code includes the frame in the price), and get_custom_reproduction_quotation (same price quotation from only size, type and currency — for the customer's own image, or an artwork the catalog does not have), and get_artwork_availability (is this artwork itself for sale NOW, and at what price: ready-made oil paintings in stock, auction lots, originals sold by their owner, studio collectibles — with stock quantity, size and order link; or list the objects of one of those channels). All URLs returned are absolute on the website you are querying; each search result carries a "score" relevance value. search_sections_semantically returns the whole passages of our texts (articles, and the museum / artist / artwork descriptions indexed on this server) closest in meaning to a question - use it to ground an answer in what our site says.
-
1 tool removed and 3 tools changed. Server instructions changed.
New server instructions
Details, 3 Nov 2026, 20:53 UTC
Removed 1
search_article_sectionsSemantic search of the passages of our articles: returns the article sections that answer the question best, by meaning rather than shared words, each WHOLE (section_text is never cut) with section_heading, article_title, article_url, category_code, is_faq_question and score (cosine; higher is closer). Use it to ground an answer in what our articles say (how reproductions are made, policies, art history facts); use search_articles to list articles on a subject. Ask in a full sentence; any language works (the passages are in English). Sections are packed best first into about 9,000 characters: sections_omitted_for_size says how many more matched - ask a narrower question to reach them. Error index_unavailable: fall back to search_articles. Same as search_sections_semantically with models=["article"].
Changed 3
search_ftsdescription, title and hintsBeforeFull-text search across artworks, artists, museums and articles at once (maximum 10 results per model, merged by relevance). Each result carries pk, model, title, artist_name, city, country, date_born, date_death, url, image_url (absolute URL of the large image, null when there is none), meta_description and score.
AfterFull-text search across artworks, artists, museums and articles at once (maximum 10 results per model, merged by relevance). Use it when you know a name or keywords and want the objects; to answer a question from what our texts say, use search_sections_semantically. Each result carries pk, model, title, artist_name, city, country, date_born, date_death, url, image_url (absolute URL of the large image, null when there is none), meta_description and score.
title
BeforeSearch everythingAfterFind artworks, artists, museums and articles by name or keywords
search_objects_semanticallydescriptionBeforeSemantic search returning OBJECTS, not passages: the artworks, artists, museums or articles whose texts are closest in meaning to a text (a question, a paragraph, a section of an article). Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, best_score (cosine of the object's single best passage; higher is closer), score_sum (its matching passages added up) and matched_vectors_count. rank_by "score_sum" (default) favours objects matching in many passages; "best_score" favours the one passage closest to the text - use it to find the exact work a text is about. Any language works (the texts are in English). Error index_unavailable: fall back to the search_* full-text tools.
AfterSemantic search returning OBJECTS, not passages: the artworks, artists, museums or articles whose texts are closest in meaning to a text (a question, a paragraph, a section of an article). Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, best_score (cosine of the object's single best passage; higher is closer), score_sum (its matching passages added up) and matched_vectors_count. rank_by "score_sum" (default) favours objects matching in many passages; "best_score" favours the one passage closest to the text - use it to find the exact work a text is about. Any language works (the texts are in English). Use it when you have a text and want the objects it is about; with a name or keywords, use search_fts; for the passages that answer a question, use search_sections_semantically. Error index_unavailable: fall back to the search_* full-text tools.
search_sections_semanticallydescriptionBeforeSemantic search of the texts of our site: returns the sections that answer the question best, by meaning rather than shared words, each WHOLE (section_text is never cut), from the requested models - "article" (our articles: how reproductions are made, policies, art history), "museum", "artist", "artwork" (their descriptions / biographies); default all models indexed on this server. Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, category_code (articles), section_heading, section_text, is_faq_question, score (cosine; higher is closer). Ask in a full sentence; any language works (the texts are in English). Sections are packed best first into about 9,000 characters: sections_omitted_for_size says how many more matched. Error index_unavailable:
fall back to the search_* full-text tools.AfterSemantic search of the texts of our site: returns the sections that answer the question best, by meaning rather than shared words, each WHOLE (section_text is never cut), from the requested models - "article" (our articles: how reproductions are made, policies, art history), "museum", "artist", "artwork" (their descriptions / biographies); default all models indexed on this server. Each result: model, object_pk (use it with the matching get_detail_* tool), object_title, object_url, category_code (articles), section_heading, section_text, is_faq_question, score (cosine; higher is closer). Ask in a full sentence; any language works (the texts are in English). Sections are packed best first into about 9,000 characters: sections_omitted_for_size says how many more matched. Use it to answer a question from what our texts say; to find a work, artist or museum by name or keywords, use search_fts; to find the objects a text is about, use search_objects_semantically. Error index_unavailable: f…
Server instructions
BeforeSearch the WahooArt art catalog and get reproduction price quotations. Tools: search_artworks (artwork title / artist name / description), search_artists (name, place, optionally a year the artist was alive), search_museums (name, city, country), search_articles (text, optional category), search_fts (all four models at once, max 10 results each), get_detail_artwork / get_detail_artist / get_detail_museum / get_detail_article (the full data of one object by pk, with useful page links — call after a search), get_a_quotation (price for a print or hand-painted oil reproduction of an artwork at a given size and currency; optional frame_code includes the frame in the price), and get_a_custom_reproduction_quotation (same price quotation from only size, type and currency — for the customer's own image, or an artwork the catalog does not have), and get_artwork_availability (is this artwork itself for sale NOW, and at what price: ready-made oil paintings in stock, auction lots, originals sold by their owner, studio collectibles — with stock quantity, size and order link; or list the objects of one of those channels). All URLs returned are absolute on the website you are querying; each search result carries a "score" relevance value. search_sections_semantically returns the whole passages of our texts (articles, and the museum / artist / artwork descriptions indexed on this server) closest in meaning to a question - use it to ground an answer in what our site says.
AfterSearch the WahooArt art catalog and get reproduction price quotations. Tools: search_artworks (artwork title / artist name / description), search_artists (name, place, optionally a year the artist was alive), search_museums (name, city, country), search_articles (text, optional category), search_fts (a name or keywords across all four models at once, max 10 results each), get_detail_artwork / get_detail_artist / get_detail_museum / get_detail_article (the full data of one object by pk, with useful page links — call after a search), get_a_quotation (price for a print or hand-painted oil reproduction of an artwork at a given size and currency; optional frame_code includes the frame in the price), and get_a_custom_reproduction_quotation (same price quotation from only size, type and currency — for the customer's own image, or an artwork the catalog does not have), and get_artwork_availability (is this artwork itself for sale NOW, and at what price: ready-made oil paintings in stock, auction lots, originals sold by their owner, studio collectibles — with stock quantity, size and order link; or list the objects of one of those channels). All URLs returned are absolute on the website you are querying; each search result carries a "score" relevance value. search_sections_semantically returns the whole passages of our texts (articles, and the museum / artist / artwork descriptions indexed on this server) closest in meaning to a question - use it to ground an answer in what our site says.
-
Tracking started: 15 tools.
FAQ
Can I paste mcp.tc/i/wahooart-art-search-quotation into my MCP client?
No. mcp.tc links are pages, not server addresses. Connect with https://direct.wahooart.com/mcp/, so your client talks to WahooArt Art Search & Quotation directly. The quick link is for sharing: it opens this page, with setup steps for every client.
Does WahooArt Art Search & Quotation need an API key or a sign-in?
No. WahooArt Art Search & Quotation doesn’t ask for an account or key.
Is WahooArt Art Search & Quotation a remote or a local server?
Remote. WahooArt hosts it at https://direct.wahooart.com/mcp/, and it speaks Streamable HTTP. There’s nothing to install.
What can WahooArt Art Search & Quotation do?
It has 15 tools, including search_artworks, search_museums and search_artists. You can search artworks, artists, museums and articles by text, find passages and objects by meaning with semantic search and read full details and related page links for one object.
Which clients can use it?
Any client that supports remote MCP servers: Claude Code, Claude Desktop, claude.ai, ChatGPT, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others. The setup steps cover each one.
Does mcp.tc track changes to WahooArt Art Search & Quotation?
Yes. WahooArt Art Search & Quotation’s History tab shows each change we find to its tools, down to descriptions and parameters, plus new versions and edits by its owner. Follow the listing to get an email when it changes.
Who wrote this page?
mcp.tc’s robot read WahooArt Art Search & Quotation’s own metadata (its MCP handshake, tool list and public pages), and an AI model drafted the text from it. A person reviews anything the checks can’t confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.
mcp.tc isn’t affiliated with WahooArt. This page was built from WahooArt Art Search & Quotation’s public metadata, last checked on 12 Nov 2026, and an AI model wrote the description, so it can be wrong. Names and marks belong to their owners. Something off? Report this listing.