Creative Market
Server Details
Find fonts, templates, and graphics from indie creators on Creative Market. Read-only, no account.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Score is being calculated.
Available Tools
9 toolsautocompleteAutocomplete a searchARead-onlyIdempotentInspect
Return search-term completions for a partial query, e.g. 'scri' completes to 'script', 'script font'. Covers product names, font names, styles and categories.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of suggestions to return. Default: 10 | |
| prefix | Yes | The partial text to autocomplete (e.g. 'mono', 'scri', 'futu') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is fully covered. The description adds genuine context beyond that by disclosing the vocabulary the completions draw from (product, font, style, category names), but it says nothing about ordering, empty results, or matching semantics (prefix vs substring).
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 tight sentences, front-loaded with the action and followed by examples and scope. No filler, no restatement of the title, and every clause carries information an agent can act on.
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 two-parameter read-only lookup with a fully described schema and no output schema, the description gives enough to call it correctly and to anticipate the kind of strings returned. Minor gap: it doesn't describe how results are shaped or ordered, which matters slightly since no output schema exists.
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% and both parameters are documented there, including a default for size, so the description need not carry this load. Its 'scri' example mirrors the schema's own prefix examples, adding little beyond what structured data already provides.
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?
States a specific verb and resource ('Return search-term completions for a partial query') and immediately grounds it with concrete examples ('scri' -> 'script', 'script font'). The final clause names the domain of coverage (product names, font names, styles, categories), which clearly separates it from sibling search_products, which returns results rather than completions.
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 (feed it a partial query to get suggestions) but never states when to choose it over search_products or suggested_searches, nor any prerequisite such as 'use before committing a search'. An agent can infer the typeahead scenario but gets no explicit routing guidance or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
browse_categoryBrowse a categoryARead-onlyIdempotentInspect
List products in one or more categories or subcategories, optionally narrowed by a text query, price range, on-sale, featured and recency filters, font width and weight, and asset properties, sorted by popular, newest, best_match, trending, staff_pick, price_asc or price_desc. Top-level categories: Graphics(1), Templates(2), Fonts(3), Add-ons(4), Photos(6), 3D(7), Stock Video(8), Illustrations(23), Icons(26), Mockups(1800). Font subcategories: Serif(80), Sans-Serif(81), Script(82), Symbols(84), Blackletter(85), Slab Serif(86), Handwritten(88). Graphics subcategories: Objects(24), Textures(27), Patterns(28), Backgrounds(29). Template subcategories: Logos(50), Posters(19), Flyers(42), Invitations(46), Business Cards(45), Presentations(49), Social Media(52), Brochures(41), Resumes(43). Photo subcategories: Animals(121), Nature(131), People(132), Food(127), Architecture(124), Sports(133), Technology(134), Holidays(129). Mockup subcategories: Product(21), Device(1801), Apparel(1805), iPhone(1811), iPad(1812), Shirts(1851), Packaging(2115). Illustration subcategories: Animals(2301), People(2309), Food(2305), Technology(2312), Seasonal(2310). Icon subcategories: Solid(2601), Outline(2602), Duotone(2603), Emojis(2604). Each result includes the product title, starting price, thumbnail image, shop, category and product link, and the response carries a licensing note. Assets marked AI-generated are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of results, 1-100. Default 12. Requests below 9 are raised to 9. | |
| query | No | Optional text query to filter within the category | |
| width | No | Font widths: condensed, normal, wide, monospaced. Multi-select is AND: a font family must offer every listed width. Any value restricts results to fonts. | |
| offset | No | Pagination offset. Default: 0 | |
| weight | No | Font weights: light, regular, bold, heavy. Multi-select is AND: a font family must offer every listed weight. Any value restricts results to fonts. | |
| sort_by | No | How to sort results. Default: popular | |
| price_max | No | Maximum price filter in USD | |
| price_min | No | Minimum price filter in USD | |
| categories | Yes | Category IDs to browse. Top-level: Graphics=1, Templates=2, Fonts=3, Add-ons=4, Photos=6, 3D=7, Stock Video=8, Illustrations=23, Icons=26, Mockups=1800. Subcategories: Serif=80, Sans-Serif=81, Script=82, Handwritten=88, Logos=50, Posters=19, Patterns=28, Textures=27, Nature=131, People=132, etc. | |
| is_on_sale | No | Only products currently on sale. | |
| properties | No | Asset properties; multi-select is OR, any listed property matches: vector, raster, layered, tileable, web_font, layout_fluid, layout_fixed, layout_responsive, landscape, portrait, square, industry_film, industry_games, industry_design. | |
| is_featured | No | Only featured products. | |
| max_days_age | No | Only products published within this many days, 1-3650. The newest sort applies 15 when this is unset. | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, non-destructive, closed-world behavior, so the bar is lower; the description still adds real substance by disclosing the result shape (title, starting price, thumbnail, shop, category, product link), the licensing note in the response, and the important exclusion of AI-generated assets. It omits pagination interplay between size and offset, but the safety and output profile is otherwise well covered.
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 purpose and filters are front-loaded, but the whole definition is one long run-on sentence with a wall of numeric IDs embedded mid-sentence, and the sort/filter enumerations partly duplicate schema enums. The taxonomy earns its place; the structure around it does not.
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 14-parameter browse tool with no output schema, the description covers purpose, filter surface, return fields, and the category taxonomy that the schema abbreviates. Remaining gaps (size/offset interaction, behavior when multiple categories are combined) are minor against full schema coverage.
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 coverage is 100%, so the baseline is 3, but the description earns an extra point by supplying the full category-ID taxonomy (top-level and subcategory mappings for Fonts, Graphics, Templates, Photos, Mockups, Illustrations, Icons) that the schema truncates with 'etc.' That directly reduces the highest-risk failure mode for the required 'categories' parameter.
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?
Opens with a specific verb and resource ('List products in one or more categories or subcategories') and enumerates the filter and sort dimensions, so the agent knows exactly what the tool returns. It does not, however, distinguish itself from the sibling search_products, which appears to overlap heavily with the query-narrowed behavior described here.
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?
Usage is only implied: the description shows that browsing is category-scoped and that 'query' narrows within the category, which hints at when this beats a general search, but it never states when to choose browse_category over search_products or suggest the alternative. No prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
browse_shopBrowse a shopARead-onlyIdempotentInspect
List the products of one designer or studio by numeric shop ID, optionally narrowed by a text query, on-sale, featured and recency filters, font width and weight, and asset properties, and sorted by popular, newest, best_match, staff_pick, price_asc or price_desc. Each result includes the product title, starting price, thumbnail image, category and product link, and the response carries a licensing note. Assets marked AI-generated are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of results, 1-100. Default 12. Requests below 9 are raised to 9. | |
| query | No | Optional text query to filter within the shop's products | |
| width | No | Font widths: condensed, normal, wide, monospaced. Multi-select is AND: a font family must offer every listed width. Any value restricts results to fonts. | |
| offset | No | Pagination offset. Default: 0 | |
| weight | No | Font weights: light, regular, bold, heavy. Multi-select is AND: a font family must offer every listed weight. Any value restricts results to fonts. | |
| shop_id | Yes | The shop/designer ID to browse | |
| sort_by | No | How to sort results. Default: popular | |
| is_on_sale | No | Only products currently on sale. | |
| properties | No | Asset properties; multi-select is OR, any listed property matches: vector, raster, layered, tileable, web_font, layout_fluid, layout_fixed, layout_responsive, landscape, portrait, square, industry_film, industry_games, industry_design. | |
| is_featured | No | Only featured products. | |
| max_days_age | No | Only products published within this many days, 1-3650. The newest sort applies 15 when this is unset. | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds real context beyond that: the exact result fields returned, that the response carries a licensing note, and that AI-generated assets are excluded from results — non-obvious filtering behavior an agent could not infer elsewhere.
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?
Content is front-loaded — resource and scope first, then filters, sort, returns, and exclusions. It is compressed into essentially two very long sentences, which is dense but every clause carries information; the filter enumeration in particular could have been deferred to the schema instead of restated.
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?
With no output schema, the description usefully documents the result shape (title, starting price, thumbnail, category, product link), the licensing note, and the AI-generated exclusion. For a 12-parameter read tool with no output schema, this covers most of what an agent needs, though pagination behavior beyond the offset parameter is not described.
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%, including the AND-vs-OR semantics of width/weight versus properties and the size floor of 9, so the schema does the heavy lifting. The description only paraphrases the filter names at a high level and adds no syntax or interaction detail beyond what the schema already documents.
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 states a specific verb and resource ('List the products of one designer or studio by numeric shop ID') and enumerates the narrowing filters and sort modes, so an agent knows exactly what this does. It implicitly distinguishes itself from search_products via the single-shop scope, but never names that sibling to make the boundary explicit.
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?
Usage is implied by 'one designer or studio by numeric shop ID' — an agent can infer this is the per-shop browse path versus a global search. However, there is no explicit when-to-use/when-not guidance, no mention of browse_category or search_products as alternatives, and no stated prerequisite that a shop ID must first be obtained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_similarFind similar productsARead-onlyIdempotentInspect
Return products visually and stylistically similar to a given product ID, using embedding similarity, optionally restricted to specific categories. Each result includes the product title, starting price, thumbnail image, shop, category and product link, and the response carries a licensing note. Assets marked AI-generated are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of similar products, 1-50. Default 12. Requests below 9 are raised to 9. | |
| categories | No | Optionally restrict similar results to specific categories | |
| product_id | Yes | The product ID to find similar items for | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the description's burden is lower. It still adds real behavioral context: the similarity mechanism, a licensing note on the response, and the exclusion of AI-generated assets, none of which appear in the annotations.
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?
Three sentences, front-loaded with the core action before the return-shape detail. The response-field enumeration is a slight list, but it earns its place because no output schema exists.
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?
With no output schema, the description usefully covers return fields, the licensing note, and the AI-generated exclusion, and the schema covers all parameters. It stops short of saying whether results are ranked by similarity or how ties/empty results are handled, which is a minor gap for a read-only discovery tool.
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 size clamping, category restriction, and image attachment are already fully documented in the schema. The description only echoes the optional category restriction and adds no format or ranking semantics for product_id beyond what the schema says.
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?
States a specific verb and resource ('Return products visually and stylistically similar to a given product ID') plus the mechanism ('embedding similarity'). It is inherently distinguishable from siblings like search_products (keyword) and get_product (single-item retrieval) without needing to name them.
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?
Usage is implied clearly by the anchor-on-a-product-ID framing, but the description never states when to prefer this over search_products or get_product, nor any prerequisites such as whether the product ID must exist. No exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productGet product index recordARead-onlyIdempotentInspect
Return the catalog index record for one product by ID: numeric shop ID, numeric category IDs, eligible file-type IDs, software types, staff-pick and visibility flags, publish date and starting price. This is structured metadata only; it does not include the title, images or description.
| Name | Required | Description | Default |
|---|---|---|---|
| product_id | Yes | The product ID to look up |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context by fixing the exact shape of the returned record and explicitly delimiting what is excluded, which the annotations cannot convey.
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, front-loaded with the returned-field inventory and closed with the important exclusion. The field enumeration is dense but every item informs the agent about the payload, so there is little waste.
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?
With no output schema, the description carries the burden of describing the return value and does so field-by-field, plus notes omissions. Only minor gaps remain, such as behavior for an unknown or invalid product ID.
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 coverage is 100% for the single product_id parameter, so the schema already carries the semantics. The description only restates the lookup is by ID and adds no format, validation, or error behavior beyond that, making the baseline 3 appropriate.
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 gives a specific verb (return) and resource (catalog index record for one product), then enumerates exactly which fields appear in that record. It clearly separates itself from a detail-fetching tool by naming the fields it will not return (title, images, description).
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 clause 'This is structured metadata only; it does not include the title, images or description' tells the agent when this tool is insufficient, which implies a sibling such as get_product_details is needed for content fields. It stops short of naming that alternative explicitly or stating prerequisites, so it is clear context without full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_product_detailsGet product detailsARead-onlyIdempotentInspect
Return display data for one to fifty product IDs from the Creative Market website API: title, canonical product URL, full description, preview image URLs, shop name and URL, starting price and category. The price is the lowest of Creative Market's four license tiers; the response includes a licensing note with a link to full pricing.
| Name | Required | Description | Default |
|---|---|---|---|
| product_ids | Yes | List of product IDs to look up (up to 50) | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so safety is covered. The description adds useful behavioral context by listing returned fields and explaining that the price is the lowest of four license tiers and includes a licensing note.
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 two front-loaded sentences that efficiently summarize the operation and return payload. The field list is dense but earns its place by compensating for the absence of an output schema.
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?
With no output schema, the description appropriately explains the returned fields and pricing semantics. It is nearly complete for a read-only batch lookup, though it omits any sibling differentiation or error behavior.
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 coverage is 100%, so both product_ids and include_images are already documented in the input schema. The description reinforces the 1-50 limit and describes response content, but it does not add parameter meaning beyond what the schema provides.
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 states a specific verb and resource: returning display data for product IDs from the Creative Market API. It clearly defines the 1-50 ID scope and enumerates the returned fields, but it does not distinguish this tool from the sibling get_product tool.
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?
Usage is implied by the batch-oriented 'one to fifty product IDs' phrasing, which suggests this is for looking up multiple products at once. However, there is no explicit guidance on when to use this instead of get_product, search_products, or other siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
identify_fontIdentify a font from an imageARead-onlyIdempotentInspect
Identify the font in an image of text, such as a screenshot, photo, logo or design whose typeface is unknown, and return the closest matching Creative Market font products. Takes a public image URL or base64 image data, detects the letter shapes, reads the text, and matches the shapes against the Creative Market font catalog. Each result includes the product title, starting price, thumbnail image, shop, category and product link, in closest-match order, and the response carries a licensing note. Works best on a crop of a few clear, separated letters on a plain background; connected script letters, low-resolution images and busy backgrounds match poorly. When the text cannot be read automatically, the optional text argument supplies the letters shown, left to right, one character per detected shape. Assets marked AI-generated are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of matching fonts, 1-50. Default 12. Requests below 9 are raised to 9. | |
| text | No | The letters shown in the image, left to right; spaces are ignored. Optional, for images whose text cannot be read automatically. Must have exactly one character per detected letter shape. | |
| image_url | No | Public http(s) URL of a JPEG or PNG image containing text. Provide this or image_data. | |
| image_data | No | Base64-encoded JPEG or PNG image data, up to 4 MB decoded. Provide this or image_url. | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare read-only/idempotent/open-world safety; the description goes well beyond that by disclosing the internal pipeline (detect shapes, read text, match catalog), the ordering of results, the exact result fields, the presence of a licensing note, and a scope exclusion ("Assets marked AI-generated are excluded"). The quality caveats tell the agent how to predict failure, which annotations cannot convey.
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?
Front-loaded with purpose, then inputs, then return contents, then fit caveats — a sensible order. It is a single dense paragraph of long compound sentences, which is heavier than needed, but essentially every clause carries information an agent would use.
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?
No output schema exists, and the description compensates by enumerating the returned fields, their ordering, and the licensing note. Combined with the quality caveats and the OCR fallback, an agent has everything needed to call it and interpret the result.
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 coverage is 100%, so the baseline is 3. The description mentions the `text` argument and its one-character-per-shape rule, but the schema already states both that rule and that it is for unreadable images, so the description adds little new parameter meaning; size clamping and the image_url/image_data alternative are likewise schema-only.
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?
States a specific verb and resource ("Identify the font in an image of text") plus the output artifact ("closest matching Creative Market font products"). None of the siblings (search_products, browse_category, find_similar, etc.) do image-based font identification, so the tool's niche is unambiguous from the first clause.
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?
Gives concrete conditions of good fit ("a crop of a few clear, separated letters on a plain background") and poor fit ("connected script letters, low-resolution images and busy backgrounds"), plus the fallback path when OCR fails via the `text` argument. It does not route the agent to any sibling tool for related follow-ups, which is the only gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_productsSearch Creative MarketARead-onlyIdempotentInspect
Search the Creative Market catalog of fonts, graphics, templates, photos, 3D assets, illustrations, icons, mockups and stock video by keyword, style, mood or subject, e.g. 'retro display fonts for a vinyl record label'. Supports category, price range, staff-pick, on-sale, featured and recency filters, font width and weight filters, asset property filters such as vector, layered, web font and orientation, pagination, and sorting by best_match (relevance), popular, newest, trending, staff_pick, price_asc or price_desc. Each result includes the product title, starting price, thumbnail image, shop, category and product link, and the response carries a licensing note. Assets marked AI-generated are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of results, 1-100. Default 12. Requests below 9 are raised to 9. | |
| query | No | Natural language search query (e.g. 'hand-lettered script fonts for wedding invitations') | |
| width | No | Font widths: condensed, normal, wide, monospaced. Multi-select is AND: a font family must offer every listed width. Any value restricts results to fonts. | |
| offset | No | Pagination offset. Default: 0 | |
| weight | No | Font weights: light, regular, bold, heavy. Multi-select is AND: a font family must offer every listed weight. Any value restricts results to fonts. | |
| sort_by | No | How to sort results. Default: best_match | |
| price_max | No | Maximum price filter in USD | |
| price_min | No | Minimum price filter in USD | |
| categories | No | Filter by category IDs. Top-level: Graphics=1, Templates=2, Fonts=3, Add-ons=4, Photos=6, 3D=7, Stock Video=8, Illustrations=23, Icons=26, Mockups=1800. Font subcategories: Serif=80, Sans-Serif=81, Script=82, Handwritten=88, Blackletter=85. | |
| is_on_sale | No | Only products currently on sale. | |
| properties | No | Asset properties; multi-select is OR, any listed property matches: vector, raster, layered, tileable, web_font, layout_fluid, layout_fixed, layout_responsive, landscape, portrait, square, industry_film, industry_games, industry_design. | |
| is_featured | No | Only featured products. | |
| max_days_age | No | Only products published within this many days, 1-3650. The newest sort applies 15 when this is unset. | |
| is_staff_pick | No | Only staff-picked products. | |
| include_images | No | Attach each product's thumbnail as an image block. Default true. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile needs no restating. The description adds genuinely useful behavior beyond that: AI-generated assets are excluded from results, the response carries a licensing note, and each hit includes title, starting price, thumbnail, shop, category and link. It does not discuss result caps beyond what pagination implies or failure 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 front-loaded with the core action and an example before moving to filters and sorting, and the long final clauses are dense but each names a real capability. It leans toward restating schema content (sort enum members, filter names) inside a single sprawling sentence, which costs some efficiency.
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?
With 15 optional parameters, no output schema and rich annotations, the description does the necessary work: it explains what results look like (including the licensing note) and states a non-obvious exclusion rule. Remaining gaps are modest — no guidance on combining filters, on default result size, or on when an empty result is expected.
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 carries the meaning of all 15 parameters, including the AND-vs-OR semantics for width/weight versus properties and enum values. The description only summarizes the same filter families at a higher level, adding little beyond the schema; the one extra signal is the AI-exclusion rule, which is a filter behavior rather than parameter meaning.
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 opens with a specific verb+resource ('Search the Creative Market catalog') and enumerates the asset families covered, plus a concrete example query, so an agent knows exactly what domain it queries. It never names a sibling like browse_category or autocomplete, so disambiguation from those tools is left implicit.
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?
Usage context is implied through the example query ('retro display fonts for a vinyl record label') and the long list of supported filter dimensions, which signals this is the general keyword-search entry point. However, there is no explicit when-to-use/when-not statement and no routing to siblings such as browse_category for enumerated browsing or autocomplete for query expansion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggested_searchesSuggested searchesARead-onlyIdempotentInspect
Return related and trending search terms for a query, for exploring adjacent styles or alternative phrasings.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Number of suggestions to return. Default: 6 | |
| query | No | The search query to find related suggestions for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds the nature of the output (related plus trending terms), which is useful, but it does not explain the relationship between "trending" and the declared closed-world behavior, nor what is returned when query is omitted.
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?
A single sentence with zero filler, front-loaded with the returned resource and followed by the exploratory use case. Nothing is repeated from the schema or annotations.
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 two-parameter read tool with full schema coverage and no output schema, the description covers the essentials. The main omission is behavior when no required parameters are supplied (required=[]), i.e. whether omitting query yields generic trending terms, which an agent would need to know to call it correctly.
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%, with both query and size documented including the default of 6, so the baseline is 3. The description adds no syntax, format, or length constraints beyond restating that suggestions relate to the query.
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 opens with a specific verb and resource ("Return related and trending search terms") and adds the intent ("exploring adjacent styles or alternative phrasings"). It is clear on its own, but it never names or distinguishes itself from the closely overlapping siblings autocomplete and find_similar, so an agent must infer the difference.
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 phrase "for exploring adjacent styles or alternative phrasings" implies a usage context, giving the agent a rough sense of when this fits. However, there are no explicit when-to-use/when-not conditions and no routing to the obvious alternatives (autocomplete, find_similar), which is a notable gap given how similar those siblings are.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
- First observed
autocomplete - First observed
browse_category - First observed
browse_shop - First observed
find_similar - First observed
get_product - First observed
get_product_details - First observed
identify_font - First observed
search_products - First observed
suggested_searches
Related MCP Connectors
Search thousands of free SVG cut files & clipart. Free for commercial use, no attribution.
Free sound effects, music and ambience for games, videos and apps. Search, play and download.
Find assets for what you're making, download what you own, and get a buy link to review.
Animated website templates, cinematic video backgrounds, UI components and design systems.
Related MCP Servers
- AlicenseAqualityBmaintenanceSearch 161,000+ free hand-drawn Infyicon icons in four matching styles and fetch ready-to-embed SVG markup or PNG URLs, plus CSS class lookup for the 61,000-glyph Infyicon UI webfont. Free with attribution, no API key required.88 npmMIT
- AlicenseNot gradedqualityDmaintenanceGive your AI coding agent design taste. 104 curated design seeds with colors, fonts, spacing, and shadows. Query by vibe, brand, or style.53 npmMIT

Duchampofficial
AlicenseNot gradedqualityBmaintenanceGives coding agents a curated, reviewable library of landing pages, hero sections, image prompts, motion-video recipes, logo and pitch-deck recipes, fonts and motion backgrounds that they can search, inspect and fetch, then rebuild locally from code. Searches and reference inspection are uncounted, while template, UI and asset fetches share a daily free limit under OAuth sign-in with no API key.MIT- AlicenseNot gradedqualityDmaintenanceStructured design references from 1,000+ curated websites for AI-powered web design. Retrieve real CSS values, typography specs, color palettes, and design rationale via MCP.1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.